Access point on the i.MX6 with ath9k is not working

Dear All,

I am trying to create an access point with an Atheros AR9382 wireless chip connected to a Toradex Apalis i.MX6 card via PCI Express.

The access point seems to be configured properly, however, the SSID is not broadcasted at all and it is not possible to connect.

I am using the newest distribution Toradex version 2.6, Ångström v2015.12, Yocto Jethro 2.0. This means that I have hostapd v2.4 and Linux kernel version 3.14.52. (The problem does not occur using Toradex version 2.4 with Linux kernel 3.10.17.)

The kernel identifies the card:

ath: EEPROM regdomain: 0x6a
ath: EEPROM indicates we should expect a direct regpair map
ath: Country alpha2 being used: 00
ath: Regpair used: 0x6a
ieee80211 phy0: Atheros AR9300 Rev:3 mem=0xc11c0000, irq=154

My hostapd config:

interface=wlp3s0
driver=nl80211
hw_mode=g
channel=6
ssid=AccessPoint
ignore_broadcast_ssid=0

iwconfig wlp3s0 output:

wlp3s0    IEEE 802.11abgn  Mode:Master  Tx-Power=16 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

iw wlp3s0 info output:

Interface wlp3s0
	ifindex 4
	wdev 0x1
	addr 00:0e:8e:69:28:c8
	ssid AccessPoint
	type AP
	wiphy 0
	channel 6 (2437 MHz), width: 20 MHz (no HT), center1: 2437 MHz

I’ve attached the -dd output of hostapd.

UPDATE: I’ve attached the defconfig of the kernel as well.

As you can see, the access point is up and running according to hostapd, however no device can see the SSID an no device can connect.

Any help would be greatly appreciated.

Regards,

Daniel

Please provide a longer log from hostapd (let it run for 5 min).
Do you have any wifi sniffer capable devices?
If you do, can you verify if there are any (even malformed) beacons coming form the ath9k.

There is no further output from hostapd at all, not even when running for 10 minutes. Using an Intel 7260 in monitor mode, wireshark can not detect anything coming from the ath9k. Beacons from other networks are detected well.

Are you using serial port or ssh over ethernet to setup AP?
Also make sure that wpa_supplicant is not running in the backgroud. I’d suggest disabling it altogether if it’s executed during boot.

I am using the serial port but the ethernet is active as well. I’ve disabled the wpa_supplicant altogether, but the result is the same.

Can you connect to the WPA encrypted AP from this setup?

The device associates, but the connection is lost after a few seconds with the message:
<3>CTRL-EVENT-DISCONNECTED bssid=f0:25:b7:b2:b1:14 reason=4 locally_generated=1

Try using latest kernel backports for the wireless drivers (http://www.kernel.org/pub/linux/kernel/projects/backports/stable/v3.14/backports-3.14-1.tar.xz). That should fix the issues.
If you want to try something with you current kernel you can try removing option CFG80211_DEFAULT_PS from kernel and loading the ath9k module with ps_enable=0 option.

I have tried both solutions but unfortunately the problem remains and the symptoms are the same. I’ve also tried to disable powersaving altogether by removing the options from init.c in the ath9k source, but it still remains the same.

I’ve also added the kernel defconfig hoping it helps.

The configuration as well as the output looks good to me too… Could it be a hardware issue? Are you using an antenna? Did you tried to use a different antenna?

Also, if not running in AP mode, can you connect to Wifis using that card?

Any progress on this problem? I’m facing exactly the same problem.
I can see that there are no interrupts generated for the ath9k driver

cat /proc/interrupts 302: 0
0 GPCV2 122 Edge
mx6-pcie-msi, ath9k 303: 2
0 GPCV2 105 Edge 30901000.jr0
304: 0 0 GPCV2
106 Edge 30902000.jr1 305:
0 0 GPCV2 114 Edge
30903000.jr2 306: 0 0 PCI-MSI 0 Edge PCIe PME,
aerdrv

@danielt Did you see the same?

Some PCIe cards have problems running in MSI mode with imx6. You can try following instructions in this thread on how to enable legacy mode.