NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: OpenPGP Card (USB) in NetBSD 10.0



Hi Martin,

Thanks for this input. Attached is the output of that command.

BR.-

* Martin Husemann <martin%duskware.de@localhost>:
> On Wed, Nov 27, 2024 at 11:09:22AM +0000, Abu Hussain Al Mukhtar wrote:
> > ugen* at uhub? vendor 0x20a0 product <0x...> flags 1
> > 
> > That is indeed what is needed to get the gpg card functionality up and
> > running, though  unfortunately, it killed the u2f functionality of the
> > device, which is present and working in the generic kernel.
> > Are these functionalities mutually exclusive for one single device on
> > NetBSD? I have no experience with the configuration of custom kernels,
> > so any hint on how can I get both functionalities working at the same
> > time with the same device is greatly appreciated.
> 
> The fido support needs a usbhid device, while the crypto stuff needs a
> usbgen device. The device probably offers two interfaces, and we just
> have to make sure to attach them separately (like we do e.g. for
> JTAG/serial combos in uftdi).
> 
> With a kernel that makes it attach as usbgen, can you show the output
> of usbgen from pkgsrc/sysutils/usbutil for your device? Like:
> 
> 	usbgen -f ugen0 -v -D
> 
> That would probably help to find a patch that allows both modes at the
> same time.
> 
> Martin
Dumping all descriptors
DEVICE descriptor:
bLength=18 bDescriptorType=1 bcdUSB=2.10 bDeviceClass=239 bDeviceSubClass=2
bDeviceProtocol=1 bMaxPacketSize=64
idVendor=0x20a0 idProduct=0x42b2 bcdDevice=107
iManufacturer=1 iProduct=2 iSerialNumber=0 bNumConfigurations=1

Current configuration is number 1

CONFIGURATION descriptor index 0:
bLength=9 bDescriptorType=2 wTotalLength=118 bNumInterface=2
bConfigurationValue=1 iConfiguration=0 bmAttributes=80 bMaxPower=100 mA

  INTERFACE descriptor index 0, alt index 0:
  bLength=9 bDescriptorType=4 bInterfaceNumber=0 bAlternateSetting=0
  bNumEndpoints=2 bInterfaceClass=11 bInterfaceSubClass=0
  bInterfaceProtocol=0 iInterface=4

    ENDPOINT descriptor index 0:
    bLength=7 bDescriptorType=5 bEndpointAddress=1-in
    bmAttributes=2 wMaxPacketSize=64 bInterval=0

    ENDPOINT descriptor index 1:
    bLength=7 bDescriptorType=5 bEndpointAddress=1-out
    bmAttributes=2 wMaxPacketSize=64 bInterval=0

  INTERFACE descriptor index 1, alt index 0:
  bLength=9 bDescriptorType=4 bInterfaceNumber=1 bAlternateSetting=0
  bNumEndpoints=2 bInterfaceClass=3 bInterfaceSubClass=0
  bInterfaceProtocol=0 iInterface=0

    ENDPOINT descriptor index 0:
    bLength=7 bDescriptorType=5 bEndpointAddress=2-out
    bmAttributes=3 wMaxPacketSize=64 bInterval=5

    ENDPOINT descriptor index 1:
    bLength=7 bDescriptorType=5 bEndpointAddress=2-in
    bmAttributes=3 wMaxPacketSize=64 bInterval=5



Home | Main Index | Thread Index | Old Index