Hello, This is the most basic code I could think off to just print out the device descriptor fields.
---------------------------------------------------- #include <linux/kernel.h> #include <linux/module.h> #include <linux/usb.h> static void * my_usb_probe ( struct usb_device *dev, unsigned int ifnum, const struct usb_device_id *table ); static struct usb_driver my_usb_driver = { name : "driver", probe : my_usb_probe }; static void * my_usb_probe ( struct usb_device *dev, unsigned int ifnum, const struct usb_device_id *table ) { dbg("%d %d",dev->descriptor.idVendor, dev->descriptor.idProduct); return NULL; } int my_driver_init() { dbg("in init"); usb_register(&my_usb_driver); return 0; } void my_driver_exit() { dbg("in exit"); } module_init (my_driver_init); module_exit (my_driver_exit); ----------------------------------------------------- The module loads and I see "in init" in dmesg but the values for idVendor and idProduct are wrong. Is there anything that I am doing wrong here.? I included all the header files mentioned in usb_skeleton.c and the module loading gives segmentation fault. I compile the code using gcc -c -I/usr/src/linux/include -DDEBUG -D__KERNEL__ -DMODULE my_driver.c Thanks in advance Naveen __________________________________________________ Do You Yahoo!? Send your FREE holiday greetings online! http://greetings.yahoo.com _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel