Re: [Bug 762987] Re: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset
Didn't think about hardy :-) Surprisingly backports-modules for hardy is missing rt2800usb and rt2800pci modules (so the new firmware really has got nothing to do there yet). I tried installing compat-wireless-2.6.39-1 from source. This go me as far as: phy0 - rt2x00lib_request_firmware: Error - Failed to request Firmware. After mv /lib/udev/rules.d/50-compat_firmware.rules /etc/udev/rules.d/ I got the (new) firmware to load. Hardy does not look in /lib/udev/rules.d/. My RT2860 based card then worked very well on hardy with download speeds over 56Mbit/s. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/762987 Title: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-backports-modules-2.6.24/+bug/762987/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
Re: [Bug 762987] Re: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset
Hi Seth, nice seeing you here :-) Since the pci firmware is also updated in your test package I did a couple of tests with my RT2860 pci card on live systems. No regressions were spotted. The rt2800pci driver has measurably progressed since earlier releases: I wanted to do some testing on older releases because I think a SRU at least for lucid should be considered. It is still supported for the next 22 month and we regularly want to enable new hardware on LTS releases. The compat-wireless packages for lucid will suffer from the exact same bug here. However, on natty and lucid rt2860sta did not work out of the box, so no easy regression-testing with live systems. It also shows the value of having the new drivers available through compat-wireless packages. Test results: Natty: no problems found in short testing with browsing and iperf -c (70 Mbit/s) with: DISTRIB_CODENAME=natty (live) 2.6.38-8-generic x86_64 03:00.0 Network controller [0280]: Ralink corp. RT2860 [1814:0781] 75a1da3caa0b1c95e81dfba207f834c6 /lib/firmware/rt2860.bin 36c944c3138125605d28c0a3a1338be9 /lib/firmware/rt2870.bin filename: /lib/modules/2.6.38-8-generic/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko firmware: rt2860.bin srcversion: 9EAFA237203AC68B2B4EC40 Maverick: stock live CD: iperf -c 9Mbit/s DISTRIB_CODENAME=maverick 2.6.35-22-generic i686 03:00.0 Network controller [0280]: RaLink RT2860 [1814:0781] Kernel driver in use: rt2800pci 7f55011396eff4983f26bb7dd7339fb3 /lib/firmware/rt2860.bin e4b60f5bb4980a26cbac32be690451d6 /lib/firmware/rt2870.bin filename: /lib/modules/2.6.35-22-generic/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko firmware: rt2860.bin srcversion: 2F80455F839A36244226CB5 changing to staging driver rt2860sta: iperf -c 19Mbit/s DISTRIB_CODENAME=maverick 2.6.35-22-generic i686 03:00.0 Network controller [0280]: RaLink RT2860 [1814:0781] Kernel driver in use: rt2860 7f55011396eff4983f26bb7dd7339fb3 /lib/firmware/rt2860.bin e4b60f5bb4980a26cbac32be690451d6 /lib/firmware/rt2870.bin filename: /lib/modules/2.6.35-22-generic/kernel/drivers/staging/rt2860/rt2860sta.ko firmware: rt3090.bin firmware: rt2860.bin srcversion: 1CC5B0F527E33CC4AF73D2B changing to testing firmware and reloading driver: iperf -c 24Mbit/s DISTRIB_CODENAME=maverick 2.6.35-22-generic i686 03:00.0 Network controller [0280]: RaLink RT2860 [1814:0781] Kernel driver in use: rt2860 75a1da3caa0b1c95e81dfba207f834c6 /lib/firmware/rt2860.bin 36c944c3138125605d28c0a3a1338be9 /lib/firmware/rt2870.bin changing to rt2800pci: iperf -c 23Mbit/s DISTRIB_CODENAME=maverick 2.6.35-22-generic i686 03:00.0 Network controller [0280]: RaLink RT2860 [1814:0781] Kernel driver in use: rt2800pci 75a1da3caa0b1c95e81dfba207f834c6 /lib/firmware/rt2860.bin 36c944c3138125605d28c0a3a1338be9 /lib/firmware/rt2870.bin -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/762987 Title: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
Re: [Bug 762987] Re: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset
Agreed. Btw, I have found some output from such a DWA-140 with compat-wireless with debugging enabled. This prints a much better chip info: http://rt2x00.serialmonkey.com/phpBB/viewtopic.php?f=5t=6061 Bus 003 Device 007: ID 07d1:3c0a D-Link System DWA-140 RangeBooster N USB Adapter(rev.B2) .. phy1 - rt2x00_set_chip: Info - Chipset detected - rt: 3071, rf: 0008, rev: 0213. So it looks like it is a 3071 chipset. And from the code snippet below it can be seen that for that chipset the rt2800usb wants to load the second image in a firmware of size 8KiB. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.38.y.git;a=blob;f=drivers/net/wireless/rt2x00/rt2800usb.c;h=197a36c05fdaf18a294000b9eae8b5dad2073eea;hb=HEAD 116 /* 117 * Check which section of the firmware we need. 118 */ 119 if (rt2x00_rt(rt2x00dev, RT2860) || 120 rt2x00_rt(rt2x00dev, RT2872) || 121 rt2x00_rt(rt2x00dev, RT3070)) { 122 offset = 0; 123 length = 4096; 124 } else { 125 offset = 4096; 126 length = 4096; 127 } For these chips the rt2800usb needs to load the concatenated second firmware image from an 8KiB firmware, but natty still comes with the 4KiB rt2870.bin. In 1.53 2870.bin doubles in size to exactly 8KiB. Two 4KiB drivers are concatenated. In preparation for a SRU we should look if anything formerly working potentially breaks with the new firmware. Ralink says it is backward compatible, so older drivers that load the new firmware should be fine: http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003380.html Ralink's Shiang Tu says: We always suggest to use latest firmware, because it's backward compatible and also has some enhancement, bug fix, or support of new chip For rt5390 or newer chips, it shall upgrade the firmware to this version, or it may malfunction. The USB drivers in staging have been modified (vs. the drivers from the Ralink website) to load 4KiB firmware. From looking at the code they should just take the first half of an 8KiB firmware and ignore the rest. Nevertheless I would prefer to have a regression test with RT2860, RT2872 or RT3070 based hardware with a USB driver from staging and the oneiric 8KiB rt2870.bin. Maybe we can find someone who can do this. If testing that it might be good to move the other Ralink firmware files out of /lib/firmware temporarily (or disable them by renaming) to prove that it loads the 8KiB rt2870.bin (md5: 36c944c3138125605d28c0a3a1338be9) from linux-firmware 1.53. What follows is just a bunch of stuff I have looked up that might come in handy for reference: older kernels have more staging drivers: lucid: 2.6.32 rt2860sta rt2870sta -- usb rt3070sta -- usb rt3090sta maverick: 2.6.35 rt2860sta rt2870sta -- usb rt3070sta -- usb natty: 2.6.38 rt2860sta rt2870sta -- usb Changelog linux-firmware (1.53) oneiric has 3 patches about rt2* : rt2870sta: Use latest firmware for RT3070 and RT3071 rt2860sta: Use latest firmware for RT3090 linux-firmware: rt2800pci: rt2800usb: Firmware update -- The file we want to replace is the same from lucid to natty: /lib/firmware/rt2870.bin md5:e4b60f5bb4980a26cbac32be690451d6 current natty release linux-firmware 1.52 md5sum rt{2,3}* 99bce75086ea635a2f8288d9b835f787 rt2561.bin 2878d5eaa4ff907d4df36a834915aa53 rt2561s.bin 9998485bc152cf0f39dd61a33b92ad9b rt2661.bin 7f55011396eff4983f26bb7dd7339fb3 rt2860.bin e4b60f5bb4980a26cbac32be690451d6 rt2870.bin -- 7c540794d71ad684c1e97e80a59d8edf rt3070.bin faf3eb6379501e4282464bd68de9a7fe rt3071.bin 0efb51d2d3f4be99cb491bca0dc025fb rt3090.bin current Maverick proposed linux-firmware 1.38.8 md5sum rt{2,3}* 99bce75086ea635a2f8288d9b835f787 rt2561.bin 2878d5eaa4ff907d4df36a834915aa53 rt2561s.bin 9998485bc152cf0f39dd61a33b92ad9b rt2661.bin 7f55011396eff4983f26bb7dd7339fb3 rt2860.bin e4b60f5bb4980a26cbac32be690451d6 rt2870.bin -- 7c540794d71ad684c1e97e80a59d8edf rt3070.bin faf3eb6379501e4282464bd68de9a7fe rt3071.bin 0efb51d2d3f4be99cb491bca0dc025fb rt3090.bin current Lucid proposed linux-firmware 1.34.10 md5sum rt{2,3}* 99bce75086ea635a2f8288d9b835f787 rt2561.bin 2878d5eaa4ff907d4df36a834915aa53 rt2561s.bin 9998485bc152cf0f39dd61a33b92ad9b rt2661.bin 7f55011396eff4983f26bb7dd7339fb3 rt2860.bin e4b60f5bb4980a26cbac32be690451d6 rt2870.bin -- 7c540794d71ad684c1e97e80a59d8edf rt3070.bin faf3eb6379501e4282464bd68de9a7fe rt3071.bin -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/762987 Title: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
Re: [Bug 762987] Re: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset
Actually, with linux-firmware 1.53 the rt3070.bin is now a symlink to the 8KiB rt2870.bin (because of patch rt2870sta: Use latest firmware for RT3070 and RT3071), so in oneiric currently a staging driver will have to read the first part of an 8KiB firmware now. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/762987 Title: RT2870 WLAN Stick (D-Link DWA 140) not working. firmware does not support detected chipset -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs