drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h

Source file repositories/reference/linux-study-clean/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h

File Facts

System
Linux kernel
Corpus path
drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h
Extension
.h
Size
35501 bytes
Lines
780
Domain
Driver Families
Bucket
drivers/hid
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

#ifndef AMD_SFH_HID_REPORT_DESCRIPTOR_H
#define AMD_SFH_HID_REPORT_DESCRIPTOR_H

// Accelerometer 3D Sensor
static const u8 accel3_report_descriptor[] = {
0x05, 0x20,          /* Usage page */
0x09, 0x73,          /* Motion type Accel 3D */
0xA1, 0x00,          /* HID Collection (Physical) */

//feature reports(xmit/receive)
0x85, 1,           /* HID  Report ID */
0x05, 0x20,	   /* HID usage page sensor */
0x0A, 0x09, 0x03,  /* Sensor property and sensor connection type */
0x15, 0,           /* HID logical MIN_8(0) */
0x25, 2,	   /* HID logical MAX_8(2) */
0x75, 8,	   /* HID report size(8) */
0x95, 1,	   /* HID report count(1) */
0xA1, 0x02,	   /* HID collection (logical) */
0x0A, 0x30, 0x08, /* Sensor property connection type intergated sel*/
0x0A, 0x31, 0x08, /* Sensor property connection type attached sel */
0x0A, 0x32, 0x08, /* Sensor property connection type external sel */
0xB1, 0x00,       /* HID feature (Data_Arr_Abs) */
0xC0,		  /* HID end collection */
0x0A, 0x16, 0x03, /* HID usage sensor property reporting state */
0x15, 0,          /* HID logical Min_8(0) */
0x25, 5,	  /* HID logical Max_8(5) */
0x75, 8,	  /* HID report size(8) */
0x95, 1,          /* HID report count(1) */
0xA1, 0x02,	  /* HID collection(logical) */
0x0A, 0x40, 0x08, /* Sensor property report state no events sel */
0x0A, 0x41, 0x08, /* Sensor property report state all events sel */
0x0A, 0x42, 0x08, /* Sensor property report state threshold events sel */
0x0A, 0x43, 0x08, /* Sensor property report state no events wake sel */
0x0A, 0x44, 0x08, /* Sensor property report state all events wake sel */
0x0A, 0x45, 0x08, /* Sensor property report state threshold events wake sel */
0xB1, 0x00,	  /* HID feature (Data_Arr_Abs) */
0xC0,		  /* HID end collection */
0x0A, 0x19, 0x03, /* HID usage sensor property power state */
0x15, 0,	  /* HID logical Min_8(0) */
0x25, 5,	  /* HID logical Max_8(5) */
0x75, 8,	  /* HID report size(8) */
0x95, 1,	  /* HID report count(1) */
0xA1, 0x02,	  /* HID collection(logical) */
0x0A, 0x50, 0x08, /* Sensor property power state undefined sel */
0x0A, 0x51, 0x08, /* Sensor property power state D0 full power  sel */
0x0A, 0x52, 0x08, /* Sensor property power state D1 low power sel */
0x0A, 0x53, 0x08, /* Sensor property power state D2 standby with wake sel */
0x0A, 0x54, 0x08, /* Sensor property power state D3 sleep with wake  sel */
0x0A, 0x55, 0x08, /* Sensor property power state D4 power off sel */
0xB1, 0x00,       /* HID feature (Data_Arr_Abs) */
0xC0,		  /* HID end collection */
0x0A, 0x01, 0x02, /* HID usage sensor state */
0x15, 0,	  /* HID logical Min_8(0) */
0x25, 6,	  /* HID logical Max_8(6) */
0x75, 8,	  /* HID report size(8) */
0x95, 1,	  /* HID report count(1) */
0xA1, 0x02,	  /* HID collection(logical) */
0x0A, 0x00, 0x08, /* HID usage sensor state unknown sel */
0x0A, 0x01, 0x08, /* HID usage sensor state ready sel */
0x0A, 0x02, 0x08, /* HID usage sensor state not available sel */
0x0A, 0x03, 0x08, /* HID usage sensor state no data sel */
0x0A, 0x04, 0x08, /* HID usage sensor state initializing sel */
0x0A, 0x05, 0x08, /* HID usage sensor state access denied sel */
0x0A, 0x06, 0x08, /* HID usage sensor state error sel */
0xB1, 0x00,	  /* HID feature (Data_Arr_Abs) */
0xC0,		  /* HID end collection */
0x0A, 0x0E, 0x03, /* HID usage sensor property report interval */
0x15, 0,	  /* HID logical Min_8(0) */
0x27, 0xFF, 0xFF, 0xFF, 0xFF, /* HID logical Max_32 */

0x75, 32,	  /* HID report size(32) */
0x95, 1,	  /* HID report count(1) */
0x55, 0,	  /* HID unit exponent(0) */
0xB1, 0x02,	  /* HID feature (Data_Arr_Abs) */
0x0A, 0x52, 0x14, /* Sensor data motion accel and mod change sensitivity ABS) */

0x15, 0,		/* HID logical Min_8(0) */
0x26, 0xFF, 0xFF,	/* HID logical Max_16(0xFF,0xFF) */

0x75, 16,		/* HID report size(16) */
0x95, 1,		/* HID report count(1) */
0x55, 0x0E,		/* HID unit exponent(0x0E) */
0xB1, 0x02,		/* HID feature (Data_Arr_Abs) */
0x0A, 0x52, 0x24,	/* HID usage sensor data (motion accel and mod max) */

0x16, 0x01, 0x80,	/* HID logical Min_16(0x01,0x80) */

0x26, 0xFF, 0x7F,	/* HID logical Max_16(0xFF,0x7F) */

0x75, 16,		/* HID report size(16) */

Annotation

Implementation Notes