Re: [PATCH] USB: Fix up terminology
From: Greg Kroah-Hartman
Date: Wed Jul 01 2020 - 02:51:07 EST
On Wed, Jul 01, 2020 at 06:40:20AM +0000, Peter Chen wrote:
>
> >
> > On Wed, Jul 01, 2020 at 02:02:00PM +0800, Peter Chen wrote:
> > > > index 3a7179e90f4e..1a12aab208b4 100644
> > > > --- a/drivers/usb/gadget/udc/Kconfig
> > > > +++ b/drivers/usb/gadget/udc/Kconfig
> > > > @@ -474,7 +474,7 @@ config USB_DUMMY_HCD
> > > > help
> > > > This host controller driver emulates USB, looping all data transfer
> > > > requests back to a USB "gadget driver" in the same host. The host
> > > > - side is the master; the gadget side is the slave. Gadget drivers
> > > > + side is the controller; the gadget side is the device. Gadget drivers
> > >
> > > 'the host side is the controller' may not be suitable.
> >
> > Really? It is literally a "host controller" as per the specification :)
>
> You are right. At first, I thought, there are device controller, host controller and dual-role
> controller, why you only said, "the host side is the controller"? After checking USB 3.0 spec,
> there are only "device", "host" and "host controller" at its Terms and Abbreviations.
>
> device
> A logical or physical entity that performs one or more functions. The actual entity
> described depends on the context of the reference. At the lowest level, device may refer
> to a single hardware component, as in a memory device. At a higher level, it may refer to
> a collection of hardware components that perform a particular function, such as a USB
> interface device. At an even higher level, device may refer to the function performed by
> an entity attached to the USB. Devices may be physical, electrical, addressable, and
> logical.
> When used as a non-specific reference, a USB device is either a hub or a peripheral
> device.
>
> host
> The host computer system where the USB host controller is installed. This includes the
> host hardware platform (CPU, bus, etc.) and the operating system in use.
>
> host controller
> The interface provided to the system to support devices on the USB.
Thanks for the confirmation. This is why we had to "invent" the term
"gadget" to describe the code that runs in the device to try to reduce
the confusion here.
greg k-h