Search Linux Wireless

Re: [PATCH] ath10k: Add BMI parameters to fix calibration from DT/pre-cal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2017-12-08 19:10, Sven Eckelmann wrote:
On Freitag, 8. Dezember 2017 18:05:38 CET akolli@xxxxxxxxxxxxxx wrote:
On 2017-12-08 17:42, Sven Eckelmann wrote:
> On Donnerstag, 25. Mai 2017 16:21:23 CET akolli@xxxxxxxxxxxxxxxx wrote:
>> From: Anilkumar Kolli <akolli@xxxxxxxxxxxxxxxx>
>>
>> QCA99X0, QCA9888, QCA9984 supports calibration data in
>> either OTP or DT/pre-cal file. Current ath10k supports
>> Calibration data from OTP only.
[...]
> Just tried this on an QCA9984 which doesn't seem to have the
> calibration data in the PCI EEPROM.
>
>     [   71.728929] ath10k_pci 0000:01:00.0: qca9984/qca9994 hw1.0
> target 0x01000000 chip_id 0x00000000 sub 168c:cafe
>     [   71.732926] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1
> tracing 0 dfs 1 testmode 1
>     [   71.752282] ath10k_pci 0000:01:00.0: firmware ver
> 10.4-ct-9984-fW-009-dfa0083 api 5 features peer-flow-ctrl crc32
> 7198d117
>     [   73.805730] ath10k_pci 0000:01:00.0: unable to read from the
> device
>     [   73.805769] ath10k_pci 0000:01:00.0: could not execute otp for
> board id check: -110
>

'ATH10K driver <-> 10.4 firmware' expects cal data to be either in
EEPROM or pre-cal-file or DT.
Hope the error is observed when there is no cal data loaded.

The problem happens when pre-cal data file is loaded using the userspace helper on the QCA9984. I was only able to use the device when I (for a test)
used the pre-cal data as cal-data (file).

The EEPROM on the on the PCI device doesn't seem to be populated with a valid pre-cal data. I've already tested it with a QCA9984 device which had pre-cal data in the PCI device's EEPROM and this worked fine (without cal file and
without pre-cal file).

> It works when I use the pre-cal data as calibration data. The checksum
> in the
> pre-cal seems to be correct. Also the pre-cal data from 0:ART for the
> 2.4GHz
> and 5GHz QCA4019 seem to work perfectly fine.
>

Do you mean this patch works for only QCA4019 and not working for
QCA9984 ?

Worked fine for QCA4019 and QCA9888 - but I had no luck with QCA9984. The
error shown above it the only thing I get.


I tested this on QCA9984 and it worked with below config,

pre-cal file location: /lib/firmware/ath10k/pre-cal-pci-0000:01:00.0.bin
FW: https://github.com/kvalo/ath10k-firmware/raw/master/QCA9984/hw1.0/firmware-5.bin_10.4-3.2-00072 BDF: https://github.com/kvalo/ath10k-firmware/raw/master/QCA9984/hw1.0/board-2.bin

Logs:

ath10k_pci 0000:01:00.0: found calibration file ath10k/pre-cal-pci-0000:01:00.0.bin
ath10k_pci 0000:01:00.0: found fw version 10.4-3.2-00072
ath10k_pci 0000:01:00.0: boot cal file downloaded
ath10k_pci 0000:01:00.0: boot using calibration mode pre-cal-file
ath10k_pci 0000:01:00.0: boot upload otp to 0x1234 len 8919 for board id
bmi execute address 0x1234 param 0x8000
ath10k_pci 0000:01:00.0: bmi execute result 0x2800
ath10k_pci 0000:01:00.0: boot get otp board id result 0x00002800 board_id 10 chip_id 0 ath10k_pci 0000:01:00.0: boot using board name 'bus=pci,bmi-chip-id=0,bmi-board-id=10'
ath10k_pci 0000:01:00.0: Firmware loaded from user helper succesfully
ath10k_pci 0000:01:00.0: boot fw request 'ath10k/QCA9984/hw1.0/board-2.bin': 0

Kindly try with the latest firmware from Kalle's git mentioned above.

Thanks
Anil.





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux