On Mon, Nov 20, 2017 at 2:59 PM, Christian Lamparter <chunk...@gmail.com> wrote: > On Monday, November 20, 2017 11:23:18 AM CET Matthew McClintock wrote: >> On Mon, Nov 20, 2017 at 10:53 AM, Christian Lamparter >> <chunk...@gmail.com> wrote: >> > On Monday, November 20, 2017 9:45:28 AM CET Matthew McClintock wrote: >> >> Did you get ath10k working on ipq4019? >> > >> > Yes, I managed to upstream the wifi dts changes some time ago and they >> > all have been accepted. In fact the new 4.14 does ships with those. >> > >> > https://patchwork.kernel.org/patch/9858197/ >> > >> > How is your upstreaming progess going? >> > >> >> I'm having issues with the board data files? I've never messed with this. >> > >> > What do you want to know? >> > >> > I'm assuming that you are looking for a way to package the two board.bin >> > (2GHz and 5GHz) into a board-2.bin. You can just use the ath10k-bdencoder >> > tool from the <https://github.com/qca/qca-swiss-army-knife> >> > >> > Note: ath10k-bdencoder can also unpack existing board-2.bin that are >> > currently shipped with any of the the ipq-wifi packages. So the fastest way >> > would be to unpack a existing board-2.bin (this will create a .json file >> > and >> > the individual .bins). Then you just have to replace the two board.bin >> > files >> > and repack it (the repack process will need the created .json file again.) >> > >> > If this isn't what you are looking for, you might find it in the >> > "firmware: add custom IPQ wifi board definitions" commit message. >> > >> >> Caveat: I'm using an older version of ath10k at the moment, but.... > This is can be a big caveat. Depending on how "old" the ath10k / > compat-wireless / backports really is. On OpenWRT/older LEDE versions > QCA4019 was broken by a patch: 936-ath10k_skip_otp_check.patch. > > You should definitely go for a recent version.
I'm stuck on some other backport for the time being, will sort out LEDE after I get a complete grasp. Actually this is all good info for getting upstream working. > >> I think it's complaining that it can't find the right board info from >> the board-2.bin file which is just multiple board files wrapped up >> together? >> >> [ 233.761660] ath10k_ahb a000000.wifi: failed to fetch board data for >> bus=ahb,vendor=0000,device=0000,subsystem-vendor=0000,subsystem-device=0000 >> from ath10k/QCA4019/hw1.0/board-2.bin > The device identifcation doesn't work. > > The driver is thinking it has a non-sensical "ahb pci(e)" device. > Just look at the fact that the driver is looking for "bus=ahb" but also > "vendor=0,device=0...,subsystem...=...,..."(which is used to identify > pcie devices). If it was looking for a bmi device, the board search string > would look something like "bus=ahb,bmi-chip-id=0,bmi-board-id=16" I think this is the root of the problem. > I can only guess what's really going on, since this is such a short extract. > > But there at least two likely scenarios: > 1. 936-ath10k_skip_otp_check.patch is present / ath10k is too old This is not present. > > 2. the pre-cal-ahb-a800000.wifi.bin and pre-cal-ahb-a000000.wifi.bin > don't get loaded or the pre-cal* data is shifted/trimmed/mangled/bad. > > For 2. you should check if the firmware hotplug 11-ath10k-caldata script > is correctly extracting the pre-cal from the "ART" Partition of your device > to /lib/firmware/ath10k. I posted one of the RT-AC58U's pre-cal files on the > linux-wireless / ath10k-devel mailing-list. > If you need something to compare to, look for the cal-file attachment: > <https://www.mail-archive.com/ath10k@lists.infradead.org/msg05911.html> > > (Note: Netgear used to ship the source from which these .bin files are > created by the calibration utility in thier GPL source of the R7800 / D7800) > >> This is the first pass, it moves onto board.bin but still fails (the >> file is not present). >> >> Where is a description of the which board.bin files to use for which >> radios? Where does this info come from? Somewhere in the radio or OTP? > I don't think this was actually documented anywhere officially by > Qualcomm Atheros. The best resource I currently know of, is this write-up > from Sven Eckelmann: > <http://lists.infradead.org/pipermail/ath10k/2017-January/009025.html> > > followed by the response from Adrian Chadd (he used to work for QCA, but > no longer does): > <http://lists.infradead.org/pipermail/ath10k/2017-January/009104.html> > > If you have further questions, your best bet is to write to the > linux-wireless and ath10k-devel ML. > >> Interestingly, PCI is complaining too: >> >> [ 236.712965] ath10k_pci 0000:01:00.0: failed to fetch board data for >> bus=pci,bmi-chip-id=0,bmi-board-id=19 from >> ath10k/QCA9888/hw2.0/board-2.bin >> >> Is my board just not setup right? Missing OTP id? I guess I can force >> a working radio with a board.bin file? > This "board-id=19" is currently not available in the ath10k-firmware.git: > > According to the latest QCA9888 patch, it just supports > <https://github.com/kvalo/ath10k-firmware/commit/3cfabec862d4969a64ac6ddf2bfe69deb72107ac#diff-d57e9359d3fc1215cfc7c23ddb9189cb> > > "New: > bus=pci,bmi-chip-id=0,bmi-board-id=24 > bus=pci,bmi-chip-id=0,bmi-board-id=25 > bus=pci,bmi-chip-id=0,bmi-board-id=17 > bus=pci,bmi-chip-id=0,bmi-board-id=18 > bus=pci,bmi-chip-id=0,bmi-board-id=23 > > Changed: > bus=pci,bmi-chip-id=0,bmi-board-id=16 > " > > I know that Henryk had similar issues with his Archer C58/C59/C60 and his > "board-id=20". I advised him to take this matter upstream, which he did: > <https://github.com/kvalo/ath10k-firmware/pull/5> > > however, it has been sitting in the ath10k-firmware queue for a while now. > > Note: The QSDK installs the boardData.* into the /lib/firmware/IPQ4019/hw.1/ > directory (replace the IPQ4019 with QCA9888 etc...). If you have a vendor > image, you might be able to use binwalk -e to extract the rootfs and get > the boardData.bin from there. > > However these boardData.bins are in the old "board.bin" format. You'll need > the ath10k-bdencoder tool to generate a board-2.bin that you can put into > the ipq-wifi package. Thanks for all the detailed info. -M _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev