[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z5JeW6kprsLgJJ_m@hovoldconsulting.com>
Date: Thu, 23 Jan 2025 16:20:59 +0100
From: Johan Hovold <johan@...nel.org>
To: POPESCU Catalin <catalin.popescu@...ca-geosystems.com>
Cc: "gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"m.felsch@...gutronix.de" <m.felsch@...gutronix.de>,
GEO-CHHER-bsp-development <bsp-development.geo@...ca-geosystems.com>
Subject: Re: [PATCH] usb: core: support interface node for simple USB devices
On Thu, Jan 23, 2025 at 02:01:00PM +0000, POPESCU Catalin wrote:
> On 23/01/2025 12:15, Johan Hovold wrote:
> >
> > On Wed, Jan 22, 2025 at 02:47:32PM +0100, Catalin Popescu wrote:
> >> A simple usb device has a single configuration and a single interface
> >> and is considered as a "combined node" when defined in the devicetree.
> >> If available, its interface node is simply ignored which is a problem
> >> whenever the interface node has subnodes. To prevent that from happening
> >> first check for any subnode and ignore the interface node only if no
> >> subnode was found.
> >>
> >> Example: FTDI chip FT234XD that has only one UART interface which is
> >> being used as a serdev by other driver.
> >>
> >> device@1 {
> >> compatible = "usb403,6015";
> >> reg = <1>;
> >>
> >> #address-cells = <2>;
> >> #size-cells = <0>;
> >>
> >> interface@0 {
> >> compatible = "usbif403,6015.config1.0";
> > Your example makes no sense since if this is the only interface then the
> > interface node should not be here.
>
> That's the problem my patch is trying to address ...
> Why is it OK to describe multiple interfaces and it is not OK to
> describe the interface of a simple USB device ?
It's part of the spec. See commit 1a7e3948cb9f ("USB: add device-tree
support for interfaces") and its reference to "Open Firmware Recommended
Practice: Universal Serial Bus Version 1".
Johan
Powered by blists - more mailing lists