Duncan Laurie has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/45911 )
Change subject: drivers/i2c: Add chip driver for GPIO based I2C multiplexer ......................................................................
Patch Set 4:
This should also add a device property in the _DSD describing "mux-gpios" listing the gpios that are defined, to match https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next/+/r...
It would be good to design this to support more than one GPIO for mux control so it matches what the kernel supports.
That will require supporting a list of GPIOs for a property. Right now we only handle a single gpio per property with acpi_dp_add_gpio(): Package () { "mux-gpios", Package () {^FOO, 3, 0, 0}, },
But this would need to support multiple gpios in the property, for example: Package () { "mux-gpios", Package () { ^FOO, 0, 0, 1, ^FOO, 1, 0, 1, ^FOO, 2, 0, 1, } },
It might be best to add a new function like acpi_dp_add_gpio_array() to avoid having to change the existing use cases..