Hi Guys, Just wondering what I am doing wrong. I can't see my logs. I figured out what driver is used for my keyboard and started adding logging: [curtine@localhost ~]$ sudo lsusb -v | grep eyboard -B 13 Bus 001 Device 003: ID 04ca:008d Lite-On Technology Corp. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 32 idVendor 0x04ca Lite-On Technology Corp. idProduct 0x008d bcdDevice 0.39 iManufacturer 1 Lite-On Technology Corp. iProduct 2 HP Wireless Keyboard Kit -- iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 1 Keyboard [curtine@localhost ~]$ sudo lsusb -t /: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M |__ Port 4: Dev 2, If 0, Class=Wireless, Driver=btusb, 12M |__ Port 4: Dev 2, If 1, Class=Wireless, Driver=btusb, 12M |__ Port 7: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 7: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 7: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 9: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M |__ Port 9: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M So, first I added a little logging and then some more, but I can't see any of it (see patch at bottom of email, I used KERN_EMERG, it's just temporary logging). I'm think I'm doing most things right, this is how I compile my code I wrote a little script (I'm on fedora): #!/bin/sh find /boot -name '*4.3*' | xargs sudo rm -rf find /lib/modules -name '*4.3*' | xargs sudo rm -rf set -e cd $HOME/git/linux # make -j5 oldconfig printf "completed 1\n" make -j5 bzImage printf "completed 2\n" make -j5 modules printf "completed 3\n" sudo make -j5 modules_install printf "completed 4\n" sudo make -j5 install I reboot, load new kernel, blah blah. When I type keys I don't see my logs in dmesg, I don't see them in /var/log/messages either, I don't see them in /home/curtine/log.log either when I do a: sudo killall klogd sudo /sbin/klogd -f /home/curtine/log.log What am I doing wrong here? Also, as regards etiquette on these mailing lists, is it ok to regularly cc linux-kernel@xxxxxxxxxxxxxxx? diff --git a/drivers/hid/usbhid/usbkbd.c b/drivers/hid/usbhid/usbkbd.c index 9a332e6..2038d94 100644 --- a/drivers/hid/usbhid/usbkbd.c +++ b/drivers/hid/usbhid/usbkbd.c @@ -112,6 +112,7 @@ struct usb_kbd { static void usb_kbd_irq(struct urb *urb) { + printk(KERN_EMERG "usb_kbd_irq"); struct usb_kbd *kbd = urb->context; int i; @@ -166,6 +167,7 @@ resubmit: static int usb_kbd_event(struct input_dev *dev, unsigned int type, unsigned int code, int value) { + printk(KERN_EMERG "usb_kbd_event"); unsigned long flags; struct usb_kbd *kbd = input_get_drvdata(dev); @@ -202,6 +204,7 @@ static int usb_kbd_event(struct input_dev *dev, unsigned int type, static void usb_kbd_led(struct urb *urb) { + printk(KERN_EMERG "usb_kbd_led"); unsigned long flags; struct usb_kbd *kbd = urb->context; @@ -230,6 +233,7 @@ static void usb_kbd_led(struct urb *urb) static int usb_kbd_open(struct input_dev *dev) { + printk(KERN_EMERG "usb_kbd_open"); struct usb_kbd *kbd = input_get_drvdata(dev); kbd->irq->dev = kbd->usbdev; @@ -241,6 +245,7 @@ static int usb_kbd_open(struct input_dev *dev) static void usb_kbd_close(struct input_dev *dev) { + printk(KERN_EMERG "usb_kbd_close"); struct usb_kbd *kbd = input_get_drvdata(dev); usb_kill_urb(kbd->irq); @@ -248,6 +253,7 @@ static void usb_kbd_close(struct input_dev *dev) static int usb_kbd_alloc_mem(struct usb_device *dev, struct usb_kbd *kbd) { + printk(KERN_EMERG "usb_kbd_alloc_mem"); if (!(kbd->irq = usb_alloc_urb(0, GFP_KERNEL))) return -1; if (!(kbd->led = usb_alloc_urb(0, GFP_KERNEL))) @@ -264,6 +270,7 @@ static int usb_kbd_alloc_mem(struct usb_device *dev, struct usb_kbd *kbd) static void usb_kbd_free_mem(struct usb_device *dev, struct usb_kbd *kbd) { + printk(KERN_EMERG "usb_kbd_free_mem"); usb_free_urb(kbd->irq); usb_free_urb(kbd->led); usb_free_coherent(dev, 8, kbd->new, kbd->new_dma); @@ -274,6 +281,7 @@ static void usb_kbd_free_mem(struct usb_device *dev, struct usb_kbd *kbd) static int usb_kbd_probe(struct usb_interface *iface, const struct usb_device_id *id) { + printk(KERN_EMERG "usb_kbd_probe"); struct usb_device *dev = interface_to_usbdev(iface); struct usb_host_interface *interface; struct usb_endpoint_descriptor *endpoint; @@ -381,6 +389,7 @@ fail1: static void usb_kbd_disconnect(struct usb_interface *intf) { + printk(KERN_EMERG "usb_kbd_disconnect"); struct usb_kbd *kbd = usb_get_intfdata (intf); usb_set_intfdata(intf, NULL); -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html