Linux-hid

/kernel/drivers/hid/hid-core.c

hid总线驱动

/kernel/drivers/hid/hid-generic.c

hid通用驱动

/kernel/drivers/hid/hid-multitouch.c

多点触控面板驱动

/kernel/drivers/hid/hid-quirks.c

hid-quirks.c 是 Linux 内核中的一个文件,用于实现 HID(Human Interface Device)设备的修正和补丁。
在 Linux 系统中,不同的 HID 设备可能存在一些硬件或固件上的问题,导致其在正常使用时出现兼容性或功能方面的限制。
hid-quirks.c 中的驱动程序可以通过对这些设备应用特定的修正和补丁,解决或规避这些问题。

struct hid_device_id hid_quirks[]
struct hid_device_id hid_have_special_driver[]
struct hid_device_id hid_ignore_list[]
struct hid_device_id hid_mouse_ignore_list[]

bool hid_ignore(struct hid_device *hdev)	//判断hid设备是否被忽略
static struct hid_device_id *hid_exists_dquirk(const struct hid_device *hdev)	//查找hid设备动态quirk
static int hid_modify_dquirk(const struct hid_device_id *id, const unsigned long quirks)	//修改hid设备动态quirk
static void hid_remove_all_dquirks(__u16 bus)	//删除所有hid设备动态quirk
int hid_quirks_init(char **quirks_param, __u16 bus, int count)	//模块加载时应用具体的quirk
void hid_quirks_exit(__u16 bus)	//释放内存中的动态quirk
static unsigned long hid_gets_squirk(const struct hid_device *hdev)	//查找hid设备静态quirk
unsigned long hid_lookup_quirk(const struct hid_device *hdev)	//查找hid设备动态和静态quirk

你可能感兴趣的:(Linux,linux)