# Wifi Problems with Atheros AR928X

## cpman

Hello everyone!

I have had a Gentoo system working perfectly on my HP dv6 laptop for around 3 months now, with only one problem.

I cannot get the wifi to work.

I know I have the proper kernel modules, as when I unload the ath9k module, ifconfig does not even show my wifi card.

However, according to iwlist, my wifi card does not support scanning.

I know which interface is wifi by unloading and reloading ath9k.

What can I do to remedy this problem?

I've been working on it since I first got my Gentoo system installed, around 3 months ago. I've been googling and trying solutions, but nothing has worked.

This is quite a nuisance to me, as this is a laptop, and I do not particularly like having to be tied to my router for ethernet, and I would prefer using Gentoo to Windows.

Thanks!

----------

## DONAHUE

suggest menuconfig contain:

 *Quote:*   

> [*] Networking support  --->
> 
> --- Networking support                               
> 
> Networking options  --->                       
> ...

  if any changes are made remake and recopy the kernel, reboot, and retest. try both wext and nl80211 drivers for wpa_supplicant; if both work nl80211 normally provides better results.

----------

## cpman

When I add the options for nl80211 testmode command and  cfg80211 wireless extensions compatibility, the modules ath, ath9k, and cfg80211 are unable to be loaded. Here's what I get when I try to load one under a kernel where only the two things above were changed...

```

modprobe: ERROR: could not insert 'cfg80211': Unknown symbol in module, or unknown parameter (see dmesg)

```

I get the exact same error text for the other modules that do not load, just with the name of the module being different.

I am currently on kernel 3.8.13 from vanilla-sources. (I know I should have posted this earlier...)

When I do iwconfig with the ath9k driver loaded, I get:

```

Gentoo_System / # iwconfig

wlp2s0    no wireless extensions.

dummy0    no wireless extensions.

eth0      no wireless extensions.

lo        no wireless extensions.

sit0      no wireless extensions.

```

Then when I remove ath9k,

```

Gentoo_System / # modprobe -r ath9k

Gentoo_System / # iwconfig

dummy0    no wireless extensions.

eth0      no wireless extensions.

lo        no wireless extensions.

sit0      no wireless extensions.

```

As you can see, my system thinks my wifi card does not support wifi!

However, wifi works fine in both Windows 7 and Ubuntu 13.10 on the same computer...Last edited by cpman on Tue Nov 12, 2013 5:39 am; edited 1 time in total

----------

## DONAHUE

what does lspci -nnk  say about your wireless nic? -- preferably from a livecd that that gives you a connection, sysresccd or ubuntu cd likely choices

----------

## cpman

```
02:00.0 Network controller [0280]: Atheros Communications Inc. AR928X Wireless Network Adapter (PCI-Express) [168c:002a] (rev 01)

   Subsystem: Hewlett-Packard Company AR5BHB92-H 802.11abgn Wireless Half-size Mini PCIe Card [AR9280] [103c:3041]

   Kernel driver in use: ath9k
```

This is from Ubuntu 13.04 on an external hard drive.

I'm currently using this driver for my card on gentoo....

Hmm...

----------

## DONAHUE

ath9k confirmed for 168c:002a 

your notebook should have an indicator and a key combination to control the NIC's radio, cycle them  

```
emerge rfkill

rfkill list
```

 if a block

```
rfkill unblock all

rfkill list
```

 if unblocked 

```
ifconfig wlp2s0 up

iwlist wlp2s0 scan
```

does 

```
ifconfig -a
```

 show an ip address?

what does 

```
dmesg  | grep -i ath9k

dmesg  | grep -i wlan0 

dmesg  | grep -i wlp2s0
```

 produce

----------

## cpman

Sorry I took so long to respond. I've been too busy to get around to this for a while.

Using rfkill, the interface is not blocked, but when I do 

```
iwlist wlp2s0 scan
```

 I get 

```
wlp2s0    Interface doesn't support scanning.
```

```
dmesg | grep -i ath9k
```

 produces 

```
[    6.563615] ieee80211 phy0: Selected rate control algorithm 'ath9k_rate_control'
```

 and nothing else.

```
dmesg | grep -i wlan0
```

 produces 

```
[    6.725995] systemd-udevd[1169]: renamed network interface wlan0 to wlp2s0
```

 and nothing else.

```
dmesg | grep -i wlp2s0
```

 produces 

```
[    6.725995] systemd-udevd[1169]: renamed network interface wlan0 to wlp2s0

[   10.935425] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
```

 and nothing else.

Is this any help?

----------

## rustyscience

Do you have all the necessary options enabled in kernel?

Aside ath9k, you must have ath, mac80211, cfg80211

```
[*]   Atheros 802.11n wireless cards support 

[*]     Atheros ath9k PCI/PCIe bus support (NEW)  

[ ]     Atheros ath9k AHB bus support (NEW)

[ ]     Atheros ath9k debugging (NEW)

[*]   Atheros ath9k rate control (NEW)
```

----------

## cpman

I've got all those modules loaded as well...

I really don't know what to do now. This problem has been annoying me for moths. I really like Gentoo, but I can't use it unless I get wifi working...

----------

## cpman

From what I've read elsewhere, DONAHUE's original reply should have worked, however, whenever I enable cfg80211 wireless extensions capability, the modules fail to load. I get te above error message. 

According to what I've read, enabling this is the ONLY solution to my problem...

Any ideas?

*EDIT*

I've narrowed down the problem with the modules loading to cfg80211.

```
dmesg | grep ath
```

 provides nothing, and so does 

```
dmesg | grep mac80211
```

.

However, 

```
dmesg | grep cfg80211
```

 provides this:

```
cfg80211: Unknown symbol wireless_send_event (err 0)
```

----------

## Jaglover

This error usually pops up when running kernel is not same build with modules.

----------

## cpman

That is odd as I did 

```
make && make modules_install && make firmware_install
```

The last part is there for the radeon driver, so it should not be applicable here. I then copied the image to my /boot/ and configured LILO to boot to the new one...

Anyway, all the other drivers load fine, except the wireless related ones.

----------

## Jaglover

If you have separate /boot, was it mounted when you copied the image over?

----------

## cpman

It is not on a separate partition. I was just saying I copied it to the folder /boot. Anyway, here is my kernel config that is not working (on pastebin). It was my most recent attempt to get the wifi working. It was compiled less than 10 minutes ago, and is what I'm posting from right now on Ethernet. Everything else works fine, it is only the wifi that is broken.

The method I described above with copying the kernel to /boot after recompiling and then reconfiguring LILO worked in the past when I was trying to get the radeon driver to work...

I don't know why it work any differently now...

----------

## Jaglover

Just to make sure, check with uname -rv, does it show what you expect to see?

----------

## cpman

I'm a total idiot. I forgot to install the LILO changes.

I'll post back with what happens when I reboot...

*EDIT*

Well, that did not help at all...

I'm still having the same problem.

It does show what I expect it to...

----------

## mrbassie

I have the same nic if you want to compare any .confs or whatnot to help you troubleshoot.

----------

## Jaglover

 *cpman wrote:*   

> Well, that did not help at all...
> 
> I'm still having the same problem.

 

Show us the error message. 

If you are still having "Unknown symbol" errors work further with your kernel/modules versions. Keep in mind even if the kernel version matches the modules the build version can still cause this error. 

OTOH, you can build those functions in instead of building as modules.

----------

## cpman

I think I'll try building them into the kernel. I haven't had time to reconfig my kernel lately, so I'm still stuck on the same problem.

Thanks!

----------

