drivers/input/misc/yealink.h

Source file repositories/reference/linux-study-clean/drivers/input/misc/yealink.h

File Facts

System
Linux kernel
Corpus path
drivers/input/misc/yealink.h
Extension
.h
Size
5257 bytes
Lines
207
Domain
Driver Families
Bucket
drivers/input
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct yld_ctl_packet {
	u8	cmd;		/* command code, see below */
	u8	size;		/* 1-11, size of used data bytes. */
	__be16	offset;		/* internal packet offset */
	u8	data[11];
	s8	sum;		/* negative sum of 15 preceding bytes */
} __attribute__ ((packed));

#define USB_PKT_LEN	sizeof(struct yld_ctl_packet)

/* The following yld_ctl_packet's are available: */

/* Init registers
 *
 * cmd		0x8e
 * size		10
 * offset	0
 * data		0,0,0,0....
 */
#define CMD_INIT		0x8e

/* Request key scan
 *
 * cmd		0x80
 * size		1
 * offset	0
 * data[0]	on return returns the key number, if it changes there's a new
 * 		key pressed.
 */
#define CMD_KEYPRESS		0x80

/* Request scancode
 *
 * cmd		0x81
 * size		1
 * offset	key number [0-1f]
 * data[0]	on return returns the scancode
 */
#define CMD_SCANCODE		0x81

/* Set LCD
 *
 * cmd		0x04
 * size		1-11
 * offset	0-23
 * data		segment bits
 */
#define CMD_LCD			0x04

/* Set led
 *
 * cmd		0x05
 * size		1
 * offset	0
 * data[0]	0 OFF / 1 ON
 */
#define CMD_LED			0x05

/* Set ringtone volume
 *
 * cmd		0x11
 * size		1
 * offset	0
 * data[0]	0-0xff  volume
 */
#define CMD_RING_VOLUME		0x11

/* Set ringtone notes
 *
 * cmd		0x02
 * size		1-11
 * offset	0->
 * data		binary representation LE16(-freq), LE16(duration) ....
 */
#define CMD_RING_NOTE		0x02

/* Sound ringtone via the speaker on the back
 *
 * cmd		0x03
 * size		1
 * offset	0
 * data[0]	0 OFF / 0x24 ON
 */
#define CMD_RINGTONE		0x03

/* Sound dial tone via the ear speaker
 *
 * cmd		0x09
 * size		1
 * offset	0

Annotation

Implementation Notes