USB type-C switch in device tree?
by Javiku from LinuxQuestions.org on (#6EFWT)
Hello, I am writing a device tree for a custom board where a USB type-C 2:1 switch (FUSB340). This switch has the common port connected to a device connector and the two selectable ports are connected to two host connectors.
I want to describe this architecture in a device tree and I have found the "usb-c-connector" nodes to describe the host/device connectors, but I could not find anything about USB switches i.e. no bindings in the documentation or any implementation in arch/. There is no mainline driver for my switch and actually I could not find a driver for a USB 2.0 switch that is on my custom board either (FSUSB42). Therefore I am wondering if my approach is not right and the USB switches are not handled by specific drivers or even mentioned in device trees. There is a "USB Type-C Multiplexer/DeMultiplexer Switch support" sub menu in the menuconfig, but the list does not have any element that might fit my needs.
Has anyone ever used USB switches in embedded systems? I could program a very simple driver (it just needs to control the chip enable and the select signal), but USB switches must be a pretty common thing and I would be surprised if there was not a mainline solution already. Hence I would be grateful if I got some advice or even an example from an existing device tree if something like that has already been implemented.
Thanks and best regards.
I want to describe this architecture in a device tree and I have found the "usb-c-connector" nodes to describe the host/device connectors, but I could not find anything about USB switches i.e. no bindings in the documentation or any implementation in arch/. There is no mainline driver for my switch and actually I could not find a driver for a USB 2.0 switch that is on my custom board either (FSUSB42). Therefore I am wondering if my approach is not right and the USB switches are not handled by specific drivers or even mentioned in device trees. There is a "USB Type-C Multiplexer/DeMultiplexer Switch support" sub menu in the menuconfig, but the list does not have any element that might fit my needs.
Has anyone ever used USB switches in embedded systems? I could program a very simple driver (it just needs to control the chip enable and the select signal), but USB switches must be a pretty common thing and I would be surprised if there was not a mainline solution already. Hence I would be grateful if I got some advice or even an example from an existing device tree if something like that has already been implemented.
Thanks and best regards.