Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/44471 )
Change subject: soc/intel/common/gpio_defs: Remove incorrent GPO macro ......................................................................
Patch Set 2:
Patch Set 2:
Patch Set 2:
Patch Set 2: Code-Review-1
Sorry to delaying this, once again :S I found something in the linux pinctrl driver (linux/drivers/pinctrl/intel/pinctrl-intel.c). Look for intel_config_get/set(), intel_pad_usable() and intel_pad_owned_by_host(). pinctrl only allows to control pads that have ownership set to driver. That confirms my initial idea that driver mode is to control which pads are allowed to be altered by the OS (driver mode) or not (ACPI mode). Further, it applies to GPI, as well as GPO.
During some research I noticed that some vendors (at least vendors using Insyde UEFI like Supermicro) set driver mode for GPIOs that read board id, board revision, bios reset jumper, nmi jumper and all sorts of other stuff. Most of them are *not* using any interrupt at all. Also GPOs used for signalling to BMC (POST done) are set to driver mode.
This one is veeeery similiar to what Supermicro does on the X11SSM/X11SSH btw. I'm pretty sure they use the SkylakeOpenBoardPkg ;-) https://github.com/maxpoliak/purley-platforms/blob/master/Platform/Intel/Pur...
I think you can find schematics for this somewhere. I have them, at least.