Hello NixOS community,
I have encountered an ACPI BIOS Error on my Lenovo ThinkPad E480 after updating the BIOS to version 1.50 (released on 11/07/2023). Below are the details of the issue:
Error Log:
ACPI BIOS Error (bug): AE_AML_BUFFER_LIMIT, Field [TBF3] at bit offset/length 262144/32768 exceeds size of target Buffer (262144 bits) (20240827/dsopcode-198)
ACPI Error: Aborting method \_SB.PCI0.GFX0.GETB due to previous error (AE_AML_BUFFER_LIMIT) (20240827/psparse-529)
ACPI Error: Aborting method \_SB.PCI0.GFX0.ATRM due to previous error (AE_AML_BUFFER_LIMIT) (20240827/psparse-529)
[drm:amdgpu_get_bios [amdgpu]] *ERROR* failed to evaluate ATRM got AE_AML_BUFFER_LIMIT
System Information:
- Laptop Model: Lenovo ThinkPad E480 (2017)
- BIOS Version: R0PET73W (1.50) - released on 11/07/2023
- Kernel Version: 6.12.10-zen1
- Graphics: Intel UHD Graphics 620 (i915 driver), AMD Radeon 540 (amdgpu driver)
Troubleshooting Steps I’ve Taken:
- I have tried adding several kernel parameters, such as
acpi=strict
andacpi_osi=Linux
, but the issue persists. - I have updated my NixOS and checked all related system configurations, including ACPI settings in the BIOS, but no resolution has been found.
Possible Cause:
Given that my BIOS version was updated recently, I wonder if the updated BIOS (2023) is incompatible with my older hardware (2017 model). I’m seeing a mismatch between the ACPI tables in the BIOS and the kernel’s expectations, which could be causing the AE_AML_BUFFER_LIMIT
error.
Has anyone experienced similar issues with a BIOS update on a ThinkPad, particularly with newer versions of BIOS on older hardware? Any suggestions on how to resolve this or any further kernel parameters I could try would be greatly appreciated.
Thank you for your help!
q@NixOS:~/ > sudo dmidecode -t bios
[sudo] пароль для root:
# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.0.0 present.
Handle 0x000B, DMI type 0, 24 bytes
BIOS Information
Vendor: LENOVO
Version: R0PET73W (1.50 )
Release Date: 11/07/2023
Address: 0xE0000
Runtime Size: 128 kB
ROM Size: 16 MB
Characteristics:
PCI is supported
PNP is supported
BIOS is upgradeable
BIOS shadowing is allowed
Boot from CD is supported
Selectable boot is supported
EDD is supported
3.5"/720 kB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
BIOS boot specification is supported
Targeted content distribution is supported
UEFI is supported
BIOS Revision: 1.50
Firmware Revision: 1.50
Handle 0x0022, DMI type 13, 22 bytes
BIOS Language Information
Language Description Format: Abbreviated
Installable Languages: 1
en-US
Currently Installed Language: en-US
q@NixOS:~/ > journalctl -b -p err
01 23:29:15 NixOS kernel: thinkpad_acpi: acpi_evalf(MMTS, dd, ...) failed: AE_OK
01 23:29:15 NixOS kernel: leds platform::micmute: Setting an LED's brightness failed (-5)
01 23:29:15 NixOS kernel: ACPI BIOS Error (bug): AE_AML_BUFFER_LIMIT, Field [TBF3] at bit offset/length 262144/32768 exceeds size of target Buffer (262144 bits) (20240827/dsopcode-198)
01 23:29:15 NixOS kernel: ACPI Error: Aborting method \_SB.PCI0.GFX0.GETB due to previous error (AE_AML_BUFFER_LIMIT) (20240827/psparse-529)
01 23:29:15 NixOS kernel: ACPI Error: Aborting method \_SB.PCI0.GFX0.ATRM due to previous error (AE_AML_BUFFER_LIMIT) (20240827/psparse-529)
01 23:29:15 NixOS kernel: [drm:amdgpu_get_bios [amdgpu]] *ERROR* failed to evaluate ATRM got AE_AML_BUFFER_LIMIT
q@NixOS:~/ > inxi -F
System:
Host: NixOS Kernel: 6.12.10-zen1 arch: x86_64 bits: 64
Desktop: Xfce v: 4.20.0 Distro: NixOS 25.05 (Warbler)
Machine:
Type: Laptop System: LENOVO product: 20KN003WUS v: ThinkPad E480
serial: <superuser required>
Mobo: LENOVO model: 20KN003WUS v: SDK0J40697 WIN
serial: <superuser required> UEFI: LENOVO v: R0PET73W (1.50 )
date: 11/07/2023
Battery:
ID-1: BAT0 charge: 34.7 Wh (100.0%) condition: 34.7/45.7 Wh (75.9%)
CPU:
Info: quad core model: Intel Core i7-8550U bits: 64 type: MT MCP cache:
L2: 1024 KiB
Speed (MHz): avg: 550 min/max: 400/4000 cores: 1: 700 2: 400 3: 700 4: 400
5: 700 6: 700 7: 400 8: 400
Graphics:
Device-1: Intel UHD Graphics 620 driver: i915 v: kernel
Device-2: AMD Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X]
driver: amdgpu v: kernel
Device-3: Bison SunplusIT Integrated Camera driver: uvcvideo type: USB
Display: x11 server: X.org v: 1.21.1.15 driver: gpu: i915
resolution: 1920x1080~60Hz
API: EGL v: 1.5 drivers: iris,radeonsi,swrast
platforms: gbm,x11,surfaceless,device
API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 24.3.4
renderer: Mesa Intel UHD Graphics 620 (KBL GT2)
Audio:
Device-1: Intel Sunrise Point-LP HD Audio driver: snd_hda_intel
API: ALSA v: k6.12.10-zen1 status: kernel-api
Server-1: PipeWire v: 1.2.7 status: active
Network:
Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
driver: r8169
IF: enp3s0 state: down mac: e8:6a:64:18:00:c7
Device-2: Realtek RTL8822BE 802.11a/b/g/n/ac WiFi adapter
driver: rtw_8822be
IF: wlp5s0 state: up mac: 80:2b:f9:15:ad:b1
Bluetooth:
Device-1: Realtek RTL8822BE Bluetooth 4.2 Adapter driver: btusb type: USB
Report: rfkill ID: hci0 rfk-id: 1 state: down bt-service: not found
rfk-block: hardware: no software: no address: see --recommends
Drives:
Local Storage: total: 476.95 GiB used: 54.95 GiB (11.5%)
ID-1: /dev/nvme0n1 vendor: Toshiba model: N/A size: 238.47 GiB
ID-2: /dev/sda vendor: Samsung model: MZ7LN256HCHP-000L7 size: 238.47 GiB
Partition:
ID-1: / size: 199.48 GiB used: 54.65 GiB (27.4%) fs: ext4
dev: /dev/nvme0n1p2
ID-2: /boot size: 511 MiB used: 85 MiB (16.6%) fs: vfat
dev: /dev/nvme0n1p1
Swap:
ID-1: swap-1 type: zram size: 31.12 GiB used: 0 KiB (0.0%) dev: /dev/zram0
ID-2: swap-2 type: partition size: 34.23 GiB used: 0 KiB (0.0%)
dev: /dev/nvme0n1p3
Sensors:
Src: /sys System Temperatures: cpu: 50.0 C pch: 41.0 C mobo: N/A gpu: amdgpu
temp: 40.0 C
Fan Speeds (rpm): N/A
Info:
Memory: total: 32 GiB note: est. available: 31.12 GiB used: 3.69 GiB (11.9%)
Processes: 257 Uptime: 0h 22m Shell: Zsh inxi: 3.3.35
q@NixOS:~/ >
q@NixOS:~/ > sudo dmesg | grep acpi
[sudo] пароль для root:
[ 0.000000] Command line: initrd=\EFI\nixos\12ly93prc3xlcvd5lp5a1yaa5h26ijcg-initrd-linux-zen-6.12.10-initrd.efi init=/nix/store/vvx7d0nlayxld0cs9nhw6bgcdxybzfr7-nixos-system-NixOS-25.05.20250129.9d3ae80/init acpi_osi=Linux acpi=strict splash loglevel=3
[ 0.090596] ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
[ 0.090599] ACPI: LAPIC_NMI (acpi_id[0x02] high edge lint[0x1])
[ 0.090600] ACPI: LAPIC_NMI (acpi_id[0x03] high edge lint[0x1])
[ 0.090602] ACPI: LAPIC_NMI (acpi_id[0x04] high edge lint[0x1])
[ 0.090603] ACPI: LAPIC_NMI (acpi_id[0x05] high edge lint[0x1])
[ 0.090604] ACPI: LAPIC_NMI (acpi_id[0x06] high edge lint[0x1])
[ 0.090605] ACPI: LAPIC_NMI (acpi_id[0x07] high edge lint[0x1])
[ 0.090607] ACPI: LAPIC_NMI (acpi_id[0x08] high edge lint[0x1])
[ 0.090608] ACPI: LAPIC_NMI (acpi_id[0x09] high edge lint[0x1])
[ 0.090609] ACPI: LAPIC_NMI (acpi_id[0x0a] high edge lint[0x1])
[ 0.090610] ACPI: LAPIC_NMI (acpi_id[0x0b] high edge lint[0x1])
[ 0.090611] ACPI: LAPIC_NMI (acpi_id[0x0c] high edge lint[0x1])
[ 0.090613] ACPI: LAPIC_NMI (acpi_id[0x0d] high edge lint[0x1])
[ 0.090614] ACPI: LAPIC_NMI (acpi_id[0x0e] high edge lint[0x1])
[ 0.090615] ACPI: LAPIC_NMI (acpi_id[0x0f] high edge lint[0x1])
[ 0.090616] ACPI: LAPIC_NMI (acpi_id[0x10] high edge lint[0x1])
[ 0.101287] Kernel command line: initrd=\EFI\nixos\12ly93prc3xlcvd5lp5a1yaa5h26ijcg-initrd-linux-zen-6.12.10-initrd.efi init=/nix/store/vvx7d0nlayxld0cs9nhw6bgcdxybzfr7-nixos-system-NixOS-25.05.20250129.9d3ae80/init acpi_osi=Linux acpi=strict splash loglevel=3
[ 0.294897] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[ 0.499866] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI HPX-Type3]
[ 0.503776] acpi PNP0A08:00: _OSC: OS now controls [PCIeHotplug PME PCIeCapability LTR]
[ 0.551491] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
[ 0.653886] hpet_acpi_add: no address or irqs in _CRS
[ 4.056770] thinkpad_acpi: ThinkPad ACPI Extras v0.26
[ 4.056776] thinkpad_acpi: http://ibm-acpi.sf.net/
[ 4.056778] thinkpad_acpi: ThinkPad BIOS R0PET73W (1.50 ), EC R0PHT73W
[ 4.056782] thinkpad_acpi: Lenovo ThinkPad E480, model 20KN003WUS
[ 4.057243] thinkpad_acpi: radio switch found; radios are enabled
[ 4.057782] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
[ 4.057786] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
[ 4.063259] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is blocked
[ 4.461466] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one
[ 4.494431] thinkpad_acpi: Console audio control enabled, mode: monitor (read only)
[ 4.597695] thinkpad_acpi: secondary fan control detected & enabled
[ 4.617718] thinkpad_acpi: battery 1 registered (start 95, stop 100, behaviours: 0x7)
[ 4.622664] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input12
[ 7.704148] thinkpad_acpi: acpi_evalf(MMTS, dd, ...) failed: AE_OK