linux/drivers/net/wimax/i2400m
Inaky Perez-Gonzalez b9ee95010b wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex
Since the addition of the pre/post reset handlers, it became clear
that we cannot do a I2400M-RT-BUS type reset while holding the
init_mutex, as in the case of USB, it will deadlock when trying to
call i2400m_pre_reset().

Thus, the following changes:

 - clarify the fact that calling bus_reset() w/ I2400M_RT_BUS while
   holding init_mutex is a no-no.

 - i2400m_dev_reset_handle() will do a BUS reset to recover a gone
   device after unlocking init_mutex.

 - in the USB reset implementation, when cold and warm reset fails,
   fallback to QUEUING a usb reset, not executing a USB reset, so it
   happens from another context and does not deadlock.

Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
2009-10-19 15:56:18 +09:00
..
Kconfig i2400m: Makefile and Kconfig 2009-01-07 10:00:22 -08:00
Makefile wimax/i2400m: allow control of the base-station idle mode timeout 2009-03-02 03:10:25 -08:00
control.c i2400m: keep index within ms_to_errno[] 2009-10-19 15:55:35 +09:00
debug-levels.h wimax/i2400m: allow control of the base-station idle mode timeout 2009-03-02 03:10:25 -08:00
debugfs.c wimax: fix build issue when debugfs is disabled 2009-01-29 17:18:31 -08:00
driver.c wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex 2009-10-19 15:56:18 +09:00
fw.c wimax/i2400m: change the bcf_len to exclude the extended header size 2009-10-19 15:56:16 +09:00
i2400m-sdio.h wimax/iwmc3200: increase wait time before enable retry 2009-10-19 15:55:43 +09:00
i2400m-usb.h wimax/i6x50: add Intel WiFi/WiMAX Link 6050 Series support 2009-10-19 15:55:59 +09:00
i2400m.h wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex 2009-10-19 15:56:18 +09:00
netdev.c wimax/i2400m: fix race condition with tcpdump et al 2009-10-19 15:56:12 +09:00
op-rfkill.c wimax: fix gcc warnings in sh4 when calling BUG() 2009-06-11 11:47:39 -07:00
rx.c wimax/i2400m: clarify and fix i2400m->{ready,updown} 2009-10-19 15:56:07 +09:00
sdio-debug-levels.h i2400m/SDIO: header for the SDIO subdriver 2009-01-07 10:00:22 -08:00
sdio-fw.c wimax/i2400m: be smarter about copying command buffer to bm_cmd_buf 2009-10-19 15:55:46 +09:00
sdio-rx.c wimax/i2400m: reduce verbosity of debug messages in boot mode 2009-10-19 15:56:11 +09:00
sdio-tx.c i2400m/SDIO: TX and RX path backends 2009-01-07 10:00:22 -08:00
sdio.c wimax/i2400m: do bootmode buffer management in i2400m_setup/release() 2009-10-19 15:56:09 +09:00
sysfs.c wimax/i2400m: allow control of the base-station idle mode timeout 2009-03-02 03:10:25 -08:00
tx.c wimax: misplaced parenthesis 2009-10-19 15:55:36 +09:00
usb-debug-levels.h i2400m/USB: header for the USB bus driver 2009-01-07 10:00:21 -08:00
usb-fw.c wimax/i2400m: workaround not-so-working %zd printf format 2009-10-19 15:55:51 +09:00
usb-notif.c wimax/i2400m: add reason argument to i2400m_dev_reset_handle() 2009-10-19 15:56:01 +09:00
usb-rx.c wimax/i2400m: USB driver uses a configurable endpoint map 2009-10-19 15:55:44 +09:00
usb-tx.c wimax/i2400m: USB driver uses a configurable endpoint map 2009-10-19 15:55:44 +09:00
usb.c wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex 2009-10-19 15:56:18 +09:00