[OpenWrt-Devel] How to initialize multiple phy radios
dhutchison at bluemesh.net
Sun Apr 24 03:13:57 EDT 2016
Thank you for the response Christian!
Here is the PCI noise is in the kernel log from ath79_register_pci():
[ 0.510000] PCI host bridge to bus 0000:00
[ 0.510000] pci_bus 0000:00: root bus resource [mem 0x10000000-0x11ffffff]
[ 0.520000] pci_bus 0000:00: root bus resource [io 0x0000]
[ 0.520000] pci_bus 0000:00: No busn resource found for root bus,
will use [bus 00-ff]
[ 0.530000] pci 0000:00:00.0: [168c:0050] type 00 class 0x028000
[ 0.530000] pci 0000:00:00.0: reg 10: [mem 0x10000000-0x101fffff 64bit]
[ 0.530000] pci 0000:00:00.0: reg 30: [mem 0x00000000-0x0000ffff pref]
[ 0.530000] pci 0000:00:00.0: supports D1
[ 0.530000] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[ 0.530000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
[ 0.530000] pci 0000:00:00.0: BAR 0: assigned [mem
[ 0.530000] pci 0000:00:00.0: BAR 6: assigned [mem
[ 0.540000] pci 0000:00:00.0: using irq 40 for pin 1
I compiled lspci in and it reports:
00:00.0 Class 0280: 168c:0050
As far as I know that's just a vendor/product ID, I tried looking it
up to verify that it was indeed the atheros qca988x but couldn't find
anything for certain.
I verified ath10k is loaded:
ath10k_pci 27629 0
ath10k_core 247226 1 ath10k_pci
ath 18726 4 ath10k_core,ath9k,ath9k_common,ath9k_hw
mac80211 389729 2 ath10k_core,ath9k
cfg80211 217396 5 ath10k_core,ath9k,ath9k_common,ath,mac80211
compat 19304 7
On Fri, Apr 22, 2016 at 4:32 AM, Christian Lamparter
<chunkeey at googlemail.com> wrote:
> On Friday, April 22, 2016 02:03:01 AM David Hutchison wrote:
>> I have been working on a board port and have everything working except
>> for the 2nd radio. This board has a QCA9531 CPU and 2 WiFi Radios:
>> AR9531 and a QCA9887 ( http://routerboard.com/RB952Ui-5ac2nD for more
>> details ).
>> Anyway, the Mikrotik hAP only has one radio and is 100% working.
>> However the hAP AC Lite has an additional radio ( QCA988X )... I've
>> compiled in ath10k, and added "ath79_register_pci()" but it doesn't
>> find the radio. I've looked at ap91_pci_init() as well as
>> ap94_pci_init() and haven't had any luck.
> Does ath79_register_pci actually register the pci bus (there should
> be some noise in the kernel log when it registers the pci bus)? Or
> does it return an error -ENODEV?
> This is what it looks like on a Archer C7: (Has a QCA9880)
> [ 0.129096] ar724x-pci ar724x-pci.0: PCIe link is down
> [ 0.133988] registering PCI controller with io_map_base unset
> [ 0.139678] registering PCI controller with io_map_base unset
> [ 0.586626] PCI host bridge to bus 0000:00
> [ 0.590553] pci_bus 0000:00: root bus resource [mem 0x10000000-0x11ffffff]
> [ 0.597148] pci_bus 0000:00: root bus resource [io 0x0000]
> [ 0.602534] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
> I looked at ath79_register_pci, it is located in /arch/mips/ath79/pci.c.
> On the first look, it doesn't look like your SoC is present there.
> However soc_is_qca953x is just testing soc_is_qca9533. Can you verify
> that this is indeed correct and the function actually calls
>> What is the normal way for initializing a platform with multiple
>> radio's? Of course I don't know the exact wiring with this board, but
>> I believe the QCA988X 802.11ac radio is on a PCI bus of some sort. I'm
>> not entirely sure, but every example I have seen it appears to be.
> Hm, I don't know much about your device. If it's a proper QCA988X mini-pcie
> radio and has the calibration data on a chip on its minipcie board, then
> you don't need to setup anything else. Having select kmod-ath10k
> (which AFAIK includes the firmware as well) is enough.
> But if the calibration data for ath10k is part of the routerboard's caldata
> partition, you need to extracted by the userspace. This is currently done
> by a script:
> So you will need to add your device there with the right extraction
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
More information about the openwrt-devel