Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#18189 closed bug (fixed)

Strange AE_AML_BUFFER_LIMIT errors and no battery

Reported by: zgdump Owned by: korli
Priority: normal Milestone: R1/beta5
Component: Drivers/ACPI Version: R1/beta4
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

Notebook: Asus G713QM-HX121 2021

Haiku: R1/beta4

On my laptop, Haiku does not detect the battery. And there are very strange AE_AML_BUFFER_LIMIT errors in the syslog. Visually, the system continues to work without problems.

Fragment of the system log:

KERN: publish device: node 0xffffffff83134c88, path random, module bus_managers/random/device_v1
KERN: publish device: node 0xffffffff83134c88, path urandom, module bus_managers/random/device_v1
KERN: publish device: node 0xffffffff83134968, path power/acpi_battery/0, module drivers/power/acpi_battery/device_v1
KERN: publish device: node 0xffffffff83134648, path power/button/power, module drivers/power/acpi_button/device_v1
KERN: Firmware Error (ACPI): AE_AML_BUFFER_LIMIT, Field [IIA2] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20210105/dsopcode-356)
KERN: ACPI Error: Aborting method \_SB.ATKD.WMNB due to previous error (AE_AML_BUFFER_LIMIT) (20210105/psparse-688)
KERN: Firmware Error (ACPI): AE_AML_BUFFER_LIMIT, Field [IIA2] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20210105/dsopcode-356)
KERN: ACPI Error: Aborting method \_SB.ATKD.WMNB due to previous error (AE_AML_BUFFER_LIMIT) (20210105/psparse-688)
KERN: Firmware Error (ACPI): AE_AML_BUFFER_LIMIT, Field [IIA2] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20210105/dsopcode-356)
KERN: ACPI Error: Aborting method \_SB.ATKD.WMNB due to previous error (AE_AML_BUFFER_LIMIT) (20210105/psparse-688)
KERN: Firmware Error (ACPI): AE_AML_BUFFER_LIMIT, Field [IIA2] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20210105/dsopcode-356)
KERN: ACPI Error: Aborting method \_SB.ATKD.WMNB due to previous error (AE_AML_BUFFER_LIMIT) (20210105/psparse-688)
KERN: Firmware Error (ACPI): AE_AML_BUFFER_LIMIT, Field [IIA2] at bit offset/length 64/32 exceeds size of target Buffer (64 bits) (20210105/dsopcode-356)

Attachments (2)

syslog.old (512.0 KB ) - added by zgdump 2 years ago.
acpidump.zip (91.7 KB ) - added by zgdump 2 years ago.

Download all attachments as: .zip

Change History (8)

by zgdump, 2 years ago

Attachment: syslog.old added

comment:1 by waddlesplash, 2 years ago

Component: - GeneralDrivers/Power

by zgdump, 2 years ago

Attachment: acpidump.zip added

comment:2 by zgdump, 2 years ago

Fix by Reijo F from russian haiku os chat:

diff --git a/src/add-ons/kernel/drivers/wmi/WMIAsus.cpp b/src/add-ons/kernel/drivers/wmi/WMIAsus.cpp
index 5b61c0089d..c95fb47075 100644
--- a/src/add-ons/kernel/drivers/wmi/WMIAsus.cpp
+++ b/src/add-ons/kernel/drivers/wmi/WMIAsus.cpp
@@ -125,7 +125,7 @@ WMIAsus::_EvaluateMethod(uint32 methodId, uint32 arg0, uint32 arg1,
        uint32 *returnValue)
 {
        CALLED();
-       uint32 params[] = { arg0, arg1 };
+       uint32 params[] = { arg0, arg1, 0, 0, 0 };
        acpi_data inBuffer = { sizeof(params), params };
        acpi_data outBuffer = { ACPI_ALLOCATE_BUFFER, NULL };
        status_t status = wmi->evaluate_method(wmi_cookie, 0, methodId, &inBuffer,
Last edited 2 years ago by zgdump (previous) (diff)

comment:3 by tqh, 2 years ago

Component: Drivers/PowerDrivers/ACPI
Owner: changed from nobody to korli
Status: newassigned

Korli, looks like Asus WMI driver needs a bigger buffer for params, not sure why.

comment:4 by korli, 2 years ago

Applied in master with hrev56683

comment:5 by korli, 2 years ago

Milestone: UnscheduledR1/beta5
Resolution: fixed
Status: assignedclosed

Should this be considered for beta4?

comment:6 by kim1963, 2 years ago

Beta 4 ?

Note: See TracTickets for help on using tickets.