Module thinkpad_acpi error with Thinkpad Battery Extension

Hello everyone,

my Thinkpad X121e (Core i3 SandyBridge cpu) has problems with tlp battery charge thresholds, i simply can not set them. tlp reports:

t+++ Battery Care
Plugin: **generic**
Supported features: none available

/sys/class/power_supply/BAT1/charge_control_start_threshold = (not available) 
/sys/class/power_supply/BAT1/charge_control_end_threshold   = (not available

The plugin should be thinkpad.
When I look in dmesg I find this error:

[    8.361369] ACPI: \_SB_.PCI0.LPCB.EC__.HKEY: BCTG evaluated but flagged as error
[    8.361378] thinkpad_acpi: Error probing battery 2
[    8.361384] ACPI: battery: extension failed to load: ThinkPad Battery Extension
[    8.361390] ACPI: battery: extension unregistered: ThinkPad Battery Extension

The modules thinkpad_acpi is loaded afterwards (confirmed with lsmod), but somehow there is a problem with battery extensions. AFAIK the X121e is supported by thinkpad_acpi (my other Thinkpad, a X220 with very similar hardware, does not have this problem).

I tried kernels 6.1.38 and 5.15.120 (both LTS).

Anyone has an idea how i could proceed from here?

System:
  Kernel: 6.1.38-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.1.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.1-x86_64
    root=UUID=9e8150f5-e2f8-4df9-bb61-713c46cc01cb rw quiet splash
    resume=UUID=c1350cf0-ed22-407d-b2ef-f5ebd2238f09 udev.log_priority=3
  Desktop: KDE Plasma v: 5.27.6 tk: Qt v: 5.15.10 wm: kwin_x11 vt: 2 dm: SDDM
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 304579G v: ThinkPad X121e
    serial: <filter> Chassis: type: 10 serial: <filter>
  Mobo: LENOVO model: 304579G serial: <filter> UEFI: LENOVO
    v: 8QET53WW (1.14 ) date: 10/25/2011
Battery:
  ID-1: BAT1 charge: 48.8 Wh (100.0%) condition: 48.8/48.8 Wh (100.0%)
    volts: 12.5 min: 11.1 model: SANYO 42T4957 type: Li-ion serial: <filter>
    status: full
Memory:
  System RAM: total: 8 GiB available: 7.68 GiB used: 3.16 GiB (41.1%)
    igpu: 64 MiB
  Array-1: capacity: 16 GiB slots: 4 modules: 2 EC: None
    max-module-size: 4 GiB note: est.
  Device-1: ChannelA-DIMM0 type: DDR3 detail: synchronous size: 4 GiB
    speed: 1333 MT/s volts: N/A width (bits): data: 64 total: 64
    manufacturer: Hynix/Hyundai part-no: HMT451S6BFR8A-PB serial: <filter>
  Device-2: ChannelA-DIMM1 type: no module installed
  Device-3: ChannelB-DIMM0 type: DDR3 detail: synchronous size: 4 GiB
    speed: 1333 MT/s volts: N/A width (bits): data: 64 total: 64
    manufacturer: Hynix/Hyundai part-no: HMT451S6BFR8A-PB serial: <filter>
  Device-4: ChannelB-DIMM1 type: no module installed
CPU:
  Info: model: Intel Core i3-2367M bits: 64 type: MT MCP arch: Sandy Bridge
    gen: core 2 level: v2 built: 2010-12 process: Intel 32nm family: 6
    model-id: 0x2A (42) stepping: 7 microcode: 0x2F
  Topology: cpus: 1x cores: 2 tpc: 2 threads: 4 smt: enabled cache:
    L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 512 KiB desc: 2x256 KiB
    L3: 3 MiB desc: 1x3 MiB
  Speed (MHz): avg: 971 high: 1400 min/max: 800/1400 base/boost: 1400/1400
    scaling: driver: intel_cpufreq governor: schedutil volts: 1.2 V
    ext-clock: 100 MHz cores: 1: 800 2: 1400 3: 888 4: 798 bogomips: 11176
  Flags: acpi aperfmperf apic arat arch_perfmon avx bts clflush cmov
    constant_tsc cpuid cx16 cx8 de ds_cpl dtes64 dtherm dts epb est flush_l1d
    fpu fxsr ht ibpb ibrs lahf_lm lm mca mce md_clear mmx monitor msr mtrr
    nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pebs pge pln pni
    popcnt pse pse36 pti pts rdtscp sep ssbd sse sse2 sse4_1 sse4_2 ssse3
    stibp syscall tm tm2 tsc tsc_deadline_timer vme x2apic xsave xsaveopt
    xtopology xtpr
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data status: Unknown: No mitigations
  Type: retbleed status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
    STIBP: conditional, RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel 2nd Generation Core Processor Family Integrated Graphics
    vendor: Lenovo driver: i915 v: kernel arch: Gen-6 code: Sandybridge
    process: Intel 32nm built: 2011 ports: active: LVDS-1
    empty: DP-1,HDMI-A-1,VGA-1 bus-ID: 00:02.0 chip-ID: 8086:0116
    class-ID: 0300
  Device-2: Bison Lenovo Integrated Webcam driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 2-1.4:4
    chip-ID: 5986:01a6 class-ID: 0e02 serial: <filter>
  Display: x11 server: X.Org v: 21.1.8 with: Xwayland v: 23.1.2
    compositor: kwin_x11 driver: X: loaded: modesetting alternate: fbdev,vesa
    dri: crocus gpu: i915 display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1366x768 s-dpi: 96 s-size: 361x203mm (14.21x7.99")
    s-diag: 414mm (16.31") monitors: <missing: xrandr>
  Monitor-1: LVDS-1 model: Seiko Epson 0x3143 built: 2011 res: 1366x768
    dpi: 136 gamma: 1.2 size: 256x144mm (10.08x5.67") diag: 294mm (11.6")
    ratio: 16:9 modes: 1366x768
  API: OpenGL v: 3.3 Mesa 23.0.4 renderer: Mesa Intel HD Graphics 3000 (SNB
    GT2) direct-render: Yes
Audio:
  Device-1: Intel 6 Series/C200 Series Family High Definition Audio
    vendor: Lenovo 6 driver: snd_hda_intel v: kernel bus-ID: 00:1b.0
    chip-ID: 8086:1c20 class-ID: 0403
  API: ALSA v: k6.1.38-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 0.3.74 status: off with: wireplumber status: active
    tools: pw-cli,wpctl
  Server-3: PulseAudio v: 16.1 status: active (root, process)
    with: pulseaudio-alsa type: plugin tools: pacat,pactl
Network:
  Device-1: Intel Centrino Wireless-N 1000 [Condor Peak] driver: iwlwifi
    v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0
    chip-ID: 8086:0084 class-ID: 0280
  IF: wlp2s0 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: noprefixroute scope: link
  Device-2: Qualcomm Atheros AR8151 v2.0 Gigabit Ethernet vendor: Lenovo
    driver: atl1c v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: 2000
    bus-ID: 08:00.0 chip-ID: 1969:1083 class-ID: 0200
  IF: enp8s0 state: down mac: <filter>
  IF-ID-1: wwp0s29u1u6i6 state: down mac: <filter>
  WAN IP: <filter>
Bluetooth:
  Message: No bluetooth data found.
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 232.89 GiB used: 13.58 GiB (5.8%)
  ID-1: /dev/sda maj-min: 8:0 vendor: Western Digital
    model: WD Blue SA510 2.5 250GB size: 232.89 GiB block-size: physical: 512 B
    logical: 512 B sata: 3.2 speed: 6.0 Gb/s tech: SSD serial: <filter>
    fw-rev: 0100 temp: 34 C scheme: GPT
  SMART: yes state: enabled health: PASSED on: 1 hrs cycles: 51 read: 21 KiB
    written: 48 KiB
  Message: No optical or floppy data found.
Partition:
  ID-1: / raw-size: 228.69 GiB size: 228.57 GiB (99.95%) used: 13.58 GiB (5.9%)
    fs: xfs block-size: 512 B dev: /dev/sda2 maj-min: 8:2 label: N/A
    uuid: 9e8150f5-e2f8-4df9-bb61-713c46cc01cb
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 296 KiB (0.1%) fs: vfat block-size: 512 B dev: /dev/sda3 maj-min: 8:3
    label: N/A uuid: B9F8-F3C0
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
  ID-1: swap-1 type: partition size: 3.91 GiB used: 0 KiB (0.0%) priority: -2
    dev: /dev/sda1 maj-min: 8:1 label: N/A
    uuid: c1350cf0-ed22-407d-b2ef-f5ebd2238f09
Unmounted:
  Message: No unmounted partitions found.
USB:
  Hub-1: 1-0:1 info: full speed or root hub ports: 2 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Hub-2: 1-1:2 info: Intel Integrated Rate Matching Hub ports: 6 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 8087:0024
    class-ID: 0900
  Hub-3: 2-0:1 info: full speed or root hub ports: 2 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Hub-4: 2-1:2 info: Intel Integrated Rate Matching Hub ports: 6 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 8087:0024
    class-ID: 0900
  Device-1: 2-1.1:3 info: CHERRY USB Device type: mouse
    driver: hid-generic,usbhid interfaces: 1 rev: 1.1 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 100mA chip-ID: 046a:b103 class-ID: 0301
  Device-2: 2-1.4:4 info: Bison Lenovo Integrated Webcam type: video
    driver: uvcvideo interfaces: 2 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1
    mode: 2.0 power: 500mA chip-ID: 5986:01a6 class-ID: 0e02 serial: <filter>
  Device-3: 2-1.6:7 info: Ericsson Business Mobile Networks BV F5521gw
    type: communication,abstract (modem),CDC-data driver: cdc_acm,cdc_ncm,cdc_wdm
    interfaces: 11 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0
    chip-ID: 0bdb:1911 class-ID: 0202 serial: <filter>
Sensors:
  System Temperatures: cpu: 54.0 C mobo: 0.0 C
  Fan Speeds (RPM): cpu: 566 fan-2: 566
Info:
  Processes: 206 Uptime: 36m wakeups: 2 Init: systemd v: 253 default: graphical
  tool: systemctl Compilers: gcc: 13.1.1 clang: 15.0.7 Packages: pm: pacman
  pkgs: 1190 libs: 367 tools: pamac pm: flatpak pkgs: 0 Shell: Bash (su)
  v: 5.1.16 running-in: konsole inxi: 3.3.28

did it work in the past ?
:+1: Welcome to Manjaro! :+1:

  1. Please read this:
    [HowTo] Provide System Information
    and press the three dots below your post and press the :pencil2: to give us more information so we can see what’s really going on.
    Now we know the symptom of the disease, but we need some more probing to know where the origin lies… :grin:
  2. An inxi --admin --verbosity=7 --filter --no-host --width would be the minimum required information for us to be able to help you. (Personally Identifiable Information like serial numbers and MAC addresses will be filtered out by the above command)
    Also, please copy-paste that output in-between 3 backticks ``` at the beginning and end of the code/text. (use the option “preformatted text”)

:+1:

To be honest I’m not sure if it worked in the past. I bought this Thinkpad just a few weeks ago and did not use it much so far. I just stumbled upon this error two days ago when I tried to set the battery thresholds for charging. I googled for Thinkpad X121e, tlp and so on but could not find any problem in this direction.
Thanks for your reply, I added the inxi report to my original post

Ok, I found an entry in a german thinkpad wiki:

TLP FAQ

The X121e is not supported by any kernel module (tp-smapi, tpacpi-bat, natacpi).

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.