On Mon, Oct 25, 2021 at 04:54:41PM +0200, Hans de Goede wrote: > > Yes that's exactly what is supposed to happen that this attribute is made. > > What exactly happens when you write into it? > > The _SB.CGWR ACPI method gets called, with arguments coming from ACPI > settings stored in memory. Depending on those settings this function > either directly pokes some MMIO or tries to talk to an I2C GPIO > expander which is not present on the Surface Go, causing it to > MMIO poke an I2C controller which it should not touch. > > In either case the AML code ends up poking stuff it should not touch > and the entire force_power sysfs attribute should simply not be > there on devices without thunderbolt. That's right - it should not be there in the first place if there is no Thunderbolt controller on that thing. I guess most of the systems that have this actually do support Thunderbolt so maybe we can work this around by quirking all the Surface models in that driver?