iPXE
Data Fields
usb_keyboard Struct Reference

A USB keyboard device. More...

#include <usbkbd.h>

Data Fields

const char * name
 Name. More...
 
struct list_head list
 List of all USB keyboards. More...
 
struct usb_busbus
 USB bus. More...
 
struct usb_hid hid
 USB human interface device. More...
 
struct usb_keyboard_report report
 Most recent keyboard report. More...
 
unsigned int keycode
 Most recently pressed non-modifier key (if any) More...
 
unsigned int holdoff
 Autorepeat hold-off time (in number of completions reported) More...
 
uint8_t leds
 Keyboard LED state. More...
 
uint8_t leds_changed
 Keyboard LEDs changed. More...
 
unsigned int key [USBKBD_BUFSIZE]
 Keyboard buffer. More...
 
unsigned int prod
 Keyboard buffer producer counter. More...
 
unsigned int cons
 Keyboard buffer consumer counter. More...
 
unsigned int subcons
 Keyboard buffer sub-consumer counter. More...
 

Detailed Description

A USB keyboard device.

Definition at line 118 of file usbkbd.h.

Field Documentation

◆ name

const char* usb_keyboard::name

◆ list

struct list_head usb_keyboard::list

List of all USB keyboards.

Definition at line 122 of file usbkbd.h.

Referenced by usbkbd_getchar(), usbkbd_iskey(), usbkbd_probe(), and usbkbd_remove().

◆ bus

struct usb_bus* usb_keyboard::bus

USB bus.

Definition at line 125 of file usbkbd.h.

Referenced by usbkbd_iskey(), and usbkbd_probe().

◆ hid

struct usb_hid usb_keyboard::hid

USB human interface device.

Definition at line 127 of file usbkbd.h.

Referenced by usbkbd_complete(), usbkbd_iskey(), usbkbd_probe(), usbkbd_remove(), and usbkbd_set_leds().

◆ report

struct usb_keyboard_report usb_keyboard::report

Most recent keyboard report.

Definition at line 130 of file usbkbd.h.

Referenced by usbkbd_probe(), and usbkbd_report().

◆ keycode

unsigned int usb_keyboard::keycode

Most recently pressed non-modifier key (if any)

Definition at line 132 of file usbkbd.h.

Referenced by usbkbd_report().

◆ holdoff

unsigned int usb_keyboard::holdoff

Autorepeat hold-off time (in number of completions reported)

Definition at line 134 of file usbkbd.h.

Referenced by usbkbd_report().

◆ leds

uint8_t usb_keyboard::leds

Keyboard LED state.

Definition at line 137 of file usbkbd.h.

Referenced by usbkbd_produce(), and usbkbd_set_leds().

◆ leds_changed

uint8_t usb_keyboard::leds_changed

Keyboard LEDs changed.

Definition at line 139 of file usbkbd.h.

Referenced by usbkbd_iskey(), and usbkbd_produce().

◆ key

unsigned int usb_keyboard::key[USBKBD_BUFSIZE]

Keyboard buffer.

This stores iPXE key values.

Definition at line 145 of file usbkbd.h.

Referenced by usbkbd_consume(), and usbkbd_produce().

◆ prod

unsigned int usb_keyboard::prod

Keyboard buffer producer counter.

Definition at line 147 of file usbkbd.h.

Referenced by usbkbd_fill(), and usbkbd_produce().

◆ cons

unsigned int usb_keyboard::cons

Keyboard buffer consumer counter.

Definition at line 149 of file usbkbd.h.

Referenced by usbkbd_consume(), and usbkbd_fill().

◆ subcons

unsigned int usb_keyboard::subcons

Keyboard buffer sub-consumer counter.

This represents the index within the ANSI escape sequence corresponding to an iPXE key value.

Definition at line 155 of file usbkbd.h.

Referenced by usbkbd_consume().


The documentation for this struct was generated from the following file: