Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Aug 2025 17:30:24 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        Jordan Gordeev <jgopensource@proton.me>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: Example  context needing use of hw.usb.usbhid.enable=0 : serial console keyboard input under Parallels  (aarch64) [reproduces again]
Message-ID:  <67BA742F-CEBA-4AB3-B088-22771C20FF8A@yahoo.com>
In-Reply-To: <A5B712C4-7ECE-45BC-806C-E7B2532E1F8C@yahoo.com>
References:  <BBB8EBC8-2A38-468D-B968-FE8C4BDA6DCD.ref@yahoo.com> <BBB8EBC8-2A38-468D-B968-FE8C4BDA6DCD@yahoo.com> <rB59TnyXd_btyd0Lp5E63bTpiSZ9eY-JIJ0Nod63UBUch6gBiumHvc5VL2s1UhLsGOecmBUv8bAu2bv2VoWkPDkC3phbRYeRjAUl-cROagk=@proton.me> <A5B712C4-7ECE-45BC-806C-E7B2532E1F8C@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Aug 10, 2025, at 10:32, Mark Millard <marklmi@yahoo.com> wrote:

> On Aug 10, 2025, at 07:51, Jordan Gordeev <jgopensource@proton.me> =
wrote:
>=20
>> On Sunday, 10 August 2025 at 12:16, Mark Millard <marklmi@yahoo.com> =
wrote:
>>=20
>>> . . .
>>=20
>> When usbhid is enabled USB keyboards should appear as hkbd(4) =
devices. Do you see any lines mentioning hkbd in dmesg? If not, try =
adding "hw.hid.hkbd.debug=3D100" to /boot/loader.conf in the hope that =
hkbd will produce some debug messages. Try also loading the hkbd module =
and any modules on which it depends via loader.conf because that might =
affect the outcome.
>>=20
>> When reporting problems such as this, you should provide the version =
number of FreeBSD (exact commit ID), version number of Parallels, =
whether you have any VM tools installed for better integration between =
FreeBSD and Parallels, and because this is a USB problem, the output of =
"usbconfig -v" (at least the part describing the keyboard).
>=20
> I'm now unable to reproduce the issue.
>=20
> . . .
>=20
> I'll report more if I get the problem again.

After the updates I'm back to the "serial console"
is not getting/taking keyboard input (without
hw.usb.usbhid.enable=3D0 involved).

I'll note that input at the earlier EFI loader
stage worked. This is later at the login prompt,
so when the FreeBSD kernel would be involved.

# dmesg -a | grep -e eybo -e kbd
kbd0 at kbdmux0
ugen1.3: <Parallels Virtual Keyboard> at usbus1
usbhid2: <Parallels Virtual Keyboard, class 0/0, rev 3.00/1.10, addr 2> =
on usbus1
hkbd0: <Parallels Virtual Keyboard> on hidbus2
kbd1 at hkbd0
usbhid3: <Parallels Virtual Keyboard, class 0/0, rev 3.00/1.10, addr 2> =
on usbus1
hkbd1: <Parallels Virtual Keyboard> on hidbus3
kbd2 at hkbd1
hcons0: <Parallels Virtual Keyboard Consumer Control> on hidbus3

# kldstat
Id Refs Address                Size Name
 1   27 0xffff000000000000  1428858 kernel
 2    1 0xffff000195200000    22000 hcons.ko
 3    3 0xffff000195222000    24000 hidmap.ko
 4    1 0xffff000195246000    22000 hms.ko
 5    1 0xffff000195268000    22000 hsctrl.ko
 6    1 0xffff00019528a000    23000 virtio_balloon.ko
 7    1 0xffff0001952ad000    22000 mac_ntpd.ko

# kldload hkbd.ko
kldload: can't load hkbd.ko: module already loaded or in kernel

# uname -apKU
FreeBSD aarch64-main-pbase 15.0-PRERELEASE FreeBSD 15.0-PRERELEASE =
main-n279519-7a9834041c91 GENERIC-NODEBUG arm64 aarch64 1500059 1500059

That is a pkgbase FreeBSD installation.

Parallels Desktop 20 for Mac Pro Edition Versin 20.4.1 (55996)
No VM tools installed. (Only used via the basic console and
ssh.)

# usbconfig -l
ugen1.1: <XHCI root HUB (0x1033)> at usbus1, cfg=3D0 md=3DHOST spd=3DSUPER=
 (5.0Gbps) pwr=3DSAVE (0mA)
ugen0.1: <EHCI root HUB Intel> at usbus0, cfg=3D0 md=3DHOST spd=3DHIGH =
(480Mbps) pwr=3DSAVE (0mA)
ugen1.2: <Virtual Mouse PARALLELS> at usbus1, cfg=3D0 md=3DHOST =
spd=3DSUPER (5.0Gbps) pwr=3DON (0mA)
ugen1.3: <Virtual Keyboard PARALLELS> at usbus1, cfg=3D0 md=3DHOST =
spd=3DSUPER (5.0Gbps) pwr=3DON (0mA)

# usbconfig -v
. . .

ugen1.3: <Virtual Keyboard PARALLELS> at usbus1, cfg=3D0 md=3DHOST =
spd=3DSUPER (5.0Gbps) pwr=3DON (0mA)
ugen1.3.0: usbhid2: <Parallels Virtual Keyboard, class 0/0, rev =
3.00/1.10, addr 2>
ugen1.3.1: usbhid3: <Parallels Virtual Keyboard, class 0/0, rev =
3.00/1.10, addr 2>

  bLength =3D 0x0012=20
  bDescriptorType =3D 0x0001=20
  bcdUSB =3D 0x0300=20
  bDeviceClass =3D 0x0000  <Probed by interface class>
  bDeviceSubClass =3D 0x0000=20
  bDeviceProtocol =3D 0x0000=20
  bMaxPacketSize0 =3D 0x0009=20
  idVendor =3D 0x203a=20
  idProduct =3D 0xfffb=20
  bcdDevice =3D 0x0110=20
  iManufacturer =3D 0x0001  <Parallels>
  iProduct =3D 0x0002  <Virtual Keyboard>
  iSerialNumber =3D 0x0003  <KBD1.1>
  bNumConfigurations =3D 0x0001=20


 Configuration index 0

    bLength =3D 0x0009=20
    bDescriptorType =3D 0x0002=20
    wTotalLength =3D 0x0047=20
    bNumInterfaces =3D 0x0002=20
    bConfigurationValue =3D 0x0001=20
    iConfiguration =3D 0x0001  <Parallels>
    bmAttributes =3D 0x00e0=20
    bMaxPower =3D 0x0000=20

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

      Additional Descriptor

      bLength =3D 0x09
      bDescriptorType =3D 0x21
      bDescriptorSubType =3D 0x01
       RAW dump:=20
       0x00 | 0x09, 0x21, 0x01, 0x10, 0x00, 0x01, 0x22, 0x3a,=20
       0x08 | 0x00

     Endpoint 0
        bLength =3D 0x0007=20
        bDescriptorType =3D 0x0005=20
        bEndpointAddress =3D 0x0081  <IN>
        bmAttributes =3D 0x0003  <INTERRUPT>
        wMaxPacketSize =3D 0x0040=20
        bInterval =3D 0x0004=20
        bRefresh =3D 0x0000=20
        bSynchAddress =3D 0x0000=20

      Additional Descriptor

      bLength =3D 0x06
      bDescriptorType =3D 0x30
      bDescriptorSubType =3D 0x00
       RAW dump:=20
       0x00 | 0x06, 0x30, 0x00, 0x00, 0x40, 0x00



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

      Additional Descriptor

      bLength =3D 0x09
      bDescriptorType =3D 0x21
      bDescriptorSubType =3D 0x01
       RAW dump:=20
       0x00 | 0x09, 0x21, 0x01, 0x10, 0x00, 0x01, 0x22, 0xa0,=20
       0x08 | 0x00

     Endpoint 0
        bLength =3D 0x0007=20
        bDescriptorType =3D 0x0005=20
        bEndpointAddress =3D 0x0082  <IN>
        bmAttributes =3D 0x0003  <INTERRUPT>
        wMaxPacketSize =3D 0x0040=20
        bInterval =3D 0x0004=20
        bRefresh =3D 0x0000=20
        bSynchAddress =3D 0x0000=20

      Additional Descriptor

      bLength =3D 0x06
      bDescriptorType =3D 0x30
      bDescriptorSubType =3D 0x00
       RAW dump:=20
       0x00 | 0x06, 0x30, 0x00, 0x00, 0x40, 0x00



=3D=3D=3D
Mark Millard
marklmi at yahoo.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67BA742F-CEBA-4AB3-B088-22771C20FF8A>