Re: [PATCH net-next 09/12] gpio: tc956x: add TC956x/QPS615 support

Andrew Lunn
2026-05-06T21:44:38Z

> To be clear, the reason you're asking is that you're suggesting
> we might want to model the GPIO controller differently, correct?

Correct.

> I.e., model it as *not* associated with the embedded PCIe
> functions. Then we need to think about what its parent device
> would be (the power control device, which I think somehow
> duplicates the switch device?).

Logically, the GPIO controller cannot be part of a downstream
function, if you need to use the GPIO controller to turn the
downstream function on.

Logically, the GPIO controller needs to be above the switch downstream
end points. Where above, i don't know. Which is why i was asking about
where it appears in the address spaces.

But i also don't know too much about PCI, i'm used to SoCs with simple
linear MMIO.

From the little i know, it is more than what address space does the
GPIO appear in. Its also, what enumerable entity does it appear in
within the PCI bus. Because its the enumeration which is going to
trigger a driver load, which can then drive the GPIO controller.

Or, something more radical, you make the PCIe power controller an MFD,
instantiating both the power controller and a GPIO controller over the
I2C bus. GPIO access will not be as fast, but is there anything here
which needs to be fast?

Andrew