aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-input.c
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2007-05-30 09:07:13 -0400
committerJiri Kosina <jkosina@suse.cz>2007-07-09 08:03:35 -0400
commit58037eb961f859607b161c50d9d4ecb374de1e8f (patch)
treec192854fa4cfc16cce272b800a0393e21429191e /drivers/hid/hid-input.c
parent7dcca30a32aadb0520417521b0c44f42d09fe05c (diff)
HID: make debugging output runtime-configurable
There have been many reports recently about broken HID devices, the diagnosis of which required users to recompile their kernels in order to be able to provide debugging output needed for coding a quirk for a particular device. This patch makes CONFIG_HID_DEBUG default y if !EMBEDDED and makes it possible to control debugging output produced by HID code by supplying 'debug=1' module parameter. Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/hid-input.c')
-rw-r--r--drivers/hid/hid-input.c26
1 files changed, 10 insertions, 16 deletions
diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
index 7f817897b178..38595d3935ce 100644
--- a/drivers/hid/hid-input.c
+++ b/drivers/hid/hid-input.c
@@ -308,9 +308,7 @@ static int hidinput_setkeycode(struct input_dev *dev, int scancode,
308 308
309 clear_bit(old_keycode, dev->keybit); 309 clear_bit(old_keycode, dev->keybit);
310 set_bit(usage->code, dev->keybit); 310 set_bit(usage->code, dev->keybit);
311#ifdef CONFIG_HID_DEBUG 311 dbg_hid(KERN_DEBUG "Assigned keycode %d to HID usage code %x\n", keycode, scancode);
312 printk (KERN_DEBUG "Assigned keycode %d to HID usage code %x\n", keycode, scancode);
313#endif
314 /* Set the keybit for the old keycode if the old keycode is used 312 /* Set the keybit for the old keycode if the old keycode is used
315 * by another key */ 313 * by another key */
316 if (hidinput_find_key (hid, 0, old_keycode)) 314 if (hidinput_find_key (hid, 0, old_keycode))
@@ -333,11 +331,9 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel
333 331
334 field->hidinput = hidinput; 332 field->hidinput = hidinput;
335 333
336#ifdef CONFIG_HID_DEBUG 334 dbg_hid("Mapping: ");
337 printk(KERN_DEBUG "Mapping: ");
338 hid_resolv_usage(usage->hid); 335 hid_resolv_usage(usage->hid);
339 printk(" ---> "); 336 dbg_hid_line(" ---> ");
340#endif
341 337
342 if (field->flags & HID_MAIN_ITEM_CONSTANT) 338 if (field->flags & HID_MAIN_ITEM_CONSTANT)
343 goto ignore; 339 goto ignore;
@@ -819,15 +815,13 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel
819 } 815 }
820 816
821 hid_resolv_event(usage->type, usage->code); 817 hid_resolv_event(usage->type, usage->code);
822#ifdef CONFIG_HID_DEBUG 818
823 printk("\n"); 819 dbg_hid_line("\n");
824#endif 820
825 return; 821 return;
826 822
827ignore: 823ignore:
828#ifdef CONFIG_HID_DEBUG 824 dbg_hid_line("IGNORED\n");
829 printk("IGNORED\n");
830#endif
831 return; 825 return;
832} 826}
833 827
@@ -896,12 +890,12 @@ void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct
896 } 890 }
897 891
898 if (usage->hid == (HID_UP_PID | 0x83UL)) { /* Simultaneous Effects Max */ 892 if (usage->hid == (HID_UP_PID | 0x83UL)) { /* Simultaneous Effects Max */
899 dbg("Maximum Effects - %d",value); 893 dbg_hid("Maximum Effects - %d\n",value);
900 return; 894 return;
901 } 895 }
902 896
903 if (usage->hid == (HID_UP_PID | 0x7fUL)) { 897 if (usage->hid == (HID_UP_PID | 0x7fUL)) {
904 dbg("PID Pool Report\n"); 898 dbg_hid("PID Pool Report\n");
905 return; 899 return;
906 } 900 }
907 901
@@ -994,7 +988,7 @@ int hidinput_connect(struct hid_device *hid)
994 if (!hidinput || !input_dev) { 988 if (!hidinput || !input_dev) {
995 kfree(hidinput); 989 kfree(hidinput);
996 input_free_device(input_dev); 990 input_free_device(input_dev);
997 err("Out of memory during hid input probe"); 991 err_hid("Out of memory during hid input probe");
998 return -1; 992 return -1;
999 } 993 }
1000 994