public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
From: Johan Hovold <johan@kernel.org>
To: POPESCU Catalin <catalin.popescu@leica-geosystems.com>
Cc: "gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"m.felsch@pengutronix.de" <m.felsch@pengutronix.de>,
	GEO-CHHER-bsp-development
	<bsp-development.geo@leica-geosystems.com>
Subject: Re: [PATCH] usb: core: support interface node for simple USB devices
Date: Thu, 23 Jan 2025 16:20:59 +0100	[thread overview]
Message-ID: <Z5JeW6kprsLgJJ_m@hovoldconsulting.com> (raw)
In-Reply-To: <ce5fe24e-e2b5-4e41-9dd3-164d688afe04@leica-geosystems.com>

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

  reply	other threads:[~2025-01-23 15:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-22 13:47 [PATCH] usb: core: support interface node for simple USB devices Catalin Popescu
2025-01-22 13:53 ` Greg KH
2025-01-22 17:17   ` POPESCU Catalin
2025-01-23 11:18     ` Johan Hovold
2025-01-23 11:52       ` POPESCU Catalin
2025-01-23 11:15 ` Johan Hovold
2025-01-23 14:01   ` POPESCU Catalin
2025-01-23 15:20     ` Johan Hovold [this message]
2025-01-23 16:33       ` POPESCU Catalin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z5JeW6kprsLgJJ_m@hovoldconsulting.com \
    --to=johan@kernel.org \
    --cc=bsp-development.geo@leica-geosystems.com \
    --cc=catalin.popescu@leica-geosystems.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=m.felsch@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox