usbkbm(7M)




NAME

     usbkbm - keyboard STREAMS module for Sun USB Keyboard


SYNOPSIS

     open("/dev/kbd", O_RDWR)


DESCRIPTION

     The  usbkbm STREAMS module processes byte streams  generated
     by  a  keyboard attached to a  USB port.   USB keyboard is a
     member of Human Interface Device  (HID)  Class,  and  usbkbm
     only  supports the keyboard protocol defined in the specifi-
     cation.  Definitions for altering keyboard  translation  and
     reading  events  from  the keyboard are in  <sys/kbio.h> and
     <sys/kbd.h>.

     The   usbkbm  STREAMS  module  adheres  to  the   interfaces
     exported  by  kb(7M).  Refer  to the  DESCRIPTION section of
     kb(7M) for a discussion of the  keyboard  translation  modes
     and the IOCTL section for the supported  ioctl(2) requests.

  IOCTLS
     USB Keyboard usbkbm returns different values  for  the  fol-
     lowing ioctls than kb(7M):

     KIOCTYPE
           This  ioctl() returns a new keyboard type defined  for
           the  USB keyboard. All types are listed below:

           KB_SUN3   Sun Type 3 keyboard
           KB_SUN4   Sun Type 4 keyboard
           KB_ASCII  ASCII terminal masquerading as keyboard
           KB_PC     Type 101 PC keyboard
           KB_USB    USB keyboard

           The  USB keyboard type is KB_USB; usbkbm  will  return
           KB_USB in response to the  KIOCTYPE ioctl.

     KIOCLAYOUT
           The argument is a pointer to an  int. The layout  code
           specified  by  the  bCountryCode value returned in the
           HID descriptor is returned in the int  pointed  to  by
           the argument. The countrycodes are defined in 6.2.1 of
           the  HID 1.0 specifications.

     KIOCCMD

           KBD_CMD_CLICK/KBD_CMD_NOCLICK
                 The kb(7M) indicates that inappropriate commands
                 for  particular  keyboards  are ignored. Because
                 clicking is not supported on the  USB  keyboard,
                 usbkbm ignores this command

           KBD_CMD_SETLED
                 Set keyboard LEDs. Same as  kb(7M).

           KBD_CMD_GETLAYOUT
                 The country codes defined in 6.2.1  of  the  HID
                 1.0 specification are returned.

           KBD_CMD_BELL/KBD_CMD_NOBELL
                 This command is supported although the USB  key-
                 board  does  not have a buzzer.  The request for
                 the bell is rerouted.

           KBD_CMD_RESET
                 There is no notion of resetting the keyboard  as
                 there  is for the type4 keyboard. usbkbm ignores
                 this command and  does not return an error.


FILES

     /kernel/strmod/usbkbm
           32-bit ELF kernel STREAMS  module  for  original  USBA
           framework.*

     /kernel/strmod/sparcv9/usbkbm
           64-bit ELF kernel STREAMS module  for  original   USBA
           framework.* (SPARC only).

     /kernel/strmod/usbkb1
           32-bit ELF kernel STREAMS module for USBA  1.0  frame-
           work.*

     /kernel/strmod/sparcv9/usbkb1
           64-bit ELF kernel STREAMS module for USBA 1.0   frame-
           work.* (SPARC only).

     * Please see www.sun.com/desktop/whitepapers.html  for  more
     information  regarding  USB  dual  framework implementation,
     USBA 1.0, and USB 2.0.


ATTRIBUTES

     See attributes(5) for a description of the following  attri-
     butes:

     ____________________________________________________________
   |        ATTRIBUTE TYPE       |        ATTRIBUTE VALUE      |
   | ____________________________|_____________________________|_
   |  Architecture               |  PCI-based  systems         |
   | ____________________________|_____________________________|_
   |  Availability               |  SUNWusb (All architectures)|
   |                             |  SUNWusbx (SPARC only)      |
   |_____________________________|_____________________________|
   | Interface Stability         | Evolving                    |
   |_____________________________|_____________________________|


SEE ALSO

     dumpkeys(1), kbd(1),  loadkeys(1),  ioctl(2),  keytables(4),
     attributes(5), hid(7D), usba(7D), termio(7I), kb(7M)

     STREAMS Programming Guide

     System Administration Guide: Basic Administration

     http://www.sun.com/desktop/whitepapers.html

     http://www.sun.com/io


DIAGN0STICS

     None


Man(1) output converted with man2html