https://bugzilla.kernel.org/show_bug.cgi?id=208423
Bug ID: 208423
Summary: I2C touchpad doesn't work because \_SB.PCI0.I2C0._REG
doesn't get evaluated
Product: ACPI
Version: 2.5
Kernel Version: mainline
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: ACPICA-Core
Assignee: [email protected]
Reporter: [email protected]
Regression: No
This is _REG for I2C device:
Scope (_SB.PCI0.I2C0)
{
..
Method (_REG, 2, NotSerialized) // _REG: Region Availability
{
If (((Arg0 == 0x09) && (Arg1 == One)))
{
If ((ICBM == One))
{
Name (LBUF, Buffer (0x03)
{
0x00, 0x00, 0x00 //
...
})
CreateByteField (LBUF, Zero, LSTS)
CreateByteField (LBUF, 0x02, LDAT)
LBUF = SHID /* \_SB_.PCI0.I2C0.SHID */
If ((LSTS == Zero))
{
If ((LDAT == 0x1E))
{
TPVD = 0x4E
}
If ((LDAT == Zero))
{
TPVD = 0x53
}
}
LBUF = EHID /* \_SB_.PCI0.I2C0.EHID */
If ((LSTS == Zero))
{
TPVD = 0x45
}
}
}
}
And the touchpad under it requires _REG to return a valid _STA:
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((TPVD == 0x53))
{
Return (0x0F)
}
Return (Zero)
}
For some reason _REG doesn't get evaluated at initialization time, I guess it's
due to
lip 03 12:45:41 lenovo-mrozwod kernel: ACPI BIOS Error (bug):
AE_AML_PACKAGE_LIMIT, Index (0x0000000FF) is beyond end of object (length 0x10)
(20200528/exoparg2-393)
--
You are receiving this mail because:
You are watching the assignee of the bug.
_______________________________________________
acpi-bugzilla mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla