'\" te .\" Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. .TH usbkbm 7M "16 Aug 2011" "SunOS 5.11" "STREAMS Modules" .SH NAME usbkbm \- keyboard STREAMS module for Sun USB Keyboard .SH SYNOPSIS .LP .nf \fB\fR .fi .LP .nf open("/dev/kbd", O_RDWR) .fi .SH DESCRIPTION .sp .LP The \fBusbkbm\fR \fBSTREAMS\fR module processes byte streams generated by a keyboard attached to a \fBUSB\fR port. \fBUSB\fR keyboard is a member of Human Interface Device (HID) Class, and \fBusbkbm\fR only supports the keyboard protocol defined in the specification. Definitions for altering keyboard translation and reading events from the keyboard are in \fB\fR and \fB\fR\&. .sp .LP The \fBusbkbm\fR \fBSTREAMS\fR module adheres to the interfaces exported by \fBkb\fR(7M). Refer to the \fBDESCRIPTION\fR section of \fBkb\fR(7M) for a discussion of the keyboard translation modes and the \fBIOCTL\fR section for the supported \fBioctl\fR(2) requests. .SS "IOCTLS" .sp .LP \fBUSB\fR Keyboard \fBusbkbm\fR returns different values for the following ioctls than \fBkb\fR(7M): .sp .ne 2 .mk .na \fB\fBKIOCTYPE\fR\fR .ad .RS 12n .rt This \fBioctl()\fR returns a new keyboard type defined for the \fBUSB\fR keyboard. All types are listed below: .RE .sp .in +2 .nf 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 .fi .in -2 .sp .LP The \fBUSB\fR keyboard type is \fBKB_USB\fR; \fBusbkbm\fR will return \fBKB_USB\fR in response to the \fBKIOCTYPE\fR ioctl. .sp .ne 2 .mk .na \fB\fBKIOCLAYOUT\fR\fR .ad .RS 14n .rt The argument is a pointer to an \fBint\fR. The layout code specified by the \fBbCountryCode\fR value returned in the \fBHID\fR descriptor is returned in the int pointed to by the argument. The \fBcountrycodes\fR are defined in 6.2.1 of the \fBHID\fR 1.0 specifications. .RE .sp .ne 2 .mk .na \fB\fBKIOCCMD\fR\fR .ad .RS 14n .rt .sp .ne 2 .mk .na \fB\fBKBD_CMD_CLICK/KBD_CMD_NOCLICK\fR\fR .ad .sp .6 .RS 4n The \fBkb\fR(7M) indicates that inappropriate commands for particular keyboards are ignored. Because clicking is not supported on the \fBUSB\fR keyboard, \fBusbkbm\fR ignores this command .RE .sp .ne 2 .mk .na \fB\fBKBD_CMD_SETLED\fR\fR .ad .sp .6 .RS 4n Set keyboard LEDs. Same as \fBkb\fR(7M). .RE .sp .ne 2 .mk .na \fB\fBKBD_CMD_GETLAYOUT\fR\fR .ad .sp .6 .RS 4n The country codes defined in 6.2.1 of the \fBHID\fR 1.0 specification are returned. .RE .sp .ne 2 .mk .na \fB\fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR\fR .ad .sp .6 .RS 4n This command is supported although the \fBUSB\fR keyboard does not have a buzzer. The request for the bell is rerouted. .RE .sp .ne 2 .mk .na \fB\fBKBD_CMD_RESET\fR\fR .ad .sp .6 .RS 4n There is no notion of resetting the keyboard as there is for the type4 keyboard. \fBusbkbm\fR ignores this command and does not return an error. .RE .RE .SH FILES .sp .ne 2 .mk .na \fB/kernel/strmod/usbkbm\fR .ad .sp .6 .RS 4n 32-bit ELF kernel STREAMS module (x86 platform only) .RE .sp .ne 2 .mk .na \fB/kernel/strmod/sparcv9/usbkbm\fR .ad .sp .6 .RS 4n SPARC 64-bit ELF kernel STREAMS module .RE .SH ATTRIBUTES .sp .LP See \fBattributes\fR(5) for a description of the following attributes: .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPEATTRIBUTE VALUE _ ArchitecturePCI-based systems _ Availability system/io/usb .TE .SH SEE ALSO .sp .LP \fBdumpkeys\fR(1), \fBkbd\fR(1), \fBloadkeys\fR(1), \fBioctl\fR(2), \fBkeytables\fR(4), \fBattributes\fR(5), \fBhid\fR(7D), \fBusba\fR(7D), \fBvirtualkm\fR(7D), \fBkb\fR(7M) .sp .LP \fISTREAMS Programming Guide\fR .sp .LP \fIIntroduction to Oracle Solaris 11.3 Administration\fR .sp .LP http://www.oracle.com