carl9170 stopped working on Angström 2013-06-06 after opkg upgrade

Hey,

I am using a D-Link DWA-160 and after a recent opkg upgrade it stopped working (for all messages see the attached dmesg file generated by “# dmesg | grep -v drm > dmesg.txt”).

[ 1.334403] hub 1-0:1.0: state 7 ports 1 chg 0002 evt 0000 [ 1.334453] hub 1-0:1.0: port 1, status 0101, change 0000, 12 Mb/s [ 1.439795] usb 1-1: new high-speed USB device number 2 using musb-hdrc [ 1.613598] usb 1-1: udev 2, busnum 1, minor = 1 [ 1.613619] usb 1-1: New USB device found, idVendor=07d1, idProduct=3a09 [ 1.613632] usb 1-1: New USB device strings: Mfr=16, Product=32, SerialNumber=48 [ 1.613644] usb 1-1: Product: 11n adapter [ 1.613655] usb 1-1: Manufacturer: ATHER [ 1.613665] usb 1-1: SerialNumber: 12345 [ 1.614131] usb 1-1: usb_probe_device [ 1.614149] usb 1-1: configuration #1 chosen from 1 choice [ 1.614334] usb 1-1: adding 1-1:1.0 (config #1, interface 0) [ 1.614999] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002 [ 1.615034] hub 1-0:1.0: port 1 enable change, status 00000503 [ 2.540184] cfg80211: Calling CRDA to update world regulatory domain [ 2.540245] cfg80211: World regulatory domain updated: [ 2.540255] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) [ 2.540266] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) [ 2.540276] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) [ 2.540286] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm) [ 2.540296] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) [ 2.540305] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) [ 3.287139] systemd-journald[91]: Received SIGUSR1 [ 3.326996] carl9170 1-1:1.0: usb_probe_interface [ 3.327023] carl9170 1-1:1.0: usb_probe_interface - got id [ 3.379285] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002 [ 3.431994] usb 1-1: reset high-speed USB device number 2 using musb-hdrc [ 3.498447] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002 [ 3.593811] usbcore: registered new interface driver carl9170 [ 3.602049] usb 1-1: driver API: 1.9.6 2012-07-07 [1-1] [ 3.602074] usb 1-1: firmware API: 1.9.7 2012-12-15 [ 3.937429] ath: EEPROM regdomain: 0x80d0 [ 3.937446] ath: EEPROM indicates we should expect a country code [ 3.937457] ath: doing EEPROM country->regdmn map search [ 3.937465] ath: country maps to regdmn code: 0x37 [ 3.937474] ath: Country alpha2 being used: DK [ 3.937481] ath: Regpair used: 0x37 [ 4.184561] ieee80211 phy0: Selected rate control algorithm 'pid' [ 4.186170] cfg80211: Calling CRDA for country: DK [ 4.186321] cfg80211: Regulatory domain changed to country: DK [ 4.186332] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) [ 4.186342] cfg80211: (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 4.186352] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 4.186362] cfg80211: (5250000 KHz - 5330000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 4.186371] cfg80211: (5490000 KHz - 5710000 KHz @ 40000 KHz), (N/A, 2700 mBm) [ 4.186380] cfg80211: (57240000 KHz - 65880000 KHz @ 2160000 KHz), (N/A, 4000 mBm) [ 4.187049] usb 1-1: Atheros AR9170 is registered as 'phy0' [ 5.441769] udc musb-hdrc.0.auto: registering UDC driver [g_multi] [ 5.441875] gadget: using random self ethernet address [ 10.295246] usb 1-1: no command feedback received (-110). [ 10.300917] carl9170 cmd: 08 01 00 00 f0 36 1c 00 00 50 00 00 .....6...P.. [ 10.300940] usb 1-1: restart device (6) [ 10.304988] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 11.320636] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 12.334291] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 13.347969] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 14.361599] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 15.367452] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 16.373367] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 17.388921] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 18.394865] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 19.406506] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 20.412619] ieee80211 phy0: reading regs failed (-110) [ 21.416345] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 22.428053] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 23.439794] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 24.451480] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 25.471496] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 26.492496] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 27.506106] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 28.513916] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 29.521817] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 30.535482] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 31.547129] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 32.556944] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 33.564720] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 34.572529] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 35.580405] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 36.596007] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 37.603789] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 38.611591] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 39.619391] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 40.627234] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 41.635047] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 42.650890] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 43.670243] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 44.689712] ieee80211 phy0: writing reg 0x1c36f0 (val 0x2400) failed (-110) [ 45.697595] ieee80211 phy0: reading regs failed (-110) [ 46.701455] ieee80211 phy0: writing reg 0x1c36f0 (val 0x5000) failed (-110) [ 47.719020] ------------[ cut here ]------------ [ 47.719097] WARNING: at drivers/net/wireless/ath/carl9170/main.c:247 carl9170_flush+0x84/0x8c [carl9170]() [ 47.719107] Modules linked in: fuse ip_tables x_tables g_multi libcomposite arc4 carl9170 ath mac80211 cfg80211 rfcomm ircomm_tty ircomm irda ipv6 hidp bluetooth rfkill autofs4 [ 47.719211] [<c001051d>] (unwind_backtrace+0x1/0x8c) from [<c002b51f>] (warn_slowpath_common+0x33/0x48) [ 47.719230] [<c002b51f>] (warn_slowpath_common+0x33/0x48) from [<c002b543>] (warn_slowpath_null+0xf/0x10) [ 47.719258] [<c002b543>] (warn_slowpath_null+0xf/0x10) from [<bf97ca39>] (carl9170_flush+0x84/0x8c [carl9170]) [ 47.719305] [<bf97ca39>] (carl9170_flush+0x84/0x8c [carl9170]) from [<bf97ca97>] (carl9170_op_flush+0x56/0x60 [carl9170]) [ 47.719544] [<bf97ca97>] (carl9170_op_flush+0x56/0x60 [carl9170]) from [<bf91fae9>] (__ieee80211_recalc_idle+0x144/0x16a [mac80211]) [ 47.719698] [<bf91fae9>] (__ieee80211_recalc_idle+0x144/0x16a [mac80211]) from [<bf91fb85>] (ieee80211_recalc_idle+0x14/0x28 [mac80211]) [ 47.719830] [<bf91fb85>] (ieee80211_recalc_idle+0x14/0x28 [mac80211]) from [<bf91afe7>] (__ieee80211_scan_completed+0xdc/0x10e [mac80211]) [ 47.719957] [<bf91afe7>] (__ieee80211_scan_completed+0xdc/0x10e [mac80211]) from [<bf91b865>] (ieee80211_scan_work+0x2c0/0x2d0 [mac80211]) [ 47.720034] [<bf91b865>] (ieee80211_scan_work+0x2c0/0x2d0 [mac80211]) from [<c003a0cd>] (process_one_work+0x161/0x24c) [ 47.720053] [<c003a0cd>] (process_one_work+0x161/0x24c) from [<c003a465>] (worker_thread+0x189/0x244) [ 47.720076] [<c003a465>] (worker_thread+0x189/0x244) from [<c003ca4b>] (kthread+0x61/0x72) [ 47.720100] [<c003ca4b>] (kthread+0x61/0x72) from [<c000c6fd>] (ret_from_fork+0x11/0x34) [ 47.720111] ---[ end trace fede32f6539f1db0 ]--- [ 48.719072] ieee80211 phy0: writing reg 0x1d0104 (val 0x1) failed (-110) [ 51.731730] ------------[ cut here ]------------ [ 51.731773] WARNING: at drivers/usb/musb/musb_host.c:125 musb_h_tx_flush_fifo+0x35/0x5c() [ 51.731783] Could not flush host TX10 fifo: csr: 2003 [ 51.731792] Modules linked in: fuse ip_tables x_tables g_multi libcomposite arc4 carl9170 ath mac80211 cfg80211 rfcomm ircomm_tty ircomm irda ipv6 hidp bluetooth rfkill autofs4 [ 51.731894] [<c001051d>] (unwind_backtrace+0x1/0x8c) from [<c002b51f>] (warn_slowpath_common+0x33/0x48) [ 51.731912] [<c002b51f>] (warn_slowpath_common+0x33/0x48) from [<c002b581>] (warn_slowpath_fmt+0x1b/0x24) [ 51.731929] [<c002b581>] (warn_slowpath_fmt+0x1b/0x24) from [<c025e411>] (musb_h_tx_flush_fifo+0x35/0x5c) [ 51.731949] [<c025e411>] (musb_h_tx_flush_fifo+0x35/0x5c) from [<c025f091>] (musb_cleanup_urb+0x25/0x52) [ 51.731965] [<c025f091>] (musb_cleanup_urb+0x25/0x52) from [<c025f159>] (musb_urb_dequeue+0x9b/0xb2) [ 51.731983] [<c025f159>] (musb_urb_dequeue+0x9b/0xb2) from [<c024c293>] (unlink1+0x7f/0x8c) [ 51.732000] [<c024c293>] (unlink1+0x7f/0x8c) from [<c024cf49>] (usb_hcd_unlink_urb+0x39/0x74) [ 51.732017] [<c024cf49>] (usb_hcd_unlink_urb+0x39/0x74) from [<c024d901>] (usb_kill_urb+0x3b/0x9e) [ 51.732033] [<c024d901>] (usb_kill_urb+0x3b/0x9e) from [<c024d985>] (usb_kill_anchored_urbs+0x21/0x3c) [ 51.732093] [<c024d985>] (usb_kill_anchored_urbs+0x21/0x3c) from [<bf97e505>] (carl9170_usb_flush+0x60/0x6a [carl9170]) [ 51.732141] [<bf97e505>] (carl9170_usb_flush+0x60/0x6a [carl9170]) from [<bf97e7db>] (carl9170_usb_stop+0x2a/0x70 [carl9170]) [ 51.732184] [<bf97e7db>] (carl9170_usb_stop+0x2a/0x70 [carl9170]) from [<bf97eb27>] (carl9170_usb_restart+0x26/0x66 [carl9170]) [ 51.732223] [<bf97eb27>] (carl9170_usb_restart+0x26/0x66 [carl9170]) from [<bf97cef7>] (carl9170_restart_work+0x32/0x94 [carl9170]) [ 51.732253] [<bf97cef7>] (carl9170_restart_work+0x32/0x94 [carl9170]) from [<c003a0cd>] (process_one_work+0x161/0x24c) [ 51.732272] [<c003a0cd>] (process_one_work+0x161/0x24c) from [<c003a465>] (worker_thread+0x189/0x244) [ 51.732294] [<c003a465>] (worker_thread+0x189/0x244) from [<c003ca4b>] (kthread+0x61/0x72) [ 51.732318] [<c003ca4b>] (kthread+0x61/0x72) from [<c000c6fd>] (ret_from_fork+0x11/0x34) [ 51.732329] ---[ end trace fede32f6539f1db1 ]--- [ 51.732554] usb 1-1: kill pending tx urbs. [ 53.088236] usb 1-1: kworker/u:1 timed out on ep0out len=0/4096 [ 53.088263] usb 1-1: firmware upload failed (-110). [ 54.092046] usb 1-1: stuck tx urbs! [ 54.097432] usb 1-1: Failed to restart device (-110). [ 55.103742] ------------[ cut here ]------------

I checked a wheezy demo image from http://elinux.org/BeagleBoardDebian and it works with the version from may 18th, but fails on the newer ones, too.

Any hints?

Cheers

Martin

dmesg.txt (47.5 KB)