ath10k OTP loading issues
Andre Valentin
avalentin at marcant.net
Sat Jul 19 16:57:54 PDT 2014
Hi!
And here is the working log just in case :-(
ath10k: boot pci_mem 0xb2000000
ath10k: boot chip_id 0x043202ff hw_revision 0x2
ath10k: boot hif power up
ath10k: boot warm reset
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00000000
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00000000
ath10k: boot target reset state: 0x00000800
ath10k: boot warm reset complete
ath10k: boot init ce src ring id 0 entries 16 base_addr ae4dd000
ath10k: boot ce dest ring id 1 entries 512 base_addr aef52000
ath10k: boot ce dest ring id 2 entries 32 base_addr ae4d8000
ath10k: boot init ce src ring id 3 entries 32 base_addr ae28a000
ath10k: boot init ce src ring id 4 entries 4096 base_addr ae4e0000
ath10k: boot init ce src ring id 7 entries 2 base_addr ae4d9000
ath10k: boot ce dest ring id 7 entries 2 base_addr ae4dc000
ath10k: boot waiting target to initialise
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 0
ath10k: boot target indicator 2
ath10k: boot target initialised
ath10k: pci irq legacy irq_mode 0 reset_mode 0
ath10k: Hardware name qca988x hw2.0 version 0x4100016c
ath10k: trying fw api 2
ath10k: found fw version 10.1.467.2-1
ath10k: found fw timestamp 1391440175
ath10k: found otp image ie (6917 B)
ath10k: found fw image ie (190250 B)
ath10k: found firmware features ie (1 B)
ath10k: Enabling feature bit: 1
ath10k: Enabling feature bit: 2
ath10k: features
00000000: 00 00 00 06 ....
ath10k: using fw api 2
ath10k: boot push board extended data addr 0x0
ath10k: boot upload otp to 0x1234 len 6917
ath10k: boot otp execute result 0
ath10k: boot hif start
ath10k: boot htc service 'Control' ul pipe 0 dl pipe 1 eid 0 ready
ath10k: boot htc ep 0 ul polled 0 dl polled 0
ath10k: boot htc service 'Control' eid 0 TX flow control disabled
ath10k: boot htc service HTT Data does not allocate target credits
ath10k: boot htc service 'HTT Data' ul pipe 4 dl pipe 1 eid 1 ready
ath10k: boot htc ep 1 ul polled 1 dl polled 0
ath10k: boot htc service 'HTT Data' eid 1 TX flow control disabled
ath10k: htt tx max num pending tx 1424
ath10k: htt rx ring size 1024 fill_level 1000
ath10k: boot htc service 'WMI' ul pipe 3 dl pipe 2 eid 2 ready
ath10k: boot htc ep 2 ul polled 0 dl polled 0
ath10k: boot wmi ready
ath10k: firmware 10.1.467.2-1 booted
ath10k: htt target version 2.1
ath10k: qca988x hw2.0 (0x4100016c, 0x043202ff) fw 10.1.467.2-1 api 2 htt 2.1
ath10k: boot suspend complete
ath10k: boot hif stop
ath10k: boot warm reset
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00001000
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00000000
ath10k: boot target reset state: 0x00000804
ath10k: boot warm reset complete
ath10k: boot hif power down
ath10k: boot warm reset
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00000000
ath10k: boot host cpu intr cause: 0x00000000
ath10k: boot target cpu intr cause: 0x00000000
ath10k: boot target reset state: 0x00000800
ath10k: boot warm reset complete
André
On 20.07.2014 01:46, Andre Valentin wrote:
> Hi!
>
> I noticed that OTP loading works on some ZyXEL NBG6716 devices and some not. I made a diff between both
> boot (working non-working) logs. Please take a look at the cpu intr cause:
>
> 8c8
> < ath10k: boot target cpu intr cause: 0x00000000
> ---
>> ath10k: boot target cpu intr cause: 0x00000008
> 10c10
> < ath10k: boot target cpu intr cause: 0x00000000
> ---
>> ath10k: boot target cpu intr cause: 0x00000008
> 13,19c13,19
> < ath10k: boot init ce src ring id 0 entries 16 base_addr ae4dd000
> < ath10k: boot ce dest ring id 1 entries 512 base_addr aef52000
> < ath10k: boot ce dest ring id 2 entries 32 base_addr ae4d8000
> < ath10k: boot init ce src ring id 3 entries 32 base_addr ae28a000
> < ath10k: boot init ce src ring id 4 entries 4096 base_addr ae4e0000
> < ath10k: boot init ce src ring id 7 entries 2 base_addr ae4d9000
> < ath10k: boot ce dest ring id 7 entries 2 base_addr ae4dc000
> ---
>> ath10k: boot init ce src ring id 0 entries 16 base_addr aef3e000
>> ath10k: boot ce dest ring id 1 entries 512 base_addr aeedc000
>> ath10k: boot ce dest ring id 2 entries 32 base_addr ae0d1000
>> ath10k: boot init ce src ring id 3 entries 32 base_addr aed7d000
>> ath10k: boot init ce src ring id 4 entries 4096 base_addr ae7a0000
>> ath10k: boot init ce src ring id 7 entries 2 base_addr ae0c2000
>> ath10k: boot ce dest ring id 7 entries 2 base_addr ae730000
> 45c45,48
> < ath10k: boot otp execute result 0
> ---
>> ath10k: boot otp execute result 2
>> ath10k: otp calibration failed: 2
>> ath10k: failed to run otp: -22
>> ath10k: Ignoring otp execution failure: -22
> 66c69
> < ath10k: boot target cpu intr cause: 0x00001000
> ---
>> ath10k: boot target cpu intr cause: 0x00001008
> 68c71
> < ath10k: boot target cpu intr cause: 0x00000000
> ---
>> ath10k: boot target cpu intr cause: 0x00000008
> 74c77
> < ath10k: boot target cpu intr cause: 0x00000000
> ---
>> ath10k: boot target cpu intr cause: 0x00000008
> 76c79
> < ath10k: boot target cpu intr cause: 0x00000000
> ---
>> ath10k: boot target cpu intr cause: 0x00000008
>
>
> And with a cold reset (hacked the code) instead:
>
> 6,19c4,12
> < ath10k: boot warm reset
> < ath10k: boot host cpu intr cause: 0x00000000
> < ath10k: boot target cpu intr cause: 0x00000000
> < ath10k: boot host cpu intr cause: 0x00000000
> < ath10k: boot target cpu intr cause: 0x00000000
> < ath10k: boot target reset state: 0x00000800
> < ath10k: boot warm reset complete
> < ath10k: boot init ce src ring id 0 entries 16 base_addr ae4dd000
> < ath10k: boot ce dest ring id 1 entries 512 base_addr aef52000
> < ath10k: boot ce dest ring id 2 entries 32 base_addr ae4d8000
> < ath10k: boot init ce src ring id 3 entries 32 base_addr ae28a000
> < ath10k: boot init ce src ring id 4 entries 4096 base_addr ae4e0000
> < ath10k: boot init ce src ring id 7 entries 2 base_addr ae4d9000
> < ath10k: boot ce dest ring id 7 entries 2 base_addr ae4dc000
> ---
>> ath10k: boot cold reset
>> ath10k: boot cold reset complete
>> ath10k: boot init ce src ring id 0 entries 16 base_addr aeed5000
>> ath10k: boot ce dest ring id 1 entries 512 base_addr ae112000
>> ath10k: boot ce dest ring id 2 entries 32 base_addr aeedf000
>> ath10k: boot init ce src ring id 3 entries 32 base_addr ae453000
>> ath10k: boot init ce src ring id 4 entries 4096 base_addr ad0c0000
>> ath10k: boot init ce src ring id 7 entries 2 base_addr ae49f000
>> ath10k: boot ce dest ring id 7 entries 2 base_addr ae258000
> 25,27d17
> < ath10k: boot target indicator 0
> < ath10k: boot target indicator 0
> < ath10k: boot target indicator 0
> 45c35,36
> < ath10k: boot otp execute result 0
> ---
>> ath10k: boot otp execute result 2
>> ath10k: otp stream is empty, using board.bin contents
>
> Do you have an idea?
>
> André
>
> On 17.07.2014 23:44, Helmut Schaa wrote:
>>
>> On 17. Juli 2014 17:50:36 MESZ, Kalle Valo <kvalo at qca.qualcomm.com> wrote:
>>> Helmut Schaa <helmut.schaa at googlemail.com> writes:
>>>
>>>>> But in method 2) otp.bin will fail as there's no data in the OTP
>>> area.
>>>>> This is expected and that's why we should not run otp.bin at all
>>> with
>>>>> method 2).
>>>> Thanks for clarification Kalle! So, method 2 requires only a
>>>> board.bin?
>>> Yes. You need to extract the board file from the MTD partition and
>>> provide it to ath10k.
>> Understood. Will give it a try soon ...
>> Helmut
>
--
Mit freundlichen Grüßen,
André Valentin
Projektkoordination / Systemadministration
MarcanT GmbH, Ravensberger Str. 10 G, D - 33602 Bielefeld
Fon: +49 (521) 95945-0 | Fax -18
URL: http://www.marcant.net | http://www.global-m2m.com
Geschäftsführer: Thorsten Hojas
Handelsregister: AG Bielefeld, HRB 35827 USt-ID Nr.: DE 190203238
___________________________________________________________
CONFIDENTIALITY NOTICE
The contents of this email are confidential to the ordinary user of the
email address to which it was addressed and may also be privileged. If
you are not the addressee of this email you may not copy, forward,
disclose or otherwise use it or any part of it in any form whatsoever.
If you have received this email in error please email the sender by
replying to this message.
More information about the ath10k
mailing list