Bug 15180

Summary: new atheros chipset
Product: Networking Reporter: Rolf Leggewie (bugzilla.kernel.org)
Component: WirelessAssignee: Luis Chamberlain (mcgrof)
Status: CLOSED CODE_FIX    
Severity: normal CC: ath9k-devel, jim, linville, mcgrof, ockham
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: Subsystem:
Regression: No Bisected commit-id:
Attachments: Add AR2427 support 802.11n bonded out

Description Rolf Leggewie 2010-01-31 01:11:52 UTC
I got myself an ASUS 1005p which apparently has a new chip that is not yet correctly identified by the current kernel.  http://wiki.debian.org/DebianEeePC/Model/1005P has the lspci information and some other stuff.  It may be that the "fix" is as easy as 

diff --git a/drivers/net/wireless/ath/ath9k/pci.c b/drivers/net/wireless/ath/ath9k/pci.c
index f7af5ea..6759f3b 100644
--- a/drivers/net/wireless/ath/ath9k/pci.c
+++ b/drivers/net/wireless/ath/ath9k/pci.c
@@ -25,6 +25,7 @@ static struct pci_device_id ath_pci_id_table[] __devinitdata = {
        { PCI_VDEVICE(ATHEROS, 0x0029) }, /* PCI   */
        { PCI_VDEVICE(ATHEROS, 0x002A) }, /* PCI-E */
        { PCI_VDEVICE(ATHEROS, 0x002B) }, /* PCI-E */
+       { PCI_VDEVICE(ATHEROS, 0x002C) }, /* PCI-E */
        { PCI_VDEVICE(ATHEROS, 0x002D) }, /* PCI   */
        { PCI_VDEVICE(ATHEROS, 0x002E) }, /* PCI-E */
        { 0 }

My first attempt to recompile a kernel patched in this way failed.  I'm going for the second attempt now and will let you know how things went.
Comment 1 Rolf Leggewie 2010-01-31 20:23:34 UTC
recompilation succeeded now, but unfortunately, that simple patch in itself was not enough.  I'd appreciate some guidance.
Comment 2 Luis Chamberlain 2010-02-01 20:30:58 UTC
Created attachment 24859 [details]
Add AR2427 support 802.11n bonded out

This adds support for the single chip family devices sold with 802.11n bonded out. These devices have their 802.11n hardware capabilities bonded out in preference for cheaper price.
Comment 3 Luis Chamberlain 2010-02-01 20:32:23 UTC
Please give the patch attached on comment #2 a shot. It applies to the latest wireless-testing. You can apply it to the wireless-testing git tree or a bleeding edge compat-wireless snapshot.

wireless-testing git tree:

git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git

Bleeding edge compat-wireless snapshots:

http://wireless.kernel.org/en/users/Download
Comment 4 Bernhard Reiter 2010-02-02 09:09:32 UTC
I can confirm that the patch from comment #2 works on an Asus Eee PC 1005 using bleeding edge compat-wireless sources as of 2010-02-01 on Ubuntu 9.10 (Karmic) x86_64, that is,
Linux 2.6.31-17-generic #54-Ubuntu SMP Thu Dec 10 17:01:44 UTC 2009 x86_64 GNU/Linux

Downstream, are you reading me? ;-)
Comment 5 Luis Chamberlain 2010-02-02 16:53:39 UTC
I'll send that in today, thanks for testing.
Comment 6 Luis Chamberlain 2010-02-02 16:54:08 UTC
BTW are you available for a backport test of that patch for 2.6.33 and 2.6.32?
Comment 7 Bernhard Reiter 2010-02-09 23:54:02 UTC
I'm afraid no -- I was setting up that laptop for someone else and have given it back to that person in the meanwhile.
Comment 8 Luis Chamberlain 2010-02-11 17:09:27 UTC
Patch is upstream now.
Comment 9 Rolf Leggewie 2010-02-11 20:25:14 UTC
Thank you.

If it's still necessary, I can do some testing for 2.6.33 and 2.6.32.  In fact, I'd like to do that since lucid will be based on 2.6.32, I think.  I'm just not sure how to compile these things (preferably inside a lucid live CD).  I grabbed compat-wireless-2.6.tar.bz2 from http://wireless.kernel.org/en/users/Download and booted a lucid CD.  

Recompilation went fine, but "make install" failed when the build system was looking for /lib/modules/2.6.31-wl instead of /lib/modules/2.6.32-11-generic as it probably should have.  Even adding a symlink from the former to the latter did not get me all the way to the end (some problems about initramfs and grub).  If possible, I'd like to test this immediately while booted into the live CD since any changes will be lost on reboot.

BTW, where is upstream?  I guess you're not talking about Linus' mainline.  Didn't see it there, yet.  But I also can't spot it in Linville's tree.  Sorry, I'm not very familiar with the paths these things take.
Comment 10 Rolf Leggewie 2010-02-15 01:59:03 UTC
I finally got this working and am happy to report it works fine even on 2.6.31
Comment 11 John W. Linville 2010-03-03 16:56:34 UTC
*** Bug 15099 has been marked as a duplicate of this bug. ***
Comment 12 Luis Chamberlain 2010-03-11 22:38:10 UTC
Rolf, here is the 2.6.32 backported patch:

http://kernel.org/pub/linux/kernel/people/mcgrof/patches/ath9k/2010-03/AR2427-2.6.32.y.patch

Here is the 2.6.33 backported patch:

http://kernel.org/pub/linux/kernel/people/mcgrof/patches/ath9k/2010-03/AR2427-2.6.33.y.patch

I've sent these to Greg today.