19 Nov, 2011
1 commit
-
This converts the drivers in drivers/usb/* to use the
module_usb_driver() macro which makes the code smaller and a bit
simpler.Added bonus is that it removes some unneeded kernel log messages about
drivers loading and/or unloading.Cc: Simon Arlott
Cc: Duncan Sands
Cc: Matthieu CASTET
Cc: Stanislaw Gruszka
Cc: Pete Zaitcev
Cc: Oliver Neukum
Cc: Juergen Stuber
Cc: Cesar Miquel
Cc: Matthew Dharm
Cc: Matthew Wilcox
Cc: Sarah Sharp
Cc: Kuninori Morimoto
Cc: Felipe Balbi
Cc: Lucas De Marchi
Cc: Michael Hund
Cc: Zack Parsons
Cc: Melchior FRANZ
Cc: Tomoki Sekiyama
Cc: Dan Carpenter
Signed-off-by: Greg Kroah-Hartman
03 Mar, 2010
1 commit
-
The id_table field of the struct usb_device_id is constant in
so it is worth to make the initialization data also constant.The semantic match that finds this kind of pattern is as follows:
(http://coccinelle.lip6.fr/)//
@r@
disable decl_init,const_decl_init;
identifier I1, I2, x;
@@
struct I1 {
...
const struct I2 *x;
...
};
@s@
identifier r.I1, y;
identifier r.x, E;
@@
struct I1 y = {
.x = E,
};
@c@
identifier r.I2;
identifier s.E;
@@
const struct I2 E[] = ... ;
@depends on !c@
identifier r.I2;
identifier s.E;
@@
+ const
struct I2 E[] = ...;
//Signed-off-by: Németh Márton
Cc: Julia Lawall
Cc: cocci@diku.dk
Signed-off-by: Greg Kroah-Hartman
08 Jan, 2009
1 commit
-
Fix oops introduced by commit ae93a55bf948753de0bb8e43fa9c027f786abb05
(emi26: use request_firmware()):usb 1-1: new full speed USB device using uhci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
emi26 - firmware loader 1-1:1.0: emi26_probe start
usb 1-1: firmware: requesting emi26/loader.fw
usb 1-1: firmware: requesting emi26/bitstream.fw
usb 1-1: firmware: requesting emi26/firmware.fw
usb 1-1: emi26_set_reset - 1
usb 1-1: emi26_set_reset - 0
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [] emi26_probe+0x2f7/0x620 [emi26]
*pde = 00000000
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/firmware/1-1/loading
Modules linked in: emi26(+) ipv6 cpufreq_ondemand coretemp arc4 ecb iwl3945 irtty_sir sir_dev nsc_ircc ehci_hcd uhci_hcd mac80211 irda usbcore snd_hda_intel thinkpad_acpi rfkill hwmon led_class e1000e snd_pcm cfg80211 snd_timer crc_ccitt snd snd_page_alloc aes_genericPid: 5082, comm: modprobe Not tainted (2.6.28 #2) 17023QG
EIP: 0060:[] EFLAGS: 00010206 CPU: 0
EIP is at emi26_probe+0x2f7/0x620 [emi26]
EAX: 0000015c EBX: 00000000 ECX: c1ffd9c0 EDX: 00000000
ESI: 0000015c EDI: f6bb215c EBP: f6bb0400 ESP: f00ebcfc
DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process modprobe (pid: 5082, ti=f00ea000 task=f5c7c700 task.ti=f00ea000)
Stack:
0000015c 000000a5 f6a67cb8 f80dc7e0 c01c6262 fbef2986 f6bb2000 00008fe0
0000015c f715f748 f715f740 f715f738 f715f748 f6a67c00 f80dd040 f80dcfc0
f6bb0400 fbacb290 f6a67c94 fbae0160 c01c70bf 00000000 f6a67c1c 00000000
Call Trace:
[] sysfs_add_one+0x12/0x50
[] usb_probe_interface+0xa0/0x140 [usbcore]
[] sysfs_create_link+0xf/0x20
[] driver_probe_device+0x82/0x180
[] usb_match_id+0x3b/0x50 [usbcore]
[] __driver_attach+0x7e/0x80
[] bus_for_each_dev+0x3a/0x60
[] driver_attach+0x16/0x20
[] __driver_attach+0x0/0x80
[] bus_add_driver+0x1a1/0x220
[] driver_register+0x4d/0x120
[] idr_get_empty_slot+0xf2/0x290
[] usb_register_driver+0x81/0x100 [usbcore]
[] emi26_init+0x0/0x14 [emi26]
[] do_one_initcall+0x36/0x1b0
[] sysfs_ilookup_test+0x0/0x10
[] ifind+0x31/0x90
[] __sysfs_add_one+0x59/0x80
[] sysfs_addrm_finish+0x14/0x1c0
[] __vunmap+0xa3/0xd0
[] load_module+0x1544/0x1640
[] sys_init_module+0x87/0x1b0
[] sys_read+0x41/0x70
[] sysenter_do_call+0x12/0x21
[] wait_for_common+0x40/0x110
Code: 66 c1 e8 08 66 09 d0 75 a5 31 d2 89 e8 e8 72 fc ff ff 85 c0 0f 88 9a 02 00 00 b8 fa 00 00 00 e8 30 46 05 c8 8b 74 24 28 8b 5e 04 03 89 44 24 1c 0f c8 89 44 24 1c 0f b7 4b 04 c7 44 24 20 00
EIP: [] emi26_probe+0x2f7/0x620 [emi26] SS:ESP 0068:f00ebcfc
---[ end trace 2eefa13825431230 ]---After the last "package" of firmware data is sent to the device, we dereference
NULL pointer (on access to rec->addr). Fix it.Reported--by: David Flatz
Tested-by: David Flatz
Signed-off-by: Marcin Slusarz
Cc: David Woodhouse
Cc: stable [2.6.27, 2.6.28]
Signed-off-by: Greg Kroah-Hartman
18 Oct, 2008
2 commits
-
USB should not be having it's own printk macros, so remove err() and
use the system-wide standard of dev_err() wherever possible. In the
few places that will not work out, use a basic printk().Signed-off-by: Greg Kroah-Hartman
-
USB should not be having it's own printk macros, so remove info() and
use the system-wide standard of dev_info() wherever possible.Signed-off-by: Greg Kroah-Hartman
10 Jul, 2008
1 commit
-
Signed-off-by: David Woodhouse
25 Apr, 2008
1 commit
-
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison
Signed-off-by: Greg Kroah-Hartman
26 Oct, 2007
1 commit
-
this drivers lacks an error check.
Signed-off-by: Oliver Neukum
Signed-off-by: Greg Kroah-Hartman
20 Oct, 2007
1 commit
-
* Convert files to UTF-8.
* Also correct some people's names
(one example is Eißfeldt, which was found in a source file.
Given that the author used an ß at all in a source file
indicates that the real name has in fact a 'ß' and not an 'ss',
which is commonly used as a substitute for 'ß' when limited to
7bit.)* Correct town names (Goettingen -> Göttingen)
* Update Eberhard Mönkeberg's address (http://lkml.org/lkml/2007/1/8/313)
Signed-off-by: Jan Engelhardt
Signed-off-by: Adrian Bunk
02 Dec, 2006
1 commit
-
replace open coded kmemdup() to save some screen space,
and allow inlining/not inlining to be triggered by gcc.Signed-off-by: Eric Sesterhenn
Signed-off-by: Greg Kroah-Hartman
13 May, 2006
1 commit
-
It's become apparent as machines get faster that the emagic kernel firmware
loaders (based on the ezusb loader) have a reset race. a 400MHz TiBook
never tripped it, but a 2GHz Pentium M seems to hit it about 30% of the
time. The bug is seen as a hung USB box and the kernel error:drivers/usb/misc/emi62.c: emi62_load_firmware - error loading firmware:
error = -110The patch below inserts a delay after deasserting reset to allow the box to
settle before a new command is issued. This affects only device startup.Signed-off-by: Andrew Morton
Signed-off-by: Greg Kroah-Hartman
05 Jan, 2006
1 commit
-
It is no longer needed, so let's remove it, saving a bit of memory.
Signed-off-by: Greg Kroah-Hartman
17 Apr, 2005
1 commit
-
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.Let it rip!