Instead of statically selecting the PHY connection to either the
USBHS (Function) or PCI0 (Host) IP blocks, this change allows the
dts to specifiy gpio pins for the vbus and id signals. Additional
These GPIOs don't have anything to do with the PHY, they're interfacing
Perhaps that was too strong statement but nevertheless...
Looking at your MAX3355 extcon driver, I can't see how it would work on it's
own.
The system needs to sense vbus in order to determine that the board
has been plugged into a USB Host.
Since the MAX3355 device doesn't
directly provide any vbus signals, this shouldn't be part of the extcon driver,
so where should it be?
On the other hand, the MAX3355 has a pair of status pins that can be used
to get vbus instead.
If these pins aren't used for other functions, maybe
it's better to use these in the extcon driver.
My intention is to make the USB PHY driver listen for extcon events instead
of directly accessing the ID and VBUS signals, but otherwise behave in the
same way it currently does.
After reading some other threads, I also intend to set up a fixed regulator
for the MAX3355 device to setup the shutdown and vbus enable pins. I know
that the vbus enable should really be controlled some other way depending
on the role, but for the moment I think it's ok just to enable it always.
Do you think that is the correct way to progress this?
Thanks
Phil