drivers/i2c/generic: Drop 'disable_gpio_export_in_crs' flag
commit4902e9b35f1b62c2c28e582e33ad55d2543f1483
authorMatt DeVillier <matt.devillier@amd.corp-partner.google.com>
Wed, 11 Jan 2023 23:41:37 +0000 (11 17:41 -0600)
committerMartin L Roth <gaumless@gmail.com>
Sun, 15 Jan 2023 02:01:48 +0000 (15 02:01 +0000)
treeecf83ae2983dbf3318bbb2bf315eee6cc3ed903d
parent2e6c55946c4d4ff04e1bc8de7272a4cef63ed55d
drivers/i2c/generic: Drop 'disable_gpio_export_in_crs' flag

Exposing the GPIOs via an ACPI PowerResource and the _CRS results in the
OS driver and ACPI thinking they own the GPIO. This can cause timing
problems because it's not clear which system should be controlling the
GPIO.

Previously, we flagged as an error any device which set the
'has_power_resource' flag but did not set 'disable_gpio_export_in_crs.'
There's no reason to require explicit disablement however, so drop the
superfluous 'disable' flag, and change the _CRS generation to check if
the GPIOs will be exported via the 'has_power_resource' flag instead.

BUG=b:265055477
TEST=build/boot skyrim, dump SSDT and verify touchscreen GPIOs only
listed under PRx, not under _CRS.

Change-Id: I837ae6c6fe4b8e1c4e10686406cba06bdb7759d2
Signed-off-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/71849
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
95 files changed:
src/drivers/i2c/generic/chip.h
src/drivers/i2c/generic/generic.c
src/mainboard/google/brya/variants/anahera/overridetree.cb
src/mainboard/google/brya/variants/anahera4es/overridetree.cb
src/mainboard/google/brya/variants/craask/overridetree.cb
src/mainboard/google/brya/variants/crota/overridetree.cb
src/mainboard/google/brya/variants/felwinter/overridetree.cb
src/mainboard/google/brya/variants/gimble/overridetree.cb
src/mainboard/google/brya/variants/gimble4es/overridetree.cb
src/mainboard/google/brya/variants/kano/overridetree.cb
src/mainboard/google/brya/variants/mithrax/overridetree.cb
src/mainboard/google/brya/variants/nivviks/overridetree.cb
src/mainboard/google/brya/variants/primus/overridetree.cb
src/mainboard/google/brya/variants/primus4es/overridetree.cb
src/mainboard/google/brya/variants/pujjo/overridetree.cb
src/mainboard/google/brya/variants/redrix/overridetree.cb
src/mainboard/google/brya/variants/redrix4es/overridetree.cb
src/mainboard/google/brya/variants/taeko/overridetree.cb
src/mainboard/google/brya/variants/taeko4es/overridetree.cb
src/mainboard/google/brya/variants/vell/overridetree.cb
src/mainboard/google/brya/variants/volmar/overridetree.cb
src/mainboard/google/brya/variants/xivu/overridetree.cb
src/mainboard/google/brya/variants/yaviks/overridetree.cb
src/mainboard/google/brya/variants/zydron/overridetree.cb
src/mainboard/google/dedede/variants/cret/overridetree.cb
src/mainboard/google/dedede/variants/drawcia/overridetree.cb
src/mainboard/google/dedede/variants/haboki/overridetree.cb
src/mainboard/google/dedede/variants/lalala/overridetree.cb
src/mainboard/google/dedede/variants/lantis/overridetree.cb
src/mainboard/google/dedede/variants/magolor/overridetree.cb
src/mainboard/google/dedede/variants/metaknight/overridetree.cb
src/mainboard/google/dedede/variants/shotzo/overridetree.cb
src/mainboard/google/drallion/variants/drallion/devicetree.cb
src/mainboard/google/guybrush/variants/dewatt/overridetree.cb
src/mainboard/google/guybrush/variants/guybrush/overridetree.cb
src/mainboard/google/hatch/variants/dratini/overridetree.cb
src/mainboard/google/hatch/variants/jinlon/overridetree.cb
src/mainboard/google/hatch/variants/kohaku/overridetree.cb
src/mainboard/google/hatch/variants/nightfury/overridetree.cb
src/mainboard/google/kahlee/variants/aleena/overridetree.cb
src/mainboard/google/kahlee/variants/baseboard/devicetree.cb
src/mainboard/google/kahlee/variants/careena/overridetree.cb
src/mainboard/google/kahlee/variants/grunt/overridetree.cb
src/mainboard/google/kahlee/variants/nuwani/overridetree.cb
src/mainboard/google/kahlee/variants/treeya/overridetree.cb
src/mainboard/google/octopus/variants/ampton/overridetree.cb
src/mainboard/google/octopus/variants/bloog/overridetree.cb
src/mainboard/google/octopus/variants/bobba/overridetree.cb
src/mainboard/google/octopus/variants/dood/overridetree.cb
src/mainboard/google/octopus/variants/fleex/overridetree.cb
src/mainboard/google/octopus/variants/foob/overridetree.cb
src/mainboard/google/octopus/variants/garg/overridetree.cb
src/mainboard/google/octopus/variants/meep/overridetree.cb
src/mainboard/google/octopus/variants/phaser/overridetree.cb
src/mainboard/google/poppy/variants/atlas/devicetree.cb
src/mainboard/google/poppy/variants/baseboard/devicetree.cb
src/mainboard/google/poppy/variants/nami/devicetree.cb
src/mainboard/google/poppy/variants/nautilus/devicetree.cb
src/mainboard/google/poppy/variants/nocturne/devicetree.cb
src/mainboard/google/poppy/variants/rammus/devicetree.cb
src/mainboard/google/poppy/variants/soraka/devicetree.cb
src/mainboard/google/puff/variants/dooly/overridetree.cb
src/mainboard/google/puff/variants/scout/overridetree.cb
src/mainboard/google/reef/variants/pyro/devicetree.cb
src/mainboard/google/reef/variants/snappy/devicetree.cb
src/mainboard/google/rex/variants/rex0/overridetree.cb
src/mainboard/google/sarien/variants/arcada/devicetree.cb
src/mainboard/google/skyrim/variants/skyrim/overridetree.cb
src/mainboard/google/skyrim/variants/winterhold/overridetree.cb
src/mainboard/google/volteer/variants/collis/overridetree.cb
src/mainboard/google/volteer/variants/copano/overridetree.cb
src/mainboard/google/volteer/variants/delbin/overridetree.cb
src/mainboard/google/volteer/variants/drobit/overridetree.cb
src/mainboard/google/volteer/variants/eldrid/overridetree.cb
src/mainboard/google/volteer/variants/elemi/overridetree.cb
src/mainboard/google/volteer/variants/halvor/overridetree.cb
src/mainboard/google/volteer/variants/terrador/overridetree.cb
src/mainboard/google/volteer/variants/todor/overridetree.cb
src/mainboard/google/volteer/variants/trondo/overridetree.cb
src/mainboard/google/volteer/variants/voema/overridetree.cb
src/mainboard/google/volteer/variants/volet/overridetree.cb
src/mainboard/google/volteer/variants/volteer/overridetree.cb
src/mainboard/google/volteer/variants/volteer2/overridetree.cb
src/mainboard/google/volteer/variants/voxel/overridetree.cb
src/mainboard/google/zork/variants/berknip/overridetree.cb
src/mainboard/google/zork/variants/dalboz/overridetree.cb
src/mainboard/google/zork/variants/dirinboz/overridetree.cb
src/mainboard/google/zork/variants/ezkinil/overridetree.cb
src/mainboard/google/zork/variants/gumboz/overridetree.cb
src/mainboard/google/zork/variants/morphius/overridetree.cb
src/mainboard/google/zork/variants/shuboz/overridetree.cb
src/mainboard/google/zork/variants/trembyle/overridetree.cb
src/mainboard/google/zork/variants/vilboz/overridetree.cb
src/mainboard/google/zork/variants/woomax/overridetree.cb
src/mainboard/intel/adlrvp/devicetree_m.cb