Re: [v5] i2c: i801: Allow ACPI SystemIO OpRegion to conflict with PCI BAR
From: Mika Westerberg <mika.westerberg@linux.intel.com>
Date: 2016-07-05 11:51:48
Also in:
linux-acpi
On Tue, Jul 05, 2016 at 01:30:23PM +0200, Pali Rohár wrote:
On Tuesday 05 July 2016 12:14:55 Mika Westerberg wrote:quoted
The whole point of this patch is that we expect that nobody never uses that OpRegion. I'm 99% sure you don't find a single machine where it is actually in use.HP EliteBook 8460p uses it for sure! Here are DSDT snips: Method (\_SB.PCI0.LPCB.SMAB, 3, Serialized) { If (LEqual (And (Arg0, 0x01), 0x00)) { Store (0x01, Local0) Store (\_SB.PCI0.SBUS.SWRB (Arg0, Arg1, Arg2), Local1) If (Local1) { Store (0x00, Local0) } } Else { Store (\_SB.PCI0.SBUS.SRDB (Arg0, Arg1), Local0) } Return (Local0) }
Crap, well that is in that 1% then ;-)
...
Method (ALRD, 1, Serialized)
{
Store (\_SB.PCI0.LPCB.SMAB (0x33, Arg0, 0x00), Local0)
Return (Local0)
}
Method (ALWR, 2, Serialized)
{
Store (\_SB.PCI0.LPCB.SMAB (0x32, Arg0, Arg1), Local0)
Return (Local0)
}
And ALRD and ALWR methods are used by hp_accel.ko kernel driver.So are you able to test what happens when you unload the driver? I think the safest thing to do is that we just pin the driver in the kernel once we notice the OpRegion is being accessed. Does anyone else have better ideas? -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html