Linux-USB Archive on lore.kernel.org
 help / color / Atom feed
* Question :  remote "ILO" setup - keyboard and mouse enumeration 
@ 2020-03-26 20:03 John Donnelly
  2020-03-27  0:57 ` Alan Stern
  0 siblings, 1 reply; 2+ messages in thread
From: John Donnelly @ 2020-03-26 20:03 UTC (permalink / raw)
  To: linux-usb

Hi,

This is 10,000 foot question for a issue I am looking at :

Quite a few servers have a BCM that expose a USB keyboard and mouse when a " iLo client session " is started  that also provides a remote console.

For instance on Bus 01.Port 1: Dev 1, Port 8 there are these devices :

 lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 8: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
        |__ Port 3: Dev 3, If 0, Class=Communications, Driver=cdc_ether, 480M
        |__ Port 3: Dev 3, If 1, Class=CDC Data, Driver=cdc_ether, 480M


When a remote viewer ( iLO ) session is started, two HID appear under Port 8 :


 lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 8: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
        |__ Port 1: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid,480M
        |__ Port 2: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid,480M
        |__ Port 3: Dev 3, If 0, Class=Communications, Driver=cdc_ether, 480M
        |__ Port 3: Dev 3, If 1, Class=CDC Data, Driver=cdc_ether, 480M


Is this device tree showing me the Port 8 is somehow wired to the BCM ?  And the BCM did some sort of operation that causes the xhci_hcd driver to enumerate a new device ?  

The driver :  “ usbhid “ in real life appears to be a built-in component to the kernel - Not a loadable module .  I suspect that is so keyboards always work. 

When the iLO session is terminated the two HID devices disappear . 

If anyone can point me documentation how this works I would appreciate it.  


Thank you for your time. 

JD












^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Question :  remote "ILO" setup - keyboard and mouse enumeration
  2020-03-26 20:03 Question : remote "ILO" setup - keyboard and mouse enumeration John Donnelly
@ 2020-03-27  0:57 ` Alan Stern
  0 siblings, 0 replies; 2+ messages in thread
From: Alan Stern @ 2020-03-27  0:57 UTC (permalink / raw)
  To: John Donnelly; +Cc: linux-usb

On Thu, 26 Mar 2020, John Donnelly wrote:

> Hi,
> 
> This is 10,000 foot question for a issue I am looking at :
> 
> Quite a few servers have a BCM that expose a USB keyboard and mouse
> when a " iLo client session " is started that also provides a remote
> console.
> 
> For instance on Bus 01.Port 1: Dev 1, Port 8 there are these devices :
> 
>  lsusb -t
> /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
> /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
>     |__ Port 8: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
>         |__ Port 3: Dev 3, If 0, Class=Communications, Driver=cdc_ether, 480M
>         |__ Port 3: Dev 3, If 1, Class=CDC Data, Driver=cdc_ether, 480M
> 
> 
> When a remote viewer ( iLO ) session is started, two HID appear under
> Port 8 :
> 
> 
>  lsusb -t
> /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
> /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
>     |__ Port 8: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
>         |__ Port 1: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid,480M
>         |__ Port 2: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid,480M
>         |__ Port 3: Dev 3, If 0, Class=Communications, Driver=cdc_ether, 480M
>         |__ Port 3: Dev 3, If 1, Class=CDC Data, Driver=cdc_ether, 480M
> 
> 
> Is this device tree showing me the Port 8 is somehow wired to the BCM
> ?  And the BCM did some sort of operation that causes the xhci_hcd
> driver to enumerate a new device ?

Yes, it looks that way.  The operation is just turning on a 
connection -- electronically closing a switch.  Same as if you plugged 
in a keyboard and a mouse.

> The driver :  “ usbhid “ in real life appears to be a built-in
> component to the kernel - Not a loadable module .  I suspect that is
> so keyboards always work.

That's a common design decision, but it doesn't have to be that way.  
If you build your own kernel, you can set it up any way you want.

> When the iLO session is terminated the two HID devices disappear . 
> 
> If anyone can point me documentation how this works I would appreciate it.  

You should look though the documentation for the BCM and iLO.  That's 
where you're most likely to find the answers.

Alan Stern


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-26 20:03 Question : remote "ILO" setup - keyboard and mouse enumeration John Donnelly
2020-03-27  0:57 ` Alan Stern

Linux-USB Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-usb/0 linux-usb/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-usb linux-usb/ https://lore.kernel.org/linux-usb \
		linux-usb@vger.kernel.org
	public-inbox-index linux-usb

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-usb


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git