Tim,
OK, here we go. I think there's definitely something missing. I ran the 
usbms1.d command redirecting to a text file and it was empty. I've attached the 
other two output files but I'll outline here what happened because in 2 cases, 
there was an interesting line in the terminal window that did not get captured 
in the redirect to the text file.

1. For das.sh, I see the following line in the terminal window before the 
script starts generating output (that appears in the attached file):
    mdb: failed to dereference symbol: unknown symbol name
See the rest of the output in the attached file das.sh.output.txt.

2. For usbms1.d I see the following in the terminal window and there's nothing 
in the text file (from adding "> output.txt" to the command)
     dtrace: failed to compile script ./usbms1.d: line 5: probe description 
fbt::usbms_open:return does not match any probes
Again, there is no output file because it was empty.

3. For echo '::prtusb -tv' | mdb -k,  see the attached file 
echoprtusb.output.txt.
-- 
This message posted from opensolaris.org
-------------- next part --------------
hidparser_get_usage_list_in_order:      pushq  %rbp
hidparser_get_usage_list_in_order+1:    movq   %rsp,%rbp
hidparser_get_usage_list_in_order+4:    subq   $0x20,%rsp
hidparser_get_usage_list_in_order+8:    movq   %rdi,-0x8(%rbp)
hidparser_get_usage_list_in_order+0xc:  movq   %rsi,-0x10(%rbp)
hidparser_get_usage_list_in_order+0x10: movq   %rdx,-0x18(%rbp)
hidparser_get_usage_list_in_order+0x14: movq   %rcx,-0x20(%rbp)
hidparser_get_usage_list_in_order+0x18: testq  %rdi,%rdi
hidparser_get_usage_list_in_order+0x1b: 
je     +0x21    <hidparser_get_usage_list_in_order+0x3e>
hidparser_get_usage_list_in_order+0x1d: cmpq   $0x0,(%rdi)
hidparser_get_usage_list_in_order+0x21: 
je     +0x1b    <hidparser_get_usage_list_in_order+0x3e>
hidparser_get_usage_list_in_order+0x23: xorl   %eax,%eax
hidparser_get_usage_list_in_order+0x25: movq   %rcx,%r8
hidparser_get_usage_list_in_order+0x28: movl   %eax,0x8(%r8)
hidparser_get_usage_list_in_order+0x2c: movq   (%rdi),%rdi
hidparser_get_usage_list_in_order+0x2f: movl   %esi,%eax
hidparser_get_usage_list_in_order+0x31: movl   %edx,%ecx
hidparser_get_usage_list_in_order+0x33: xorl   %esi,%esi
hidparser_get_usage_list_in_order+0x35: movl   %eax,%edx
hidparser_get_usage_list_in_order+0x37: 
call   +0xc     <hidparser_get_usage_list_in_order_internal>
hidparser_get_usage_list_in_order+0x3c: 
jmp    +0x5     <hidparser_get_usage_list_in_order+0x43>
hidparser_get_usage_list_in_order+0x3e: movl   $0x1,%eax
hidparser_get_usage_list_in_order+0x43: leave  
hidparser_get_usage_list_in_order+0x44: ret    
hidparser_get_usage_list_in_order_internal:     pushq  %rbp
hidparser_get_usage_list_in_order_internal+1:   movq   %rsp,%rbp
hidparser_get_usage_list_in_order_internal+4:   subq   $0x28,%rsp
hidparser_get_usage_list_in_order_internal+8:   movq   %rdi,-0x8(%rbp)
hidparser_get_usage_list_in_order_internal+0xc: movq   %rsi,-0x10(%rbp)
hidparser_get_usage_list_in_order_internal+0x10:movq   %rdx,-0x18(%rbp)
hidparser_get_usage_list_in_order_internal+0x14:movq   %rcx,-0x20(%rbp)
hidparser_get_usage_list_in_order_internal+0x18:movq   %r8,-0x28(%rbp)
hidparser_get_usage_list_in_order_internal+0x1c:pushq  %rbx
hidparser_get_usage_list_in_order_internal+0x1d:pushq  %r12
hidparser_get_usage_list_in_order_internal+0x1f:pushq  %r13
hidparser_get_usage_list_in_order_internal+0x21:pushq  %r14
hidparser_get_usage_list_in_order_internal+0x23:pushq  %r15
hidparser_get_usage_list_in_order_internal+0x25:subq   $0x90,%rsp
hidparser_get_usage_list_in_order_internal+0x2c:movq   %rdi,%r13
hidparser_get_usage_list_in_order_internal+0x2f:testq  %rdi,%rdi
hidparser_get_usage_list_in_order_internal+0x32:
je     +0x400   <hidparser_get_usage_list_in_order_internal+0x438>
hidparser_get_usage_list_in_order_internal+0x38:movq   %r8,%r14
hidparser_get_usage_list_in_order_internal+0x3b:addq   $0xc,%r8
hidparser_get_usage_list_in_order_internal+0x3f:movq   %r8,-0xa8(%rbp)
hidparser_get_usage_list_in_order_internal+0x46:movl   %edx,-0xe0(%rbp)
hidparser_get_usage_list_in_order_internal+0x4c:movl   %ecx,-0xdc(%rbp)
hidparser_get_usage_list_in_order_internal+0x52:movl   %esi,-0xd8(%rbp)
hidparser_get_usage_list_in_order_internal+0x58:movl   0x0(%r13),%eax
hidparser_get_usage_list_in_order_internal+0x5c:cmpl   $0xa0,%eax
hidparser_get_usage_list_in_order_internal+0x61:
je     +0x353   <hidparser_get_usage_list_in_order_internal+0x3ba>
hidparser_get_usage_list_in_order_internal+0x67:cmpl   -0xdc(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x6d:
jne    +0x39a   <hidparser_get_usage_list_in_order_internal+0x40d>
hidparser_get_usage_list_in_order_internal+0x73:movq   0x18(%r13),%r12
hidparser_get_usage_list_in_order_internal+0x77:xorl   %eax,%eax
hidparser_get_usage_list_in_order_internal+0x79:testq  %r12,%r12
hidparser_get_usage_list_in_order_internal+0x7c:movl   %eax,-0xc4(%rbp)
hidparser_get_usage_list_in_order_internal+0x82:
je     +0x2d2   <hidparser_get_usage_list_in_order_internal+0x35a>
hidparser_get_usage_list_in_order_internal+0x88:xorl   %r15d,%r15d
hidparser_get_usage_list_in_order_internal+0x8b:movl   $0x0,-0xc0(%rbp)
hidparser_get_usage_list_in_order_internal+0x95:movl   $0x0,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x9f:movl   $0x0,-0xb0(%rbp)
hidparser_get_usage_list_in_order_internal+0xa9:movl   $0x0,-0xb4(%rbp)
hidparser_get_usage_list_in_order_internal+0xb3:movl   $0x0,-0xb8(%rbp)
hidparser_get_usage_list_in_order_internal+0xbd:movl   (%r12),%eax
hidparser_get_usage_list_in_order_internal+0xc1:cmpl   $0x8,%eax
hidparser_get_usage_list_in_order_internal+0xc4:
jne    +0x3d    <hidparser_get_usage_list_in_order_internal+0x103>
hidparser_get_usage_list_in_order_internal+0xc6:cmpl   $0x14,%r15d
hidparser_get_usage_list_in_order_internal+0xca:
jge    +0x34c   <hidparser_get_usage_list_in_order_internal+0x41c>
hidparser_get_usage_list_in_order_internal+0xd0:movq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0xd3:
call   +0x1fa8  <hidparser_find_unsigned_val>
hidparser_get_usage_list_in_order_internal+0xd8:movl   %eax,%ebx
hidparser_get_usage_list_in_order_internal+0xda:testl  %ebx,%ebx
hidparser_get_usage_list_in_order_internal+0xdc:
je     +0xbb    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0xe2:movl   -0xc0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0xe8:movzbl %al,%ecx
hidparser_get_usage_list_in_order_internal+0xeb:movl   %ebx,-0xa0(%rbp,%rcx,4)
hidparser_get_usage_list_in_order_internal+0xf2:incl   %eax
hidparser_get_usage_list_in_order_internal+0xf4:movl   %eax,-0xc0(%rbp)
hidparser_get_usage_list_in_order_internal+0xfa:movzbl %al,%r15d
hidparser_get_usage_list_in_order_internal+0xfe:
jmp    +0x9a    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x103:       cmpl   $0x18,%eax
hidparser_get_usage_list_in_order_internal+0x106:       
jne    +0x1a    <hidparser_get_usage_list_in_order_internal+0x122>
hidparser_get_usage_list_in_order_internal+0x108:       movq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0x10b:       
call   +0x1f70  <hidparser_find_unsigned_val>
hidparser_get_usage_list_in_order_internal+0x110:       movl   %eax,-0xd4(%rbp)
hidparser_get_usage_list_in_order_internal+0x116:       movl   $0x1,-0xb4(%rbp)
hidparser_get_usage_list_in_order_internal+0x120:       
jmp    +0x7b    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x122:       cmpl   $0x28,%eax
hidparser_get_usage_list_in_order_internal+0x125:       
jne    +0x1a    <hidparser_get_usage_list_in_order_internal+0x141>
hidparser_get_usage_list_in_order_internal+0x127:       movq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0x12a:       
call   +0x1f51  <hidparser_find_unsigned_val>
hidparser_get_usage_list_in_order_internal+0x12f:       movl   %eax,-0xc8(%rbp)
hidparser_get_usage_list_in_order_internal+0x135:       movl   $0x1,-0xb8(%rbp)
hidparser_get_usage_list_in_order_internal+0x13f:       
jmp    +0x5c    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x141:       cmpl   $0x84,%eax
hidparser_get_usage_list_in_order_internal+0x146:       
jne    +0x3f    <hidparser_get_usage_list_in_order_internal+0x187>
hidparser_get_usage_list_in_order_internal+0x148:       movq   0x8(%r12),%r8
hidparser_get_usage_list_in_order_internal+0x14d:       movsbl (%r8),%eax
hidparser_get_usage_list_in_order_internal+0x151:       cmpl   -0xe0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x157:       
je     +0x17    <hidparser_get_usage_list_in_order_internal+0x170>
hidparser_get_usage_list_in_order_internal+0x159:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x15e:       movl   $0x1,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x168:       movl   %eax,-0xc4(%rbp)
hidparser_get_usage_list_in_order_internal+0x16e:       
jmp    +0x2d    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x170:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x175:       movl   $0x1,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x17f:       movl   %eax,-0xb0(%rbp)
hidparser_get_usage_list_in_order_internal+0x185:       
jmp    +0x16    <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x187:       cmpl   $0xa8,%eax
hidparser_get_usage_list_in_order_internal+0x18c:       
jne    +0xf     <hidparser_get_usage_list_in_order_internal+0x19d>
hidparser_get_usage_list_in_order_internal+0x18e:       movq   0x18(%r12),%r12
hidparser_get_usage_list_in_order_internal+0x193:       cmpl   $0xa8,(%r12)
hidparser_get_usage_list_in_order_internal+0x19b:       
jne    -0xf     <hidparser_get_usage_list_in_order_internal+0x18e>
hidparser_get_usage_list_in_order_internal+0x19d:       movq   0x18(%r12),%r12
hidparser_get_usage_list_in_order_internal+0x1a2:       testq  %r12,%r12
hidparser_get_usage_list_in_order_internal+0x1a5:       
jne    -0xee    <hidparser_get_usage_list_in_order_internal+0xbd>
hidparser_get_usage_list_in_order_internal+0x1ab:       cmpb   $0x0,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x1b2:       
je     +0xd     <hidparser_get_usage_list_in_order_internal+0x1c1>
hidparser_get_usage_list_in_order_internal+0x1b4:       cmpb   $0x0,-0xb0(%rbp)
hidparser_get_usage_list_in_order_internal+0x1bb:       
je     +0x199   <hidparser_get_usage_list_in_order_internal+0x35a>
hidparser_get_usage_list_in_order_internal+0x1c1:       testl  %r15d,%r15d
hidparser_get_usage_list_in_order_internal+0x1c4:       
jle    +0xcc    <hidparser_get_usage_list_in_order_internal+0x296>
hidparser_get_usage_list_in_order_internal+0x1ca:       decl   %r15d
hidparser_get_usage_list_in_order_internal+0x1cd:       movl   %r15d,-0xb0(%rbp)
hidparser_get_usage_list_in_order_internal+0x1d4:       movzbl -0xc0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x1db:       movl   %eax,-0xbc(%rbp)
hidparser_get_usage_list_in_order_internal+0x1e1:       leaq   -0xa0(%rbp),%r12
hidparser_get_usage_list_in_order_internal+0x1e8:       movl   $0x0,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x1f2:       prefetcht0 0xe0(%r12)
hidparser_get_usage_list_in_order_internal+0x1fb:       movl   0x8(%r14),%eax
hidparser_get_usage_list_in_order_internal+0x1ff:       cmpl   $0x14,%eax
hidparser_get_usage_list_in_order_internal+0x202:       
jae    +0x21b   <hidparser_get_usage_list_in_order_internal+0x423>
hidparser_get_usage_list_in_order_internal+0x208:       leal   0x1(%rax),%ecx
hidparser_get_usage_list_in_order_internal+0x20b:       movl   %ecx,0x8(%r14)
hidparser_get_usage_list_in_order_internal+0x20f:       movslq %eax,%r15
hidparser_get_usage_list_in_order_internal+0x212:       shlq   $0x5,%r15
hidparser_get_usage_list_in_order_internal+0x216:       movq   -0xa8(%rbp),%rdi
hidparser_get_usage_list_in_order_internal+0x21d:       addq   %r15,%rdi
hidparser_get_usage_list_in_order_internal+0x220:       movq   %rdi,-0xd0(%rbp)
hidparser_get_usage_list_in_order_internal+0x227:       movq   0x18(%r13),%rsi
hidparser_get_usage_list_in_order_internal+0x22b:       
call   +0x220   <hidparser_fill_usage_info>
hidparser_get_usage_list_in_order_internal+0x230:       
movl   0x24(%r14,%r15),%eax
hidparser_get_usage_list_in_order_internal+0x235:       xorl   %edx,%edx
hidparser_get_usage_list_in_order_internal+0x237:       movl   -0xbc(%rbp),%ecx
hidparser_get_usage_list_in_order_internal+0x23d:       divl   %ecx
hidparser_get_usage_list_in_order_internal+0x23f:       
movl   %eax,0x24(%r14,%r15)
hidparser_get_usage_list_in_order_internal+0x244:       movl   -0xd8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x24a:       
movl   %eax,0x18(%r14,%r15)
hidparser_get_usage_list_in_order_internal+0x24f:       movl   (%r12),%eax
hidparser_get_usage_list_in_order_internal+0x253:       
movw   %ax,0xe(%r14,%r15)
hidparser_get_usage_list_in_order_internal+0x259:       shrl   $0x10,%eax
hidparser_get_usage_list_in_order_internal+0x25c:       
je     +0x6     <hidparser_get_usage_list_in_order_internal+0x264>
hidparser_get_usage_list_in_order_internal+0x25e:       
movw   %ax,0xc(%r14,%r15)
hidparser_get_usage_list_in_order_internal+0x264:       movl   -0xe0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x26a:       movl   %eax,(%r14)
hidparser_get_usage_list_in_order_internal+0x26d:       addq   $0x4,%r12
hidparser_get_usage_list_in_order_internal+0x271:       movl   -0xac(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x277:       incl   %eax
hidparser_get_usage_list_in_order_internal+0x279:       movl   %eax,-0xac(%rbp)
hidparser_get_usage_list_in_order_internal+0x27f:       movl   $0x1,%ecx
hidparser_get_usage_list_in_order_internal+0x284:       cmpl   -0xb0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x28a:       movl   %ecx,-0xc4(%rbp)
hidparser_get_usage_list_in_order_internal+0x290:       
jle    -0xa4    <hidparser_get_usage_list_in_order_internal+0x1f2>
hidparser_get_usage_list_in_order_internal+0x296:       cmpb   $0x0,-0xb4(%rbp)
hidparser_get_usage_list_in_order_internal+0x29d:       
je     +0xb7    <hidparser_get_usage_list_in_order_internal+0x35a>
hidparser_get_usage_list_in_order_internal+0x2a3:       cmpb   $0x0,-0xb8(%rbp)
hidparser_get_usage_list_in_order_internal+0x2aa:       
je     +0xaa    <hidparser_get_usage_list_in_order_internal+0x35a>
hidparser_get_usage_list_in_order_internal+0x2b0:       movl   0x8(%r14),%eax
hidparser_get_usage_list_in_order_internal+0x2b4:       cmpl   $0x14,%eax
hidparser_get_usage_list_in_order_internal+0x2b7:       
jae    +0x16d   <hidparser_get_usage_list_in_order_internal+0x42a>
hidparser_get_usage_list_in_order_internal+0x2bd:       cmpb   $0x0,-0xc0(%rbp)
hidparser_get_usage_list_in_order_internal+0x2c4:       
je     +0x1f    <hidparser_get_usage_list_in_order_internal+0x2e5>
hidparser_get_usage_list_in_order_internal+0x2c6:       movzwl -0xd4(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x2cd:       movq   -0xd0(%rbp),%r8
hidparser_get_usage_list_in_order_internal+0x2d4:       movl   %eax,0x4(%r8)
hidparser_get_usage_list_in_order_internal+0x2d8:       movzwl -0xc8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x2df:       movl   %eax,0x8(%r8)
hidparser_get_usage_list_in_order_internal+0x2e3:       
jmp    +0x5f    <hidparser_get_usage_list_in_order_internal+0x344>
hidparser_get_usage_list_in_order_internal+0x2e5:       leal   0x1(%rax),%ecx
hidparser_get_usage_list_in_order_internal+0x2e8:       movl   %ecx,0x8(%r14)
hidparser_get_usage_list_in_order_internal+0x2ec:       movslq %eax,%r12
hidparser_get_usage_list_in_order_internal+0x2ef:       shlq   $0x5,%r12
hidparser_get_usage_list_in_order_internal+0x2f3:       movq   -0xa8(%rbp),%rdi
hidparser_get_usage_list_in_order_internal+0x2fa:       addq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0x2fd:       movq   %rdi,-0xd0(%rbp)
hidparser_get_usage_list_in_order_internal+0x304:       movq   0x18(%r13),%rsi
hidparser_get_usage_list_in_order_internal+0x308:       
call   +0x143   <hidparser_fill_usage_info>
hidparser_get_usage_list_in_order_internal+0x30d:       movl   -0xd8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x313:       
movl   %eax,0x18(%r14,%r12)
hidparser_get_usage_list_in_order_internal+0x318:       movzwl -0xd4(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x31f:       
movl   %eax,0x10(%r14,%r12)
hidparser_get_usage_list_in_order_internal+0x324:       movzwl -0xc8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x32b:       
movl   %eax,0x14(%r14,%r12)
hidparser_get_usage_list_in_order_internal+0x330:       movl   -0xe0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x336:       movl   %eax,(%r14)
hidparser_get_usage_list_in_order_internal+0x339:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x33e:       movl   %eax,-0xc4(%rbp)
hidparser_get_usage_list_in_order_internal+0x344:       movl   -0xc8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x34a:       shrl   $0x10,%eax
hidparser_get_usage_list_in_order_internal+0x34d:       
je     +0xb     <hidparser_get_usage_list_in_order_internal+0x35a>
hidparser_get_usage_list_in_order_internal+0x34f:       movq   -0xd0(%rbp),%r8
hidparser_get_usage_list_in_order_internal+0x356:       movw   %ax,(%r8)
hidparser_get_usage_list_in_order_internal+0x35a:       cmpb   $0x0,-0xc4(%rbp)
hidparser_get_usage_list_in_order_internal+0x361:       
jne    +0xa6    <hidparser_get_usage_list_in_order_internal+0x40d>
hidparser_get_usage_list_in_order_internal+0x367:       movl   0x8(%r14),%eax
hidparser_get_usage_list_in_order_internal+0x36b:       cmpl   $0x14,%eax
hidparser_get_usage_list_in_order_internal+0x36e:       
jae    +0xbd    <hidparser_get_usage_list_in_order_internal+0x431>
hidparser_get_usage_list_in_order_internal+0x374:       leal   0x1(%rax),%ecx
hidparser_get_usage_list_in_order_internal+0x377:       movl   %ecx,0x8(%r14)
hidparser_get_usage_list_in_order_internal+0x37b:       movslq %eax,%r12
hidparser_get_usage_list_in_order_internal+0x37e:       shlq   $0x5,%r12
hidparser_get_usage_list_in_order_internal+0x382:       movq   -0xa8(%rbp),%rdi
hidparser_get_usage_list_in_order_internal+0x389:       addq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0x38c:       movq   %rdi,-0xd0(%rbp)
hidparser_get_usage_list_in_order_internal+0x393:       movq   0x18(%r13),%rsi
hidparser_get_usage_list_in_order_internal+0x397:       
call   +0xb4    <hidparser_fill_usage_info>
hidparser_get_usage_list_in_order_internal+0x39c:       movl   -0xd8(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x3a2:       
movl   %eax,0x18(%r14,%r12)
hidparser_get_usage_list_in_order_internal+0x3a7:       xorl   %eax,%eax
hidparser_get_usage_list_in_order_internal+0x3a9:       
movw   %ax,0xe(%r14,%r12)
hidparser_get_usage_list_in_order_internal+0x3af:       movl   -0xe0(%rbp),%eax
hidparser_get_usage_list_in_order_internal+0x3b5:       movl   %eax,(%r14)
hidparser_get_usage_list_in_order_internal+0x3b8:       
jmp    +0x53    <hidparser_get_usage_list_in_order_internal+0x40d>
hidparser_get_usage_list_in_order_internal+0x3ba:       movq   0x18(%r13),%r12
hidparser_get_usage_list_in_order_internal+0x3be:       xorl   %eax,%eax
hidparser_get_usage_list_in_order_internal+0x3c0:       testq  %r12,%r12
hidparser_get_usage_list_in_order_internal+0x3c3:       
je     +0x20    <hidparser_get_usage_list_in_order_internal+0x3e5>
hidparser_get_usage_list_in_order_internal+0x3c5:       cmpl   $0x8,(%r12)
hidparser_get_usage_list_in_order_internal+0x3ca:       
jne    +0xf     <hidparser_get_usage_list_in_order_internal+0x3db>
hidparser_get_usage_list_in_order_internal+0x3cc:       movq   %r12,%rdi
hidparser_get_usage_list_in_order_internal+0x3cf:       
call   +0x1cac  <hidparser_find_unsigned_val>
hidparser_get_usage_list_in_order_internal+0x3d4:       movl   %eax,%ebx
hidparser_get_usage_list_in_order_internal+0x3d6:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x3db:       movq   0x18(%r12),%r12
hidparser_get_usage_list_in_order_internal+0x3e0:       testq  %r12,%r12
hidparser_get_usage_list_in_order_internal+0x3e3:       
jne    -0x20    <hidparser_get_usage_list_in_order_internal+0x3c5>
hidparser_get_usage_list_in_order_internal+0x3e5:       testb  %al,%al
hidparser_get_usage_list_in_order_internal+0x3e7:       movl   $0x0,%eax
hidparser_get_usage_list_in_order_internal+0x3ec:       cmovl.e %eax,%ebx
hidparser_get_usage_list_in_order_internal+0x3ef:       movq   0x20(%r13),%rdi
hidparser_get_usage_list_in_order_internal+0x3f3:       movl   %ebx,%esi
hidparser_get_usage_list_in_order_internal+0x3f5:       movl   -0xe0(%rbp),%edx
hidparser_get_usage_list_in_order_internal+0x3fb:       movl   -0xdc(%rbp),%ecx
hidparser_get_usage_list_in_order_internal+0x401:       movq   %r14,%r8
hidparser_get_usage_list_in_order_internal+0x404:       
call   -0x409   <hidparser_get_usage_list_in_order_internal>
hidparser_get_usage_list_in_order_internal+0x409:       testl  %eax,%eax
hidparser_get_usage_list_in_order_internal+0x40b:       
jne    +0x2d    <hidparser_get_usage_list_in_order_internal+0x43a>
hidparser_get_usage_list_in_order_internal+0x40d:       movq   0x28(%r13),%r13
hidparser_get_usage_list_in_order_internal+0x411:       testq  %r13,%r13
hidparser_get_usage_list_in_order_internal+0x414:       
jne    -0x3c2   <hidparser_get_usage_list_in_order_internal+0x58>
hidparser_get_usage_list_in_order_internal+0x41a:       
jmp    +0x1c    <hidparser_get_usage_list_in_order_internal+0x438>
hidparser_get_usage_list_in_order_internal+0x41c:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x421:       
jmp    +0x17    <hidparser_get_usage_list_in_order_internal+0x43a>
hidparser_get_usage_list_in_order_internal+0x423:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x428:       
jmp    +0x10    <hidparser_get_usage_list_in_order_internal+0x43a>
hidparser_get_usage_list_in_order_internal+0x42a:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x42f:       
jmp    +0x9     <hidparser_get_usage_list_in_order_internal+0x43a>
hidparser_get_usage_list_in_order_internal+0x431:       movl   $0x1,%eax
hidparser_get_usage_list_in_order_internal+0x436:       
jmp    +0x2     <hidparser_get_usage_list_in_order_internal+0x43a>
hidparser_get_usage_list_in_order_internal+0x438:       xorl   %eax,%eax
hidparser_get_usage_list_in_order_internal+0x43a:       addq   $0x90,%rsp
hidparser_get_usage_list_in_order_internal+0x441:       popq   %r15
hidparser_get_usage_list_in_order_internal+0x443:       popq   %r14
hidparser_get_usage_list_in_order_internal+0x445:       popq   %r13
hidparser_get_usage_list_in_order_internal+0x447:       popq   %r12
hidparser_get_usage_list_in_order_internal+0x449:       popq   %rbx
hidparser_get_usage_list_in_order_internal+0x44a:       leave  
hidparser_get_usage_list_in_order_internal+0x44b:       ret    
hidparser_get_main_item_data_descr:     pushq  %rbp
hidparser_get_main_item_data_descr+1:   movq   %rsp,%rbp
hidparser_get_main_item_data_descr+4:   subq   $0x30,%rsp
hidparser_get_main_item_data_descr+8:   movq   %rdi,-0x8(%rbp)
hidparser_get_main_item_data_descr+0xc: movq   %rsi,-0x10(%rbp)
hidparser_get_main_item_data_descr+0x10:movq   %rdx,-0x18(%rbp)
hidparser_get_main_item_data_descr+0x14:movq   %rcx,-0x20(%rbp)
hidparser_get_main_item_data_descr+0x18:movq   %r8,-0x28(%rbp)
hidparser_get_main_item_data_descr+0x1c:movq   %r9,-0x30(%rbp)
hidparser_get_main_item_data_descr+0x20:movq   (%rdi),%rdi
hidparser_get_main_item_data_descr+0x23:
call   +0x10    <hidparser_get_main_item_data_descr_main>
hidparser_get_main_item_data_descr+0x28:leave  
hidparser_get_main_item_data_descr+0x29:ret    
hidparser_get_usage_attribute:  pushq  %rbp
hidparser_get_usage_attribute+1:movq   %rsp,%rbp
hidparser_get_usage_attribute+4:subq   $0x30,%rsp
hidparser_get_usage_attribute+8:movq   %rdi,-0x8(%rbp)
hidparser_get_usage_attribute+0xc:      movq   %rsi,-0x10(%rbp)
hidparser_get_usage_attribute+0x10:     movq   %rdx,-0x18(%rbp)
hidparser_get_usage_attribute+0x14:     movq   %rcx,-0x20(%rbp)
hidparser_get_usage_attribute+0x18:     movq   %r8,-0x28(%rbp)
hidparser_get_usage_attribute+0x1c:     movq   %r9,-0x30(%rbp)
hidparser_get_usage_attribute+0x20:     subq   $0x8,%rsp
hidparser_get_usage_attribute+0x24:     movq   (%rdi),%rdi
hidparser_get_usage_attribute+0x27:     pushq  0x10(%rbp)
hidparser_get_usage_attribute+0x2a:     
call   +0x9     <hidparser_get_usage_attribute_report_des>
hidparser_get_usage_attribute+0x2f:     leave  
hidparser_get_usage_attribute+0x30:     ret    
-------------- next part --------------
INDEX   DRIVER      INST  NODE            VID.PID     PRODUCT             
1       ehci        0     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c133b00
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #0 (driver name: ehci)
  /pci at 0,0/pci1028,1f9 at 1a,7
  dip: 0x8a29b790
  ehci_statep: 0x8baeb000
  ehci_errlevel: 0x2
{
    ehci_root_hub.rh_descr.bDescLength = 0x9
    ehci_root_hub.rh_descr.bDescriptorType = 0x29
    ehci_root_hub.rh_descr.bNbrPorts = 0x4
    ehci_root_hub.rh_descr.wHubCharacteristics = 0x12
    ehci_root_hub.rh_descr.bPwrOn2PwrGood = 0x2
    ehci_root_hub.rh_descr.bHubContrCurrent = 0
    ehci_root_hub.rh_descr.DeviceRemovable = 0
    ehci_root_hub.rh_descr.PortPwrCtrlMask = 0
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x200
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0x1
    bMaxPacketSize0 = 0x40
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0xff
        }
                                                                        
2       ehci        1     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c133080
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #1 (driver name: ehci)
  /pci at 0,0/pci1028,1f9 at 1d,7
  dip: 0x8a299298
  ehci_statep: 0x8bae8000
  ehci_errlevel: 0x2
{
    ehci_root_hub.rh_descr.bDescLength = 0x9
    ehci_root_hub.rh_descr.bDescriptorType = 0x29
    ehci_root_hub.rh_descr.bNbrPorts = 0x6
    ehci_root_hub.rh_descr.wHubCharacteristics = 0x12
    ehci_root_hub.rh_descr.bPwrOn2PwrGood = 0x2
    ehci_root_hub.rh_descr.bHubContrCurrent = 0
    ehci_root_hub.rh_descr.DeviceRemovable = 0
    ehci_root_hub.rh_descr.PortPwrCtrlMask = 0
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x200
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0x1
    bMaxPacketSize0 = 0x40
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0xff
        }
                                                                        
3       uhci        0     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c7b4500
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #0 (driver name: uhci)
  /pci at 0,0/pci1028,1f9 at 1a
  dip: 0x8a29bc90
  uhci_statep: 0x8a81e000
  uhci_errlevel: 0x2
{
    uhci_root_hub.rh_descr.bDescLength = 0x9
    uhci_root_hub.rh_descr.bDescriptorType = 0x29
    uhci_root_hub.rh_descr.bNbrPorts = 0x2
    uhci_root_hub.rh_descr.wHubCharacteristics = 0x12
    uhci_root_hub.rh_descr.bPwrOn2PwrGood = 0xa
    uhci_root_hub.rh_descr.bHubContrCurrent = 0
    uhci_root_hub.rh_descr.DeviceRemovable = 0
    uhci_root_hub.rh_descr.PortPwrCtrlMask = 0xff
}

{
    device, instance #1 (driver name: usb_mid)
      /pci at 0,0/pci1028,1f9 at 1a/device at 2
      dip: 0x8b89b0b8
      usb_mid_statep: 0x8d0876e8
      usb_mid_errlevel: 0x4
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0x20
        }
                                                                        
4       uhci        1     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c7b3a80
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #1 (driver name: uhci)
  /pci at 0,0/pci1028,1f9 at 1a,1
  dip: 0x8a29ba10
  uhci_statep: 0x8a830000
  uhci_errlevel: 0x2
{
    uhci_root_hub.rh_descr.bDescLength = 0x9
    uhci_root_hub.rh_descr.bDescriptorType = 0x29
    uhci_root_hub.rh_descr.bNbrPorts = 0x2
    uhci_root_hub.rh_descr.wHubCharacteristics = 0x12
    uhci_root_hub.rh_descr.bPwrOn2PwrGood = 0xa
    uhci_root_hub.rh_descr.bHubContrCurrent = 0
    uhci_root_hub.rh_descr.DeviceRemovable = 0
    uhci_root_hub.rh_descr.PortPwrCtrlMask = 0xff
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0x20
        }
                                                                        
5       uhci        2     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c7b3000
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #2 (driver name: uhci)
  /pci at 0,0/pci1028,1f9 at 1d
  dip: 0x8a299a18
  uhci_statep: 0x8c88c000
  uhci_errlevel: 0x2
{
    uhci_root_hub.rh_descr.bDescLength = 0x9
    uhci_root_hub.rh_descr.bDescriptorType = 0x29
    uhci_root_hub.rh_descr.bNbrPorts = 0x2
    uhci_root_hub.rh_descr.wHubCharacteristics = 0x12
    uhci_root_hub.rh_descr.bPwrOn2PwrGood = 0xa
    uhci_root_hub.rh_descr.bHubContrCurrent = 0
    uhci_root_hub.rh_descr.DeviceRemovable = 0
    uhci_root_hub.rh_descr.PortPwrCtrlMask = 0xff
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0x20
        }
                                                                        
6       uhci        3     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c7b2540
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #3 (driver name: uhci)
  /pci at 0,0/pci1028,1f9 at 1d,1
  dip: 0x8a299798
  uhci_statep: 0x8c886000
  uhci_errlevel: 0x2
{
    uhci_root_hub.rh_descr.bDescLength = 0x9
    uhci_root_hub.rh_descr.bDescriptorType = 0x29
    uhci_root_hub.rh_descr.bNbrPorts = 0x2
    uhci_root_hub.rh_descr.wHubCharacteristics = 0x12
    uhci_root_hub.rh_descr.bPwrOn2PwrGood = 0xa
    uhci_root_hub.rh_descr.bHubContrCurrent = 0
    uhci_root_hub.rh_descr.DeviceRemovable = 0
    uhci_root_hub.rh_descr.PortPwrCtrlMask = 0xff
}

{
    device, instance #0 (driver name: usb_mid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 1
      dip: 0x8d1795c0
      usb_mid_statep: 0x8d087008
      usb_mid_errlevel: 0x4
    
    {
        keyboard, instance #0 (driver name: hid)
          /pci at 0,0/pci1028,1f9 at 1d,1/device at 1/keyboard at 0
          dip: 0x8d179840
          hid_statep: 0x8d17eec0
          hid_errlevel: 0x4
          
          usage page ( 0x01 )
          usage ( 0x06 )
          COLLECTION ( 0x01 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x03 )
              usage min ( 0x01 )
              usage max ( 0x03 )
              OUTPUT ( 0x02 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x01 )
              usage ( 0x4b )
              OUTPUT ( 0x02 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x04 )
              OUTPUT ( 0x01 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              usage page ( 0x07 )
              report count ( 0x08 )
              usage min ( 0xe0 )
              usage max ( 0xe7 )
              INPUT ( 0x02 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              usage page ( 0x07 )
              report size ( 0x08 )
              report count ( 0x01 )
              INPUT ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x07 )
              report size ( 0x08 )
              logical maximum ( 0xff 0x00 )
              report count ( 0x06 )
              usage min ( 0x00 )
              usage max ( 0x91 )
              INPUT ( 0x00 )
          END_COLLECTION ( )
        
        input, instance #1 (driver name: hid)
          /pci at 0,0/pci1028,1f9 at 1d,1/device at 1/input at 1
          dip: 0x8d179ac0
          hid_statep: 0x8d17e5c0
          hid_errlevel: 0x4
          
          usage page ( 0x01 )
          usage ( 0x02 )
          COLLECTION ( 0x01 )
              usage page ( 0x01 )
              report id ( 0x01 )
              usage ( 0x01 )
              COLLECTION ( 0x00 )
                  report id ( 0x01 )
                  usage page ( 0x09 )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report size ( 0x01 )
                  report count ( 0x05 )
                  usage min ( 0x01 )
                  usage max ( 0x05 )
                  INPUT ( 0x02 )
                  report id ( 0x01 )
                  usage page ( 0x09 )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report size ( 0x03 )
                  report count ( 0x01 )
                  INPUT ( 0x01 )
                  report id ( 0x01 )
                  usage page ( 0x01 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  report count ( 0x02 )
                  usage ( 0x30 )
                  usage ( 0x31 )
                  INPUT ( 0x06 )
                  report id ( 0x01 )
                  usage page ( 0x01 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  report count ( 0x02 )
                  COLLECTION ( 0x02 )
                      report id ( 0x01 )
                      usage page ( 0x01 )
                      logical minimum ( 0x00 )
                      logical maximum ( 0x01 )
                      physical minimum ( 0x01 )
                      physical maximum ( 0x04 )
                      report count ( 0x01 )
                      report size ( 0x02 )
                      usage ( 0x48 )
                      FEATURE ( 0x02 )
                      report id ( 0x01 )
                      usage page ( 0x01 )
                      logical minimum ( 0x00 )
                      logical maximum ( 0x01 )
                      report count ( 0x01 )
                      physical minimum ( 0x00 )
                      physical maximum ( 0x00 )
                      report size ( 0x06 )
                      FEATURE ( 0x01 )
                      report id ( 0x01 )
                      usage page ( 0x01 )
                      report count ( 0x01 )
                      physical minimum ( 0x00 )
                      physical maximum ( 0x00 )
                      logical minimum ( 0x81 )
                      logical maximum ( 0x7f )
                      report size ( 0x08 )
                      usage ( 0x38 )
                      INPUT ( 0x06 )
                  END_COLLECTION ( )
                  report id ( 0x01 )
                  report count ( 0x01 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  usage page ( 0x0c )
                  usage ( 0x38 0x02 )
                  INPUT ( 0x06 )
              END_COLLECTION ( )
          END_COLLECTION ( )
          report id ( 0x01 )
          report count ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x81 )
          logical maximum ( 0x7f )
          report size ( 0x08 )
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              report count ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              report id ( 0x02 )
              usage page ( 0x01 )
              usage ( 0x02 )
              COLLECTION ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x02 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x03 )
                  report size ( 0x02 )
                  report count ( 0x01 )
                  usage ( 0x01 0xfe )
                  INPUT ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x02 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report size ( 0x01 )
                  report count ( 0x02 )
                  usage ( 0x02 0xfe )
                  usage ( 0x00 0xfe )
                  INPUT ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x02 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x03 )
                  report size ( 0x02 )
                  report count ( 0x01 )
                  usage ( 0x03 0xff )
                  INPUT ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x02 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x03 )
                  report size ( 0x02 )
                  report count ( 0x01 )
                  INPUT ( 0x01 )
              END_COLLECTION ( )
          END_COLLECTION ( )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x02 )
          logical minimum ( 0x00 )
          logical maximum ( 0x03 )
          report size ( 0x02 )
          report count ( 0x01 )
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              report id ( 0x03 )
              usage page ( 0x01 )
              usage ( 0x02 )
              COLLECTION ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x03 )
                  usage page ( 0x0c )
                  report size ( 0x08 )
                  report count ( 0x01 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  usage ( 0x38 0x02 )
                  INPUT ( 0x06 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x03 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report size ( 0x01 )
                  report count ( 0x02 )
                  usage ( 0x04 0xff )
                  usage ( 0x06 0xff )
                  FEATURE ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x03 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report size ( 0x01 )
                  report count ( 0x06 )
                  FEATURE ( 0x01 )
              END_COLLECTION ( )
          END_COLLECTION ( )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x03 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x06 )
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x04 )
              usage page ( 0x0c )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x1d )
              usage ( 0xe2 )
              usage ( 0xb7 )
              usage ( 0xcd )
              usage ( 0xea )
              usage ( 0xe9 )
              usage ( 0xb6 )
              usage ( 0xb5 )
              usage ( 0x83 0x01 )
              usage ( 0x1a 0x02 )
              usage ( 0x79 0x02 )
              usage ( 0xab 0x01 )
              usage ( 0x08 0x02 )
              usage ( 0x02 0x02 )
              usage ( 0x03 0x02 )
              usage ( 0x07 0x02 )
              usage ( 0x01 0x02 )
              usage ( 0x92 0x01 )
              usage ( 0x9c 0x01 )
              usage ( 0x95 )
              usage ( 0x23 0x02 )
              usage ( 0x89 0x02 )
              usage ( 0x8b 0x02 )
              usage ( 0x8c 0x02 )
              usage ( 0x8a 0x01 )
              usage ( 0x99 0x01 )
              usage ( 0xa7 0x01 )
              usage ( 0xb6 0x01 )
              usage ( 0xb7 0x01 )
              usage ( 0x82 0x01 )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x04 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report count ( 0x01 )
              report size ( 0x05 )
              usage page ( 0x00 0xff )
              usage ( 0x05 0xff )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x04 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report count ( 0x02 )
              report size ( 0x01 )
              usage page ( 0x0c )
              usage ( 0x24 0x02 )
              usage ( 0x25 0x02 )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x04 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              usage page ( 0x0c )
              report count ( 0x04 )
              INPUT ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x04 )
              logical minimum ( 0x00 )
              usage page ( 0x00 0xff )
              logical maximum ( 0xff 0x00 )
              report count ( 0x01 )
              report size ( 0x08 )
              usage ( 0x02 0xff )
              INPUT ( 0x02 )
          END_COLLECTION ( )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          logical minimum ( 0x00 )
          logical maximum ( 0xff 0x00 )
          report count ( 0x01 )
          report size ( 0x08 )
          usage page ( 0x01 )
          usage ( 0x80 )
          COLLECTION ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x00 )
              usage page ( 0x01 )
              report id ( 0x05 )
              logical maximum ( 0x01 )
              report count ( 0x03 )
              report size ( 0x01 )
              usage min ( 0x81 )
              usage max ( 0x83 )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x00 )
              usage page ( 0x01 )
              report id ( 0x05 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x05 )
              INPUT ( 0x01 )
          END_COLLECTION ( )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x00 )
          report id ( 0x05 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x05 )
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x05 )
              report id ( 0x06 )
              usage page ( 0x01 )
              usage ( 0x06 )
              COLLECTION ( 0x02 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x06 )
                  usage page ( 0x01 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  report count ( 0x01 )
                  usage ( 0x38 )
                  INPUT ( 0x06 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x06 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  report count ( 0x01 )
                  usage page ( 0x0c )
                  usage ( 0x38 0x02 )
                  INPUT ( 0x06 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report id ( 0x06 )
                  report size ( 0x08 )
                  report count ( 0x01 )
                  usage page ( 0x00 0xff )
                  logical minimum ( 0x00 )
                  logical maximum ( 0xff 0x00 )
                  usage ( 0x02 0xff )
                  INPUT ( 0x02 )
              END_COLLECTION ( )
          END_COLLECTION ( )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x06 )
          report size ( 0x08 )
          report count ( 0x01 )
          logical minimum ( 0x00 )
          logical maximum ( 0xff 0x00 )
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x07 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              usage ( 0x01 0xfe )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x07 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x02 )
              usage ( 0x02 0xfe )
              usage ( 0x00 0xfe )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x07 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              usage ( 0x03 0xff )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x07 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              INPUT ( 0x01 )
          END_COLLECTION ( )
        
    }
    
    device, instance #2 (driver name: usb_mid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 2
      dip: 0x8d179340
      usb_mid_statep: 0x8d9ad978
      usb_mid_errlevel: 0x4
    
    {
        keyboard, instance #2 (driver name: hid)
          /pci at 0,0/pci1028,1f9 at 1d,1/device at 2/keyboard at 0
          dip: 0x8daecac8
          hid_statep: 0x8da48100
          hid_errlevel: 0x4
          
          usage page ( 0x01 )
          usage ( 0x06 )
          COLLECTION ( 0x01 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x03 )
              usage min ( 0x01 )
              usage max ( 0x03 )
              OUTPUT ( 0x02 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x01 )
              usage ( 0x4b )
              OUTPUT ( 0x02 )
              usage page ( 0x08 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x04 )
              OUTPUT ( 0x01 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              usage page ( 0x07 )
              report count ( 0x08 )
              usage min ( 0xe0 )
              usage max ( 0xe7 )
              INPUT ( 0x02 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              usage page ( 0x07 )
              report size ( 0x08 )
              report count ( 0x01 )
              INPUT ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x07 )
              report size ( 0x08 )
              logical maximum ( 0xff 0x00 )
              report count ( 0x06 )
              usage min ( 0x00 )
              usage max ( 0x91 )
              INPUT ( 0x00 )
          END_COLLECTION ( )
        
        input, instance #3 (driver name: hid)
          /pci at 0,0/pci1028,1f9 at 1d,1/device at 2/input at 1
          dip: 0x8daec848
          hid_statep: 0x8d44bb80
          hid_errlevel: 0x4
          
          usage page ( 0x0c )
          usage ( 0x01 )
          COLLECTION ( 0x01 )
              report id ( 0x01 )
              usage page ( 0x0c )
              report count ( 0x01 )
              report size ( 0x10 )
              logical minimum ( 0x00 )
              logical maximum ( 0xff 0x03 0x00 0x00 )
              usage min ( 0x00 )
              usage max ( 0xff 0x03 )
              INPUT ( 0x00 )
              report id ( 0x01 )
              report count ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x07 )
              report size ( 0x08 )
              logical maximum ( 0xff 0x00 )
              usage min ( 0x00 )
              usage max ( 0xff )
              INPUT ( 0x00 )
              report id ( 0x01 )
              report count ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x07 )
              report size ( 0x08 )
              logical maximum ( 0xff 0x00 )
              INPUT ( 0x01 )
              report id ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x00 0xff )
              report count ( 0x02 )
              report size ( 0x01 )
              logical maximum ( 0x01 )
              usage ( 0x03 0xfe )
              usage ( 0x04 0xfe )
              INPUT ( 0x02 )
              report id ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x00 0xff )
              report count ( 0x01 )
              report size ( 0x05 )
              logical maximum ( 0x1f )
              usage ( 0x05 0xff )
              INPUT ( 0x02 )
              report id ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x00 0xff )
              report count ( 0x01 )
              logical maximum ( 0x1f )
              report size ( 0x09 )
              INPUT ( 0x01 )
              report id ( 0x01 )
              logical minimum ( 0x00 )
              usage page ( 0x00 0xff )
              report count ( 0x01 )
              logical maximum ( 0xff 0x00 )
              report size ( 0x08 )
              usage ( 0x02 0xff )
              INPUT ( 0x02 )
          END_COLLECTION ( )
        
    }
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0x20
        }
                                                                        
7       uhci        4     pci1028,1f9     0000.0000   No Product String

usba_device: 0x8c7b1ac0
mfg_prod_sn: NULL - NULL -NULL

pci1028,1f9, instance #4 (driver name: uhci)
  /pci at 0,0/pci1028,1f9 at 1d,2
  dip: 0x8a299518
  uhci_statep: 0x8c880000
  uhci_errlevel: 0x2
{
    uhci_root_hub.rh_descr.bDescLength = 0x9
    uhci_root_hub.rh_descr.bDescriptorType = 0x29
    uhci_root_hub.rh_descr.bNbrPorts = 0x2
    uhci_root_hub.rh_descr.wHubCharacteristics = 0x12
    uhci_root_hub.rh_descr.bPwrOn2PwrGood = 0xa
    uhci_root_hub.rh_descr.bHubContrCurrent = 0
    uhci_root_hub.rh_descr.DeviceRemovable = 0
    uhci_root_hub.rh_descr.PortPwrCtrlMask = 0xff
}

{
    hub, instance #0 (driver name: hubd)
      /pci at 0,0/pci1028,1f9 at 1d,2/hub at 1
      dip: 0x8a29fa08
      hubd_statep: 0x8d421200
      hubd_errlevel: 0x4
    {
        h_hub_descr.bDescLength = 0x9
        h_hub_descr.bDescriptorType = 0x29
        h_hub_descr.bNbrPorts = 0x4
        h_hub_descr.wHubCharacteristics = 0xd
        h_hub_descr.bPwrOn2PwrGood = 0x32
        h_hub_descr.bHubContrCurrent = 0x64
        h_hub_descr.DeviceRemovable = 0x4
        h_hub_descr.PortPwrCtrlMask = 0xff
    }
    
    {
        device, instance #3 (driver name: usb_mid)
          /pci at 0,0/pci1028,1f9 at 1d,2/hub at 1/device at 2
          dip: 0x8d1790c0
          usb_mid_statep: 0x8d9ad798
          usb_mid_errlevel: 0x4
        
    }
    
    device, instance #4 (driver name: usb_mid)
      /pci at 0,0/pci1028,1f9 at 1d,2/device at 2
      dip: 0x8daecd48
      usb_mid_statep: 0x8db66e60
      usb_mid_errlevel: 0x4
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0
    idProduct = 0
    bcdDevice = 0
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0x40
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0x20
        }
                                                                        
8       usb_mid     1     device          413c.8140   No Product String

usba_device: 0x8d065a80
mfg_prod_sn: NULL - NULL -NULL

device, instance #1 (driver name: usb_mid)
  /pci at 0,0/pci1028,1f9 at 1a/device at 2
  dip: 0x8b89b0b8
  usb_mid_statep: 0x8d0876e8
  usb_mid_errlevel: 0x4


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x200
    bDeviceClass = 0xe0
    bDeviceSubClass = 0x1
    bDeviceProtocol = 0x1
    bMaxPacketSize0 = 0x40
    idVendor = 0x413c
    idProduct = 0x8140
    bcdDevice = 0x4315
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0xc1
        bNumInterfaces = 0x3
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xe0
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x3
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x10
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x2
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x82
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x0
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x0
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x0
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x1
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x9
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x9
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x2
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x11
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x11
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x3
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x19
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x19
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x4
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x21
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x21
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x5
            bNumEndpoints = 0x2
            bInterfaceClass = 0xe0
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x1
            wMaxPacketSize = 0x31
            bInterval = 0x1
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x1
            wMaxPacketSize = 0x31
            bInterval = 0x1
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x2
            bAlternateSetting = 0x0
            bNumEndpoints = 0x0
            bInterfaceClass = 0xfe
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
            HID Descriptor
            {
                bLength = 0x7
                bDescriptorType = 0x21
                bcdHID = 0x8807
                bCountryCode = 0x13
                bNumDescriptors = 0xff
                bReportDescriptorType = 0x3
            }
                                                                        
9       usb_mid     0     device          045e.008a   
Microsoft Wireless Optical Desktop? 1.00

usba_device: 0x8d05bac0
mfg_prod_sn: Microsoft - Microsoft Wireless Optical Desktop? 1.00 - NULL

device, instance #0 (driver name: usb_mid)
  /pci at 0,0/pci1028,1f9 at 1d,1/device at 1
  dip: 0x8d1795c0
  usb_mid_statep: 0x8d087008
  usb_mid_errlevel: 0x4

{
    keyboard, instance #0 (driver name: hid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 1/keyboard at 0
      dip: 0x8d179840
      hid_statep: 0x8d17eec0
      hid_errlevel: 0x4
      
      usage page ( 0x01 )
      usage ( 0x06 )
      COLLECTION ( 0x01 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x03 )
          usage min ( 0x01 )
          usage max ( 0x03 )
          OUTPUT ( 0x02 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x01 )
          usage ( 0x4b )
          OUTPUT ( 0x02 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x04 )
          OUTPUT ( 0x01 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          usage page ( 0x07 )
          report count ( 0x08 )
          usage min ( 0xe0 )
          usage max ( 0xe7 )
          INPUT ( 0x02 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          usage page ( 0x07 )
          report size ( 0x08 )
          report count ( 0x01 )
          INPUT ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x07 )
          report size ( 0x08 )
          logical maximum ( 0xff 0x00 )
          report count ( 0x06 )
          usage min ( 0x00 )
          usage max ( 0x91 )
          INPUT ( 0x00 )
      END_COLLECTION ( )
    
    input, instance #1 (driver name: hid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 1/input at 1
      dip: 0x8d179ac0
      hid_statep: 0x8d17e5c0
      hid_errlevel: 0x4
      
      usage page ( 0x01 )
      usage ( 0x02 )
      COLLECTION ( 0x01 )
          usage page ( 0x01 )
          report id ( 0x01 )
          usage ( 0x01 )
          COLLECTION ( 0x00 )
              report id ( 0x01 )
              usage page ( 0x09 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x05 )
              usage min ( 0x01 )
              usage max ( 0x05 )
              INPUT ( 0x02 )
              report id ( 0x01 )
              usage page ( 0x09 )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x03 )
              report count ( 0x01 )
              INPUT ( 0x01 )
              report id ( 0x01 )
              usage page ( 0x01 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              report count ( 0x02 )
              usage ( 0x30 )
              usage ( 0x31 )
              INPUT ( 0x06 )
              report id ( 0x01 )
              usage page ( 0x01 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              report count ( 0x02 )
              COLLECTION ( 0x02 )
                  report id ( 0x01 )
                  usage page ( 0x01 )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  physical minimum ( 0x01 )
                  physical maximum ( 0x04 )
                  report count ( 0x01 )
                  report size ( 0x02 )
                  usage ( 0x48 )
                  FEATURE ( 0x02 )
                  report id ( 0x01 )
                  usage page ( 0x01 )
                  logical minimum ( 0x00 )
                  logical maximum ( 0x01 )
                  report count ( 0x01 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  report size ( 0x06 )
                  FEATURE ( 0x01 )
                  report id ( 0x01 )
                  usage page ( 0x01 )
                  report count ( 0x01 )
                  physical minimum ( 0x00 )
                  physical maximum ( 0x00 )
                  logical minimum ( 0x81 )
                  logical maximum ( 0x7f )
                  report size ( 0x08 )
                  usage ( 0x38 )
                  INPUT ( 0x06 )
              END_COLLECTION ( )
              report id ( 0x01 )
              report count ( 0x01 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              usage page ( 0x0c )
              usage ( 0x38 0x02 )
              INPUT ( 0x06 )
          END_COLLECTION ( )
      END_COLLECTION ( )
      report id ( 0x01 )
      report count ( 0x01 )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      logical minimum ( 0x81 )
      logical maximum ( 0x7f )
      report size ( 0x08 )
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          report count ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x81 )
          logical maximum ( 0x7f )
          report size ( 0x08 )
          report id ( 0x02 )
          usage page ( 0x01 )
          usage ( 0x02 )
          COLLECTION ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x02 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              usage ( 0x01 0xfe )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x02 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x02 )
              usage ( 0x02 0xfe )
              usage ( 0x00 0xfe )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x02 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              usage ( 0x03 0xff )
              INPUT ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x02 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x03 )
              report size ( 0x02 )
              report count ( 0x01 )
              INPUT ( 0x01 )
          END_COLLECTION ( )
      END_COLLECTION ( )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      report id ( 0x02 )
      logical minimum ( 0x00 )
      logical maximum ( 0x03 )
      report size ( 0x02 )
      report count ( 0x01 )
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x00 )
          logical maximum ( 0x03 )
          report size ( 0x02 )
          report count ( 0x01 )
          report id ( 0x03 )
          usage page ( 0x01 )
          usage ( 0x02 )
          COLLECTION ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x03 )
              usage page ( 0x0c )
              report size ( 0x08 )
              report count ( 0x01 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              usage ( 0x38 0x02 )
              INPUT ( 0x06 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x03 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x02 )
              usage ( 0x04 0xff )
              usage ( 0x06 0xff )
              FEATURE ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x03 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0x01 )
              report size ( 0x01 )
              report count ( 0x06 )
              FEATURE ( 0x01 )
          END_COLLECTION ( )
      END_COLLECTION ( )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      report id ( 0x03 )
      logical minimum ( 0x00 )
      logical maximum ( 0x01 )
      report size ( 0x01 )
      report count ( 0x06 )
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          usage page ( 0x0c )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x1d )
          usage ( 0xe2 )
          usage ( 0xb7 )
          usage ( 0xcd )
          usage ( 0xea )
          usage ( 0xe9 )
          usage ( 0xb6 )
          usage ( 0xb5 )
          usage ( 0x83 0x01 )
          usage ( 0x1a 0x02 )
          usage ( 0x79 0x02 )
          usage ( 0xab 0x01 )
          usage ( 0x08 0x02 )
          usage ( 0x02 0x02 )
          usage ( 0x03 0x02 )
          usage ( 0x07 0x02 )
          usage ( 0x01 0x02 )
          usage ( 0x92 0x01 )
          usage ( 0x9c 0x01 )
          usage ( 0x95 )
          usage ( 0x23 0x02 )
          usage ( 0x89 0x02 )
          usage ( 0x8b 0x02 )
          usage ( 0x8c 0x02 )
          usage ( 0x8a 0x01 )
          usage ( 0x99 0x01 )
          usage ( 0xa7 0x01 )
          usage ( 0xb6 0x01 )
          usage ( 0xb7 0x01 )
          usage ( 0x82 0x01 )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report count ( 0x01 )
          report size ( 0x05 )
          usage page ( 0x00 0xff )
          usage ( 0x05 0xff )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report count ( 0x02 )
          report size ( 0x01 )
          usage page ( 0x0c )
          usage ( 0x24 0x02 )
          usage ( 0x25 0x02 )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          usage page ( 0x0c )
          report count ( 0x04 )
          INPUT ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x04 )
          logical minimum ( 0x00 )
          usage page ( 0x00 0xff )
          logical maximum ( 0xff 0x00 )
          report count ( 0x01 )
          report size ( 0x08 )
          usage ( 0x02 0xff )
          INPUT ( 0x02 )
      END_COLLECTION ( )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      report id ( 0x04 )
      logical minimum ( 0x00 )
      logical maximum ( 0xff 0x00 )
      report count ( 0x01 )
      report size ( 0x08 )
      usage page ( 0x01 )
      usage ( 0x80 )
      COLLECTION ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x00 )
          usage page ( 0x01 )
          report id ( 0x05 )
          logical maximum ( 0x01 )
          report count ( 0x03 )
          report size ( 0x01 )
          usage min ( 0x81 )
          usage max ( 0x83 )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x00 )
          usage page ( 0x01 )
          report id ( 0x05 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x05 )
          INPUT ( 0x01 )
      END_COLLECTION ( )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      logical minimum ( 0x00 )
      report id ( 0x05 )
      logical maximum ( 0x01 )
      report size ( 0x01 )
      report count ( 0x05 )
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x05 )
          report id ( 0x06 )
          usage page ( 0x01 )
          usage ( 0x06 )
          COLLECTION ( 0x02 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x06 )
              usage page ( 0x01 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              report count ( 0x01 )
              usage ( 0x38 )
              INPUT ( 0x06 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x06 )
              logical minimum ( 0x81 )
              logical maximum ( 0x7f )
              report size ( 0x08 )
              report count ( 0x01 )
              usage page ( 0x0c )
              usage ( 0x38 0x02 )
              INPUT ( 0x06 )
              physical minimum ( 0x00 )
              physical maximum ( 0x00 )
              report id ( 0x06 )
              report size ( 0x08 )
              report count ( 0x01 )
              usage page ( 0x00 0xff )
              logical minimum ( 0x00 )
              logical maximum ( 0xff 0x00 )
              usage ( 0x02 0xff )
              INPUT ( 0x02 )
          END_COLLECTION ( )
      END_COLLECTION ( )
      physical minimum ( 0x00 )
      physical maximum ( 0x00 )
      report id ( 0x06 )
      report size ( 0x08 )
      report count ( 0x01 )
      logical minimum ( 0x00 )
      logical maximum ( 0xff 0x00 )
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x07 )
          usage page ( 0x00 0xff )
          logical minimum ( 0x00 )
          logical maximum ( 0x03 )
          report size ( 0x02 )
          report count ( 0x01 )
          usage ( 0x01 0xfe )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x07 )
          usage page ( 0x00 0xff )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x02 )
          usage ( 0x02 0xfe )
          usage ( 0x00 0xfe )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x07 )
          usage page ( 0x00 0xff )
          logical minimum ( 0x00 )
          logical maximum ( 0x03 )
          report size ( 0x02 )
          report count ( 0x01 )
          usage ( 0x03 0xff )
          INPUT ( 0x02 )
          physical minimum ( 0x00 )
          physical maximum ( 0x00 )
          report id ( 0x07 )
          usage page ( 0x00 0xff )
          logical minimum ( 0x00 )
          logical maximum ( 0x03 )
          report size ( 0x02 )
          report count ( 0x01 )
          INPUT ( 0x01 )
      END_COLLECTION ( )
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x200
    bDeviceClass = 0
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0x45e
    idProduct = 0x8a
    bcdDevice = 0x7373
    iManufacturer = 0x1
    iProduct = 0x2
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x3b
        bNumInterfaces = 0x2
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xa0
        bMaxPower = 0x32
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x3
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
            HID Descriptor
            {
                bLength = 0x9
                bDescriptorType = 0x21
                bcdHID = 0x111
                bCountryCode = 0x0
                bNumDescriptors = 0x1
                bReportDescriptorType = 0x22
                wReportDescriptorLength = 0x3c
            }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x8
            bInterval = 0xa
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x3
            bInterfaceSubClass = 0x0
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
            HID Descriptor
            {
                bLength = 0x9
                bDescriptorType = 0x21
                bcdHID = 0x111
                bCountryCode = 0x0
                bNumDescriptors = 0x1
                bReportDescriptorType = 0x22
                wReportDescriptorLength = 0x1e1
            }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x82
            bmAttributes = 0x3
            wMaxPacketSize = 0x7
            bInterval = 0xa
        }
                                                                        
a       hubd        0     hub             0b97.7761   No Product String

usba_device: 0x8d05c540
mfg_prod_sn: NULL - NULL -NULL

hub, instance #0 (driver name: hubd)
  /pci at 0,0/pci1028,1f9 at 1d,2/hub at 1
  dip: 0x8a29fa08
  hubd_statep: 0x8d421200
  hubd_errlevel: 0x4
{
    h_hub_descr.bDescLength = 0x9
    h_hub_descr.bDescriptorType = 0x29
    h_hub_descr.bNbrPorts = 0x4
    h_hub_descr.wHubCharacteristics = 0xd
    h_hub_descr.bPwrOn2PwrGood = 0x32
    h_hub_descr.bHubContrCurrent = 0x64
    h_hub_descr.DeviceRemovable = 0x4
    h_hub_descr.PortPwrCtrlMask = 0xff
}

{
    device, instance #3 (driver name: usb_mid)
      /pci at 0,0/pci1028,1f9 at 1d,2/hub at 1/device at 2
      dip: 0x8d1790c0
      usb_mid_statep: 0x8d9ad798
      usb_mid_errlevel: 0x4
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0x9
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0xb97
    idProduct = 0x7761
    bcdDevice = 0x110
    iManufacturer = 0
    iProduct = 0
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x19
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xe0
        bMaxPower = 0x1
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x9
            bInterfaceSubClass = 0x0
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x1
            bInterval = 0xff
        }
                                                                        
b       usb_mid     2     device          045e.00db   
Natural? Ergonomic Keyboard 4000

usba_device: 0x8d2dcb00
mfg_prod_sn: Microsoft - Natural? Ergonomic Keyboard 4000 - NULL

device, instance #2 (driver name: usb_mid)
  /pci at 0,0/pci1028,1f9 at 1d,1/device at 2
  dip: 0x8d179340
  usb_mid_statep: 0x8d9ad978
  usb_mid_errlevel: 0x4

{
    keyboard, instance #2 (driver name: hid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 2/keyboard at 0
      dip: 0x8daecac8
      hid_statep: 0x8da48100
      hid_errlevel: 0x4
      
      usage page ( 0x01 )
      usage ( 0x06 )
      COLLECTION ( 0x01 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x03 )
          usage min ( 0x01 )
          usage max ( 0x03 )
          OUTPUT ( 0x02 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x01 )
          usage ( 0x4b )
          OUTPUT ( 0x02 )
          usage page ( 0x08 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          report count ( 0x04 )
          OUTPUT ( 0x01 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          report size ( 0x01 )
          usage page ( 0x07 )
          report count ( 0x08 )
          usage min ( 0xe0 )
          usage max ( 0xe7 )
          INPUT ( 0x02 )
          logical minimum ( 0x00 )
          logical maximum ( 0x01 )
          usage page ( 0x07 )
          report size ( 0x08 )
          report count ( 0x01 )
          INPUT ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x07 )
          report size ( 0x08 )
          logical maximum ( 0xff 0x00 )
          report count ( 0x06 )
          usage min ( 0x00 )
          usage max ( 0x91 )
          INPUT ( 0x00 )
      END_COLLECTION ( )
    
    input, instance #3 (driver name: hid)
      /pci at 0,0/pci1028,1f9 at 1d,1/device at 2/input at 1
      dip: 0x8daec848
      hid_statep: 0x8d44bb80
      hid_errlevel: 0x4
      
      usage page ( 0x0c )
      usage ( 0x01 )
      COLLECTION ( 0x01 )
          report id ( 0x01 )
          usage page ( 0x0c )
          report count ( 0x01 )
          report size ( 0x10 )
          logical minimum ( 0x00 )
          logical maximum ( 0xff 0x03 0x00 0x00 )
          usage min ( 0x00 )
          usage max ( 0xff 0x03 )
          INPUT ( 0x00 )
          report id ( 0x01 )
          report count ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x07 )
          report size ( 0x08 )
          logical maximum ( 0xff 0x00 )
          usage min ( 0x00 )
          usage max ( 0xff )
          INPUT ( 0x00 )
          report id ( 0x01 )
          report count ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x07 )
          report size ( 0x08 )
          logical maximum ( 0xff 0x00 )
          INPUT ( 0x01 )
          report id ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x00 0xff )
          report count ( 0x02 )
          report size ( 0x01 )
          logical maximum ( 0x01 )
          usage ( 0x03 0xfe )
          usage ( 0x04 0xfe )
          INPUT ( 0x02 )
          report id ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x00 0xff )
          report count ( 0x01 )
          report size ( 0x05 )
          logical maximum ( 0x1f )
          usage ( 0x05 0xff )
          INPUT ( 0x02 )
          report id ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x00 0xff )
          report count ( 0x01 )
          logical maximum ( 0x1f )
          report size ( 0x09 )
          INPUT ( 0x01 )
          report id ( 0x01 )
          logical minimum ( 0x00 )
          usage page ( 0x00 0xff )
          report count ( 0x01 )
          logical maximum ( 0xff 0x00 )
          report size ( 0x08 )
          usage ( 0x02 0xff )
          INPUT ( 0x02 )
      END_COLLECTION ( )
    
}


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x200
    bDeviceClass = 0
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0x45e
    idProduct = 0xdb
    bcdDevice = 0x173
    iManufacturer = 0x1
    iProduct = 0x2
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x3b
        bNumInterfaces = 0x2
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xa0
        bMaxPower = 0x32
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x3
            bInterfaceSubClass = 0x1
            bInterfaceProtocol = 0x1
            iInterface = 0x0
        }
            HID Descriptor
            {
                bLength = 0x9
                bDescriptorType = 0x21
                bcdHID = 0x111
                bCountryCode = 0x0
                bNumDescriptors = 0x1
                bReportDescriptorType = 0x22
                wReportDescriptorLength = 0x3c
            }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x8
            bInterval = 0xa
        }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x1
            bAlternateSetting = 0x0
            bNumEndpoints = 0x1
            bInterfaceClass = 0x3
            bInterfaceSubClass = 0x0
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
            HID Descriptor
            {
                bLength = 0x9
                bDescriptorType = 0x21
                bcdHID = 0x111
                bCountryCode = 0x0
                bNumDescriptors = 0x1
                bReportDescriptorType = 0x22
                wReportDescriptorLength = 0x56
            }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x82
            bmAttributes = 0x3
            wMaxPacketSize = 0x8
            bInterval = 0xa
        }
                                                                        
c       usb_mid     3     device          0b97.7772   O2Micro CCID SC Reader

usba_device: 0x8d9da540
mfg_prod_sn: O2 - O2Micro CCID SC Reader - NULL

device, instance #3 (driver name: usb_mid)
  /pci at 0,0/pci1028,1f9 at 1d,2/hub at 1/device at 2
  dip: 0x8d1790c0
  usb_mid_statep: 0x8d9ad798
  usb_mid_errlevel: 0x4


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x110
    bDeviceClass = 0
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x40
    idVendor = 0xb97
    idProduct = 0x7772
    bcdDevice = 0x110
    iManufacturer = 0x1
    iProduct = 0x2
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x5d
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xe0
        bMaxPower = 0x0
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x3
            bInterfaceClass = 0xb
            bInterfaceSubClass = 0x0
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x3
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x82
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x3
            wMaxPacketSize = 0x3
            bInterval = 0xff
        }
            HID Descriptor
            {
                bLength = 0x36
                bDescriptorType = 0x21
                bcdHID = 0x100
                bCountryCode = 0x0
                bNumDescriptors = 0x7
                bReportDescriptorType = 0x3
                wReportDescriptorLength = 0x0
                ... = 0x0 0xa0 0xf 0x0 0x0 0xa0 0xf 0x0 0x0 0x0 0x80 0x25 0x0 0x
            0 0x0 0xb0 0x4 0x0 0x0 0xfe 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
             0x0 0x30 0x0 0x0 0x0 0xf 0x1 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x1
            }
                                                                        
d       usb_mid     4     device          0483.2016   Biometric Coprocessor

usba_device: 0x8d9d9ac0
mfg_prod_sn: STMicroelectronics - Biometric Coprocessor - NULL

device, instance #4 (driver name: usb_mid)
  /pci at 0,0/pci1028,1f9 at 1d,2/device at 2
  dip: 0x8daecd48
  usb_mid_statep: 0x8db66e60
  usb_mid_errlevel: 0x4


Device Descriptor
{
    bLength = 0x12
    bDescriptorType = 0x1
    bcdUSB = 0x100
    bDeviceClass = 0
    bDeviceSubClass = 0
    bDeviceProtocol = 0
    bMaxPacketSize0 = 0x8
    idVendor = 0x483
    idProduct = 0x2016
    bcdDevice = 0x1
    iManufacturer = 0x1
    iProduct = 0x2
    iSerialNumber = 0
    bNumConfigurations = 0x1
}
    -- Active Config Index 0
    Configuration Descriptor
    {
        bLength = 0x9
        bDescriptorType = 0x2
        wTotalLength = 0x27
        bNumInterfaces = 0x1
        bConfigurationValue = 0x1
        iConfiguration = 0x0
        bmAttributes = 0xa0
        bMaxPower = 0x32
    }
        Interface Descriptor
        {
            bLength = 0x9
            bDescriptorType = 0x4
            bInterfaceNumber = 0x0
            bAlternateSetting = 0x0
            bNumEndpoints = 0x3
            bInterfaceClass = 0xff
            bInterfaceSubClass = 0x0
            bInterfaceProtocol = 0x0
            iInterface = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x81
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x2
            bmAttributes = 0x2
            wMaxPacketSize = 0x40
            bInterval = 0x0
        }
        Endpoint Descriptor
        {
            bLength = 0x7
            bDescriptorType = 0x5
            bEndpointAddress = 0x83
            bmAttributes = 0x3
            wMaxPacketSize = 0x4
            bInterval = 0x14
        }
                                                                        

Reply via email to