Loading drivers/input/gameport/Kconfig +0 −20 Original line number Diff line number Diff line Loading @@ -68,23 +68,3 @@ config GAMEPORT_CS461X depends on PCI endif # Yes, SOUND_GAMEPORT looks a bit odd. Yes, it ends up being turned on # in every .config. Please don't touch it. It is here to handle an # unusual dependency between GAMEPORT and sound drivers. # # Some sound drivers call gameport functions. If GAMEPORT is # not selected, empty stubs are provided for the functions and all is # well. # If GAMEPORT is built in, everything is fine. # If GAMEPORT is a module, however, it would need to be loaded for the # sound driver to be able to link properly. Therefore, the sound # driver must be a module as well in that case. Since there's no way # to express that directly in Kconfig, we use SOUND_GAMEPORT to # express it. SOUND_GAMEPORT boils down to "if GAMEPORT is 'm', # anything that depends on SOUND_GAMEPORT must be 'm' as well. if # GAMEPORT is 'y' or 'n', it can be anything". config SOUND_GAMEPORT tristate default m if GAMEPORT=m default y drivers/input/joydev.c +1 −1 Original line number Diff line number Diff line Loading @@ -422,7 +422,7 @@ static struct input_handle *joydev_connect(struct input_handler *handler, struct joydev->nkey++; } for (i = 0; i < BTN_JOYSTICK - BTN_MISC + 1; i++) for (i = 0; i < BTN_JOYSTICK - BTN_MISC; i++) if (test_bit(i + BTN_MISC, dev->keybit)) { joydev->keymap[i] = joydev->nkey; joydev->keypam[joydev->nkey] = i + BTN_MISC; Loading drivers/input/mouse/psmouse-base.c +5 −2 Original line number Diff line number Diff line Loading @@ -518,13 +518,16 @@ static int psmouse_probe(struct psmouse *psmouse) /* * First, we check if it's a mouse. It should send 0x00 or 0x03 * in case of an IntelliMouse in 4-byte mode or 0x04 for IM Explorer. * Sunrex K8561 IR Keyboard/Mouse reports 0xff on second and subsequent * ID queries, probably due to a firmware bug. */ param[0] = 0xa5; if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID)) return -1; if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04) if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04 && param[0] != 0xff) return -1; /* Loading Loading @@ -972,7 +975,7 @@ static int psmouse_set_maxproto(const char *val, struct kernel_param *kp) return -EINVAL; if (!strncmp(val, "any", 3)) { *((unsigned int *)kp->arg) = -1UL; *((unsigned int *)kp->arg) = -1U; return 0; } Loading drivers/input/mouse/synaptics.c +5 −34 Original line number Diff line number Diff line Loading @@ -143,39 +143,6 @@ static int synaptics_identify(struct psmouse *psmouse) return -1; } static void print_ident(struct synaptics_data *priv) { printk(KERN_INFO "Synaptics Touchpad, model: %ld\n", SYN_ID_MODEL(priv->identity)); printk(KERN_INFO " Firmware: %ld.%ld\n", SYN_ID_MAJOR(priv->identity), SYN_ID_MINOR(priv->identity)); if (SYN_MODEL_ROT180(priv->model_id)) printk(KERN_INFO " 180 degree mounted touchpad\n"); if (SYN_MODEL_PORTRAIT(priv->model_id)) printk(KERN_INFO " portrait touchpad\n"); printk(KERN_INFO " Sensor: %ld\n", SYN_MODEL_SENSOR(priv->model_id)); if (SYN_MODEL_NEWABS(priv->model_id)) printk(KERN_INFO " new absolute packet format\n"); if (SYN_MODEL_PEN(priv->model_id)) printk(KERN_INFO " pen detection\n"); if (SYN_CAP_EXTENDED(priv->capabilities)) { printk(KERN_INFO " Touchpad has extended capability bits\n"); if (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap)) printk(KERN_INFO " -> %d multi-buttons, i.e. besides standard buttons\n", (int)(SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap))); if (SYN_CAP_MIDDLE_BUTTON(priv->capabilities)) printk(KERN_INFO " -> middle button\n"); if (SYN_CAP_FOUR_BUTTON(priv->capabilities)) printk(KERN_INFO " -> four buttons\n"); if (SYN_CAP_MULTIFINGER(priv->capabilities)) printk(KERN_INFO " -> multifinger detection\n"); if (SYN_CAP_PALMDETECT(priv->capabilities)) printk(KERN_INFO " -> palm detection\n"); if (SYN_CAP_PASS_THROUGH(priv->capabilities)) printk(KERN_INFO " -> pass-through port\n"); } } static int synaptics_query_hardware(struct psmouse *psmouse) { int retries = 0; Loading Loading @@ -666,7 +633,11 @@ int synaptics_init(struct psmouse *psmouse) priv->pkt_type = SYN_MODEL_NEWABS(priv->model_id) ? SYN_NEWABS : SYN_OLDABS; print_ident(priv); printk(KERN_INFO "Synaptics Touchpad, model: %ld, fw: %ld.%ld, id: %#lx, caps: %#lx/%#lx\n", SYN_ID_MODEL(priv->identity), SYN_ID_MAJOR(priv->identity), SYN_ID_MINOR(priv->identity), priv->model_id, priv->capabilities, priv->ext_cap); set_input_params(&psmouse->dev, priv); psmouse->protocol_handler = synaptics_process_byte; Loading drivers/input/serio/i8042-x86ia64io.h +26 −6 Original line number Diff line number Diff line Loading @@ -88,9 +88,11 @@ static struct dmi_system_id __initdata i8042_dmi_noloop_table[] = { }; /* * Some Fujitsu notebooks are ahving trouble with touhcpads if * Some Fujitsu notebooks are having trouble with touchpads if * active multiplexing mode is activated. Luckily they don't have * external PS/2 ports so we can safely disable it. * ... apparently some Toshibas don't like MUX mode either and * die horrible death on reboot. */ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { { Loading @@ -114,6 +116,13 @@ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook S Series"), }, }, { .ident = "Fujitsu Lifebook S6230", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU"), DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook S6230"), }, }, { .ident = "Fujitsu T70H", .matches = { Loading @@ -121,6 +130,13 @@ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "FMVLT70H"), }, }, { .ident = "Toshiba P10", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME, "Satellite P10"), }, }, { } }; Loading Loading @@ -215,19 +231,23 @@ static struct pnp_driver i8042_pnp_aux_driver = { static void i8042_pnp_exit(void) { if (i8042_pnp_kbd_registered) if (i8042_pnp_kbd_registered) { i8042_pnp_kbd_registered = 0; pnp_unregister_driver(&i8042_pnp_kbd_driver); } if (i8042_pnp_aux_registered) if (i8042_pnp_aux_registered) { i8042_pnp_aux_registered = 0; pnp_unregister_driver(&i8042_pnp_aux_driver); } } static int i8042_pnp_init(void) { int result_kbd, result_aux; if (i8042_nopnp) { printk("i8042: PNP detection disabled\n"); printk(KERN_INFO "i8042: PNP detection disabled\n"); return 0; } Loading @@ -241,7 +261,7 @@ static int i8042_pnp_init(void) #if defined(__ia64__) return -ENODEV; #else printk(KERN_WARNING "PNP: No PS/2 controller found. Probing ports directly.\n"); printk(KERN_INFO "PNP: No PS/2 controller found. Probing ports directly.\n"); return 0; #endif } Loading @@ -265,7 +285,7 @@ static int i8042_pnp_init(void) i8042_pnp_kbd_irq = i8042_kbd_irq; } if (result_aux > 0 && !i8042_pnp_aux_irq) { if (!i8042_pnp_aux_irq) { printk(KERN_WARNING "PNP: PS/2 controller doesn't have AUX irq; using default %#x\n", i8042_aux_irq); i8042_pnp_aux_irq = i8042_aux_irq; } Loading Loading
drivers/input/gameport/Kconfig +0 −20 Original line number Diff line number Diff line Loading @@ -68,23 +68,3 @@ config GAMEPORT_CS461X depends on PCI endif # Yes, SOUND_GAMEPORT looks a bit odd. Yes, it ends up being turned on # in every .config. Please don't touch it. It is here to handle an # unusual dependency between GAMEPORT and sound drivers. # # Some sound drivers call gameport functions. If GAMEPORT is # not selected, empty stubs are provided for the functions and all is # well. # If GAMEPORT is built in, everything is fine. # If GAMEPORT is a module, however, it would need to be loaded for the # sound driver to be able to link properly. Therefore, the sound # driver must be a module as well in that case. Since there's no way # to express that directly in Kconfig, we use SOUND_GAMEPORT to # express it. SOUND_GAMEPORT boils down to "if GAMEPORT is 'm', # anything that depends on SOUND_GAMEPORT must be 'm' as well. if # GAMEPORT is 'y' or 'n', it can be anything". config SOUND_GAMEPORT tristate default m if GAMEPORT=m default y
drivers/input/joydev.c +1 −1 Original line number Diff line number Diff line Loading @@ -422,7 +422,7 @@ static struct input_handle *joydev_connect(struct input_handler *handler, struct joydev->nkey++; } for (i = 0; i < BTN_JOYSTICK - BTN_MISC + 1; i++) for (i = 0; i < BTN_JOYSTICK - BTN_MISC; i++) if (test_bit(i + BTN_MISC, dev->keybit)) { joydev->keymap[i] = joydev->nkey; joydev->keypam[joydev->nkey] = i + BTN_MISC; Loading
drivers/input/mouse/psmouse-base.c +5 −2 Original line number Diff line number Diff line Loading @@ -518,13 +518,16 @@ static int psmouse_probe(struct psmouse *psmouse) /* * First, we check if it's a mouse. It should send 0x00 or 0x03 * in case of an IntelliMouse in 4-byte mode or 0x04 for IM Explorer. * Sunrex K8561 IR Keyboard/Mouse reports 0xff on second and subsequent * ID queries, probably due to a firmware bug. */ param[0] = 0xa5; if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID)) return -1; if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04) if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04 && param[0] != 0xff) return -1; /* Loading Loading @@ -972,7 +975,7 @@ static int psmouse_set_maxproto(const char *val, struct kernel_param *kp) return -EINVAL; if (!strncmp(val, "any", 3)) { *((unsigned int *)kp->arg) = -1UL; *((unsigned int *)kp->arg) = -1U; return 0; } Loading
drivers/input/mouse/synaptics.c +5 −34 Original line number Diff line number Diff line Loading @@ -143,39 +143,6 @@ static int synaptics_identify(struct psmouse *psmouse) return -1; } static void print_ident(struct synaptics_data *priv) { printk(KERN_INFO "Synaptics Touchpad, model: %ld\n", SYN_ID_MODEL(priv->identity)); printk(KERN_INFO " Firmware: %ld.%ld\n", SYN_ID_MAJOR(priv->identity), SYN_ID_MINOR(priv->identity)); if (SYN_MODEL_ROT180(priv->model_id)) printk(KERN_INFO " 180 degree mounted touchpad\n"); if (SYN_MODEL_PORTRAIT(priv->model_id)) printk(KERN_INFO " portrait touchpad\n"); printk(KERN_INFO " Sensor: %ld\n", SYN_MODEL_SENSOR(priv->model_id)); if (SYN_MODEL_NEWABS(priv->model_id)) printk(KERN_INFO " new absolute packet format\n"); if (SYN_MODEL_PEN(priv->model_id)) printk(KERN_INFO " pen detection\n"); if (SYN_CAP_EXTENDED(priv->capabilities)) { printk(KERN_INFO " Touchpad has extended capability bits\n"); if (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap)) printk(KERN_INFO " -> %d multi-buttons, i.e. besides standard buttons\n", (int)(SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap))); if (SYN_CAP_MIDDLE_BUTTON(priv->capabilities)) printk(KERN_INFO " -> middle button\n"); if (SYN_CAP_FOUR_BUTTON(priv->capabilities)) printk(KERN_INFO " -> four buttons\n"); if (SYN_CAP_MULTIFINGER(priv->capabilities)) printk(KERN_INFO " -> multifinger detection\n"); if (SYN_CAP_PALMDETECT(priv->capabilities)) printk(KERN_INFO " -> palm detection\n"); if (SYN_CAP_PASS_THROUGH(priv->capabilities)) printk(KERN_INFO " -> pass-through port\n"); } } static int synaptics_query_hardware(struct psmouse *psmouse) { int retries = 0; Loading Loading @@ -666,7 +633,11 @@ int synaptics_init(struct psmouse *psmouse) priv->pkt_type = SYN_MODEL_NEWABS(priv->model_id) ? SYN_NEWABS : SYN_OLDABS; print_ident(priv); printk(KERN_INFO "Synaptics Touchpad, model: %ld, fw: %ld.%ld, id: %#lx, caps: %#lx/%#lx\n", SYN_ID_MODEL(priv->identity), SYN_ID_MAJOR(priv->identity), SYN_ID_MINOR(priv->identity), priv->model_id, priv->capabilities, priv->ext_cap); set_input_params(&psmouse->dev, priv); psmouse->protocol_handler = synaptics_process_byte; Loading
drivers/input/serio/i8042-x86ia64io.h +26 −6 Original line number Diff line number Diff line Loading @@ -88,9 +88,11 @@ static struct dmi_system_id __initdata i8042_dmi_noloop_table[] = { }; /* * Some Fujitsu notebooks are ahving trouble with touhcpads if * Some Fujitsu notebooks are having trouble with touchpads if * active multiplexing mode is activated. Luckily they don't have * external PS/2 ports so we can safely disable it. * ... apparently some Toshibas don't like MUX mode either and * die horrible death on reboot. */ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { { Loading @@ -114,6 +116,13 @@ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook S Series"), }, }, { .ident = "Fujitsu Lifebook S6230", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU"), DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook S6230"), }, }, { .ident = "Fujitsu T70H", .matches = { Loading @@ -121,6 +130,13 @@ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "FMVLT70H"), }, }, { .ident = "Toshiba P10", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME, "Satellite P10"), }, }, { } }; Loading Loading @@ -215,19 +231,23 @@ static struct pnp_driver i8042_pnp_aux_driver = { static void i8042_pnp_exit(void) { if (i8042_pnp_kbd_registered) if (i8042_pnp_kbd_registered) { i8042_pnp_kbd_registered = 0; pnp_unregister_driver(&i8042_pnp_kbd_driver); } if (i8042_pnp_aux_registered) if (i8042_pnp_aux_registered) { i8042_pnp_aux_registered = 0; pnp_unregister_driver(&i8042_pnp_aux_driver); } } static int i8042_pnp_init(void) { int result_kbd, result_aux; if (i8042_nopnp) { printk("i8042: PNP detection disabled\n"); printk(KERN_INFO "i8042: PNP detection disabled\n"); return 0; } Loading @@ -241,7 +261,7 @@ static int i8042_pnp_init(void) #if defined(__ia64__) return -ENODEV; #else printk(KERN_WARNING "PNP: No PS/2 controller found. Probing ports directly.\n"); printk(KERN_INFO "PNP: No PS/2 controller found. Probing ports directly.\n"); return 0; #endif } Loading @@ -265,7 +285,7 @@ static int i8042_pnp_init(void) i8042_pnp_kbd_irq = i8042_kbd_irq; } if (result_aux > 0 && !i8042_pnp_aux_irq) { if (!i8042_pnp_aux_irq) { printk(KERN_WARNING "PNP: PS/2 controller doesn't have AUX irq; using default %#x\n", i8042_aux_irq); i8042_pnp_aux_irq = i8042_aux_irq; } Loading