linux-kernel-test/drivers/net/wireless/wl12xx
Juha Leppanen 51633632ef wl1271: fix timeout in wl1271_top_reg_read
I noticed a timeout bug in

/drivers/net/wireless/wl12xx/wl1271_spi.c

In the current code you cannot tell why you exited
the "poll for data ready" do-while loop if exiting
was done after the last possible loop.

Then timeout==0 regardless of (val & OCP_READY_MASK) or
!(val & OCP_READY_MASK), leading to possible false timeout...

Simple correction could be decreasing timeout after checking
for !(val & OCP_READY_MASK), not before

(Manually converted from email to an actual patch by me. -- JWL)

Reported-by: "Juha Leppanen" <juha_motorsportcom@luukku.com>
Signed-off-by: "Juha Leppanen" <juha_motorsportcom@luukku.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-01-04 15:55:25 -05:00
..
Kconfig wl1271: depend on INET 2009-11-04 18:44:42 -05:00
Makefile
wl12xx_80211.h wl1271: fix endianess issues 2009-10-27 16:48:19 -04:00
wl1251_acx.c wl1251: implement wl1251_acx_tid_cfg() 2009-12-21 18:55:57 -05:00
wl1251_acx.h wl1251: implement wl1251_acx_tid_cfg() 2009-12-21 18:55:57 -05:00
wl1251_boot.c wl1251: timeout one too soon in wl1251_boot_run_firmware() 2009-12-28 16:20:06 -05:00
wl1251_boot.h
wl1251_cmd.c
wl1251_cmd.h
wl1251_debugfs.c wl1251: add tx queue status to debugfs 2009-12-21 18:55:44 -05:00
wl1251_debugfs.h
wl1251_event.c wl1251: Increase the beacon loss timeout value and handle regain event 2009-11-18 17:09:22 -05:00
wl1251_event.h
wl1251_init.c wl1251: implement acx_ac_cfg to configure hardware queues 2009-12-21 18:55:55 -05:00
wl1251_init.h wl1251: implement acx_ac_cfg to configure hardware queues 2009-12-21 18:55:55 -05:00
wl1251_io.c
wl1251_io.h
wl1251_main.c mac80211: remove struct ieee80211_if_init_conf 2009-12-28 16:55:07 -05:00
wl1251_ps.c wl1251: simplify ELP wakeup time calculation 2009-12-21 18:55:52 -05:00
wl1251_ps.h wl1251: Implement delayed entry into ELP mode 2009-11-18 17:09:20 -05:00
wl1251_reg.h wl1251: add NVS in EEPROM support 2009-11-18 17:09:24 -05:00
wl1251_rx.c wl1251: use __dev_alloc_skb() on RX 2009-12-21 18:55:54 -05:00
wl1251_rx.h
wl1251_sdio.c
wl1251_spi.c wl1251: add NVS in EEPROM support 2009-11-18 17:09:24 -05:00
wl1251_spi.h
wl1251_tx.c wl1251: update tx_hdr when aliging skb in tx 2009-12-21 18:56:00 -05:00
wl1251_tx.h wl1251: enable WMM 2009-12-21 18:56:02 -05:00
wl1251.h wl1251: add tx queue status to debugfs 2009-12-21 18:55:44 -05:00
wl1271_acx.c wl1271: Add support for acx_pm_config 2009-12-28 16:31:36 -05:00
wl1271_acx.h wl1271: Add support for acx_pm_config 2009-12-28 16:31:36 -05:00
wl1271_boot.c wl1271: upload only the first 468 bytes from the NVS file 2009-12-28 16:31:32 -05:00
wl1271_boot.h wl1271: RefClk configuration 2009-10-27 16:48:04 -04:00
wl1271_cmd.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 2009-12-30 15:25:08 -05:00
wl1271_cmd.h wl1271: use channel 1 when configuring the data path 2009-12-28 16:31:33 -05:00
wl1271_conf.h wl1271: Add support for acx_pm_config 2009-12-28 16:31:36 -05:00
wl1271_debugfs.c wl1271: Change booleans in struct wl1271 into a flags bitmask 2009-12-28 16:31:35 -05:00
wl1271_debugfs.h
wl1271_event.c wl1271: Check vif for NULL when indicating beacon-loss 2009-12-28 16:31:36 -05:00
wl1271_event.h wl1271: Fix event acknowledging functionality 2009-12-28 16:31:34 -05:00
wl1271_init.c wl1271: Add support for acx_pm_config 2009-12-28 16:31:36 -05:00
wl1271_init.h wl1271: fix radio and general parameters commands 2009-11-28 15:04:30 -05:00
wl1271_main.c mac80211: remove struct ieee80211_if_init_conf 2009-12-28 16:55:07 -05:00
wl1271_ps.c wl1271: Change booleans in struct wl1271 into a flags bitmask 2009-12-28 16:31:35 -05:00
wl1271_ps.h wl1271: Implement delayed entry into ELP 2009-10-27 16:47:49 -04:00
wl1271_reg.h wl1271: Add structure for firmware configuration values 2009-10-27 16:48:07 -04:00
wl1271_rx.c wl1271: use __dev_alloc_skb() on RX 2009-11-04 18:44:53 -05:00
wl1271_rx.h wl1271: fix endianess issues 2009-10-27 16:48:19 -04:00
wl1271_spi.c wl1271: fix timeout in wl1271_top_reg_read 2010-01-04 15:55:25 -05:00
wl1271_spi.h wl1271: Remove outdated SPI functions 2009-10-27 16:48:05 -04:00
wl1271_tx.c wl1271: Change booleans in struct wl1271 into a flags bitmask 2009-12-28 16:31:35 -05:00
wl1271_tx.h wl1271: fix endianess issues 2009-10-27 16:48:19 -04:00
wl1271.h wl1271: Change booleans in struct wl1271 into a flags bitmask 2009-12-28 16:31:35 -05:00