Bug 245273 - [ukbd] [iLO4] [regression] Control and shift modifiers are no longer effective
Summary: [ukbd] [iLO4] [regression] Control and shift modifiers are no longer effective
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: usb (show other bugs)
Version: 12.1-STABLE
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Hans Petter Selasky
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-02 07:11 UTC by Bertrand Petit
Modified: 2020-04-12 14:06 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bertrand Petit 2020-04-02 07:11:42 UTC
This bug report is related to the virtual USB keyboard which is exposed by the iLO4 BMC on HP Proliant servers (system ROM J10, iLO4 version 2.10) when one use the "textcons" command in the IPMI shell. Under 12.1-STABLE (rev 359316) the Shift and Control modifier keys have no effect, they used to correctly operate under 11.3-STABLE (rev 353465). This bug prevents the completion of and upgrade to 12.1, I was forced to rollback to 11.3. The exposed device is described as follows:

ugen3.2: <HP Virtual Keyboard> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (0mA)

  bLength = 0x0012 
  bDescriptorType = 0x0001 
  bcdUSB = 0x0110 
  bDeviceClass = 0x0000  <Probed by interface class>
  bDeviceSubClass = 0x0000 
  bDeviceProtocol = 0x0000 
  bMaxPacketSize0 = 0x0040 
  idVendor = 0x03f0 
  idProduct = 0x7029 
  bcdDevice = 0x0002 
  iManufacturer = 0x0001  <HP >
  iProduct = 0x0002  <Virtual Keyboard >
  iSerialNumber = 0x0000  <no string>
  bNumConfigurations = 0x0001 

 Configuration index 0

    bLength = 0x0009 
    bDescriptorType = 0x0002 
    wTotalLength = 0x003b 
    bNumInterfaces = 0x0002 
    bConfigurationValue = 0x0001 
    iConfiguration = 0x0000  <no string>
    bmAttributes = 0x0040 
    bMaxPower = 0x0000 

    Interface 0
      bLength = 0x0009 
      bDescriptorType = 0x0004 
      bInterfaceNumber = 0x0000 
      bAlternateSetting = 0x0000 
      bNumEndpoints = 0x0001 
      bInterfaceClass = 0x0003  <HID device>
      bInterfaceSubClass = 0x0001 
      bInterfaceProtocol = 0x0001 
      iInterface = 0x0010  <Virtual Keyboard >

      Additional Descriptor

      bLength = 0x09
      bDescriptorType = 0x21
      bDescriptorSubType = 0x01
       RAW dump: 
       0x00 | 0x09, 0x21, 0x01, 0x01, 0x21, 0x01, 0x22, 0x41, 
       0x08 | 0x00

     Endpoint 0
        bLength = 0x0007 
        bDescriptorType = 0x0005 
        bEndpointAddress = 0x0081  <IN>
        bmAttributes = 0x0003  <INTERRUPT>
        wMaxPacketSize = 0x0008 
        bInterval = 0x000a 
        bRefresh = 0x0000 
        bSynchAddress = 0x0000 


    Interface 1
      bLength = 0x0009 
      bDescriptorType = 0x0004 
      bInterfaceNumber = 0x0001 
      bAlternateSetting = 0x0000 
      bNumEndpoints = 0x0001 
      bInterfaceClass = 0x0003  <HID device>
      bInterfaceSubClass = 0x0001 
      bInterfaceProtocol = 0x0002 
      iInterface = 0x0020  <Virtual Mouse>

      Additional Descriptor

      bLength = 0x09
      bDescriptorType = 0x21
      bDescriptorSubType = 0x01
       RAW dump: 
       0x00 | 0x09, 0x21, 0x01, 0x01, 0x21, 0x01, 0x22, 0x3c, 
       0x08 | 0x00

     Endpoint 0
        bLength = 0x0007 
        bDescriptorType = 0x0005 
        bEndpointAddress = 0x0082  <IN>
        bmAttributes = 0x0003  <INTERRUPT>
        wMaxPacketSize = 0x0005 
        bInterval = 0x000a 
        bRefresh = 0x0000 
        bSynchAddress = 0x0000
Comment 1 Hans Petter Selasky freebsd_committer freebsd_triage 2020-04-02 13:00:57 UTC
Can you check if this issue is solved by:

https://svnweb.freebsd.org/changeset/base/359558

--HPS
Comment 2 Bertrand Petit 2020-04-04 17:00:17 UTC
I did compile a kernel using svn rev 359586, placed it on a memstick image to test it but I am now blocked but a loader bug. I'll keep you informed of the outcome.
Comment 3 Bertrand Petit 2020-04-12 14:06:02 UTC
Thank you, the proposed patch do indeed fix the reported bug.