FreeBSD kernel usb device Code
|
#include <sys/stdint.h>
#include <sys/stddef.h>
#include <sys/param.h>
#include <sys/queue.h>
#include <sys/types.h>
#include <sys/systm.h>
#include <sys/kernel.h>
#include <sys/bus.h>
#include <sys/module.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <sys/condvar.h>
#include <sys/sysctl.h>
#include <sys/sx.h>
#include <sys/unistd.h>
#include <sys/callout.h>
#include <sys/malloc.h>
#include <sys/priv.h>
#include <dev/usb/usb.h>
#include <dev/usb/usbdi.h>
#include <dev/usb/usb_core.h>
#include <dev/usb/usb_cdc.h>
#include <dev/usb/usb_ioctl.h>
#include <dev/usb/usb_util.h>
#include <dev/usb/template/usb_template.h>
Go to the source code of this file.
Macros | |
#define | KBD_DEFAULT_VENDOR_ID USB_TEMPLATE_VENDOR |
#define | KBD_DEFAULT_PRODUCT_ID 0x27db |
#define | KBD_DEFAULT_INTERFACE "Keyboard Interface" |
#define | KBD_DEFAULT_MANUFACTURER USB_TEMPLATE_MANUFACTURER |
#define | KBD_DEFAULT_PRODUCT "Keyboard Test Device" |
#define | KBD_DEFAULT_SERIAL_NUMBER "March 2008" |
Enumerations | |
enum | { KBD_LANG_INDEX , KBD_INTERFACE_INDEX , KBD_MANUFACTURER_INDEX , KBD_PRODUCT_INDEX , KBD_SERIAL_NUMBER_INDEX , KBD_MAX_INDEX } |
Functions | |
static const void * | keyboard_get_vendor_desc (const struct usb_device_request *req, uint16_t *plen) |
static const void * | keyboard_get_string_desc (uint16_t lang_id, uint8_t string_index) |
static void | kbd_init (void *arg __unused) |
static void | kbd_uninit (void *arg __unused) |
SYSINIT (kbd_init, SI_SUB_LOCK, SI_ORDER_FIRST, kbd_init, NULL) | |
SYSUNINIT (kbd_uninit, SI_SUB_LOCK, SI_ORDER_FIRST, kbd_uninit, NULL) | |
#define KBD_DEFAULT_INTERFACE "Keyboard Interface" |
Definition at line 81 of file usb_template_kbd.c.
#define KBD_DEFAULT_MANUFACTURER USB_TEMPLATE_MANUFACTURER |
Definition at line 82 of file usb_template_kbd.c.
#define KBD_DEFAULT_PRODUCT "Keyboard Test Device" |
Definition at line 83 of file usb_template_kbd.c.
#define KBD_DEFAULT_PRODUCT_ID 0x27db |
Definition at line 80 of file usb_template_kbd.c.
#define KBD_DEFAULT_SERIAL_NUMBER "March 2008" |
Definition at line 84 of file usb_template_kbd.c.
#define KBD_DEFAULT_VENDOR_ID USB_TEMPLATE_VENDOR |
Definition at line 79 of file usb_template_kbd.c.
anonymous enum |
Enumerator | |
---|---|
KBD_LANG_INDEX | |
KBD_INTERFACE_INDEX | |
KBD_MANUFACTURER_INDEX | |
KBD_PRODUCT_INDEX | |
KBD_SERIAL_NUMBER_INDEX | |
KBD_MAX_INDEX |
Definition at line 70 of file usb_template_kbd.c.
|
static |
Definition at line 238 of file usb_template_kbd.c.
References usb_temp_device_desc::idProduct, usb_temp_device_desc::idVendor, kbd_ctx_list, KBD_DEFAULT_INTERFACE, KBD_DEFAULT_MANUFACTURER, KBD_DEFAULT_PRODUCT, KBD_DEFAULT_SERIAL_NUMBER, kbd_interface, kbd_manufacturer, kbd_product, kbd_serial_number, usb_make_str_desc(), USB_TEMP_KBD, usb_temp_sysctl(), and usb_template_kbd.
|
static |
Definition at line 286 of file usb_template_kbd.c.
References kbd_ctx_list.
|
static |
Definition at line 215 of file usb_template_kbd.c.
References kbd_interface, KBD_INTERFACE_INDEX, KBD_LANG_INDEX, kbd_manufacturer, KBD_MANUFACTURER_INDEX, KBD_MAX_INDEX, kbd_product, KBD_PRODUCT_INDEX, kbd_serial_number, KBD_SERIAL_NUMBER_INDEX, and usb_string_lang_en.
|
static |
Definition at line 196 of file usb_template_kbd.c.
References keyboard_hid_descriptor, plen, and req.
SYSUNINIT | ( | kbd_uninit | , |
SI_SUB_LOCK | , | ||
SI_ORDER_FIRST | , | ||
kbd_uninit | , | ||
NULL | |||
) |
|
static |
Definition at line 91 of file usb_template_kbd.c.
Referenced by kbd_init(), and kbd_uninit().
|
static |
Definition at line 86 of file usb_template_kbd.c.
Referenced by kbd_init(), and keyboard_get_string_desc().
|
static |
Definition at line 87 of file usb_template_kbd.c.
Referenced by kbd_init(), and keyboard_get_string_desc().
|
static |
Definition at line 88 of file usb_template_kbd.c.
Referenced by kbd_init(), and keyboard_get_string_desc().
|
static |
Definition at line 89 of file usb_template_kbd.c.
Referenced by kbd_init(), and keyboard_get_string_desc().
|
static |
Definition at line 158 of file usb_template_kbd.c.
|
static |
Definition at line 165 of file usb_template_kbd.c.
|
static |
Definition at line 129 of file usb_template_kbd.c.
|
static |
Definition at line 121 of file usb_template_kbd.c.
|
static |
Definition at line 170 of file usb_template_kbd.c.
|
static |
Definition at line 171 of file usb_template_kbd.c.
|
static |
Definition at line 109 of file usb_template_kbd.c.
Referenced by keyboard_get_vendor_desc().
|
static |
Definition at line 144 of file usb_template_kbd.c.
|
static |
Definition at line 139 of file usb_template_kbd.c.
|
static |
Definition at line 153 of file usb_template_kbd.c.
|
static |
Definition at line 101 of file usb_template_kbd.c.
|
static |
Definition at line 95 of file usb_template_kbd.c.
|
static |
Definition at line 134 of file usb_template_kbd.c.
struct usb_temp_device_desc usb_template_kbd |
Definition at line 173 of file usb_template_kbd.c.
Referenced by kbd_init(), and usb_temp_setup_by_index().