[PATCH 0/3] USB-Serial serdev support

Marco Felsch
2024-08-07T14:08:54Z

Hi,

this patchset is based on Johan's patches [1] but dropped the need of
the special 'serial' of-node [2].

With the patches in place and the usb hierarchy described in properly we
can use serdev on-top of usb-serial. The below example adds the support
for the following hierarchy:
- host->usb-hub->ftdi-usb-uart->bt/wlan-module:

&usb_dwc3_1 {
dr_mode = "host";
status = "okay";

hub@1 {
compatible = "usb424,2514";
reg = <1>;

vdd-supply = <&reg>;
reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;

#address-cells = <1>;
#size-cells = <0>;

device@1 {
compatible = "usb403,6010";
reg = <1>;

#address-cells = <2>;
#size-cells = <0>;

interface@0 {
compatible = "usbif403,6010.config1.0";
reg = <0 1>;

#address-cells = <1>;
#size-cells = <0>;

bluetooth {
compatible = "nxp,88w8987-bt";
fw-init-baudrate = <3000000>;
};
};
};
};
};

If no serdev node is found the usb-serial is exposed as usual and can be
accessed via /dev/ttyUSBx.

Regards,
Marco

[1] https://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial.git/log/?h=usb-serial-of
[2] https://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial.git/commit/?h=usb-serial-of&id=b19239022c92567a6a9ed40e8522e84972b0997f

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
Marco Felsch (3):
serdev: ttyport: make use of tty_kopen_exclusive
USB: serial: cosmetic cleanup <space><tab> mix
USB: serial: enable serdev support

drivers/tty/serdev/serdev-ttyport.c | 9 ++++++---
drivers/usb/serial/bus.c | 10 ++++++----
2 files changed, 12 insertions(+), 7 deletions(-)
---
base-commit: 0c3836482481200ead7b416ca80c68a29cfdaabd
change-id: 20240807-v6-10-topic-usb-serial-serdev-83a7f8f86432

Best regards,
--
Marco Felsch <m.felsch@pengutronix.de>