Bug 212135
Summary: | AE_AML_BUFFER_LIMIT, Field [DRQL] Dell T1700 A28 bios | ||
---|---|---|---|
Product: | ACPI | Reporter: | Michael Carney (mwc) |
Component: | BIOS | Assignee: | Zhang Rui (rui.zhang) |
Status: | CLOSED DOCUMENTED | ||
Severity: | normal | CC: | rui.zhang |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 5.10 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: | acpidump of Dell T1700 (A28) |
Name (CRS1, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x00, // Length _Y17) IRQNoFlags (_Y18) {} DMA (Compatibility, NotBusMaster, Transfer8, ) {} }) ... CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y17._LEN, LNA1) // _LEN: Length ... LNA1 = 0x08 The CRS1 layout is probably offset content 0 Tag Bits of the IO resource 1 Information of the IO resource 2~3 Range minimum base addr of the IO resource 4~5 Range maximum base addr of the IO resource 6 Base Alignment of the IO resource 7 length of the IO resrouce 8 Tag Bits of the IRQ resource 9 IRQ Mask Bits 10 IRQ Mask Bits 11 IRQ Information 12 Tag Bits of the DMA resource 13 DMA channel mask 14 Reserved for DMA resource And later, in Method (DSRS, 2, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x09, IRQL) CreateByteField (Arg0, 0x11, DRQL) CreateByteField (Arg0, 0x14, DMAC) If ((Arg1 == Zero)) { ENFG (0x0C) STIO (0x6A, IOLO, IOHI, Zero) SIRQ (Arg1, IRQL) EXFG () DCNT (Arg1, One) } } To me, it seems that there are some stupid mistakes made, hex values are used as the offset, instead of decimal values. So this is an ACPI BIOS bug, which we can not fix in Linux kernel. Please raise this to Dell instead. I forwarded this bug to Dell support. Thanks for investigating it. |
Created attachment 295737 [details] acpidump of Dell T1700 (A28) Following error occurs: [ +0.025989] ACPI BIOS Error (bug): AE_AML_BUFFER_LIMIT, Field [DRQL] at bit offset/length 136/8 exceeds size of target Buffer (128 bits) (20200925/dsopcode-198) [ +0.000005] ACPI Error: Aborting method \_SB.PCI0.LPCB.SIO1.DSRS due to previous error (AE_AML_BUFFER_LIMIT) (20200925/psparse-529) [ +0.000004] ACPI Error: Aborting method \_SB.PCI0.LPCB.UAR1._SRS due to previous error (AE_AML_BUFFER_LIMIT) (20200925/psparse-529) [ +0.000005] serial 00:06: activation failed [ +0.000005] PM: dpm_run_callback(): pnp_bus_resume+0x0/0x90 returns -5 [ +0.000001] PM: Device 00:06 failed to resume: error -5