Linux内核:从驱动程序中删除输入处理程序

时间:2019-03-10 12:14:47

标签: linux-kernel driver linux-device-driver

当我看到cat /proc/bus/input/devices的输出时,我会看到:

I: Bus=0010 Vendor=0001 Product=0001 Version=0100
N: Name="aml_keypad"
P: Phys=keypad/input0
S: Sysfs=/devices/c8100580.rc/input/input0
U: Uniq=
H: Handlers=kbd mouse0 event0 
B: PROP=0
B: EV=7
B: KEY=7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff fffffffffffffffe
B: REL=103

如何从驱动程序中删除处理程序。 (我正在为自己编译内核)

例如,我想从处理程序中删除mouse0

1 个答案:

答案 0 :(得分:1)

为了删除处理程序,只需在驱动程序源代码中注释相关的_set_bit即可。就我而言:

// __set_bit(BTN_MOUSE, dev->input_device->keybit);
// __set_bit(BTN_LEFT, dev->input_device->keybit);
// __set_bit(BTN_RIGHT, dev->input_device->keybit);
// __set_bit(BTN_MIDDLE, dev->input_device->keybit);
//
// __set_bit(EV_REL, dev->input_device->evbit);
// __set_bit(REL_X, dev->input_device->relbit);
// __set_bit(REL_Y, dev->input_device->relbit);
// __set_bit(REL_WHEEL, dev->input_device->relbit);

以上代码段是此file的一部分。