All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Lukas F. Hartmann" <lukas@mntre.com>
To: ath10k@lists.infradead.org
Cc: gary.bisson@boundarydevices.com
Subject: Problems with QCA9377 SDIO on NXP i.MX8MPlus SOM
Date: Mon, 12 Jun 2023 21:59:36 +0200	[thread overview]
Message-ID: <875y7swixj.fsf@mntre.com> (raw)

Hi,

I'm trying to get the QCA9377 SDIO module on Boundary Devices'
i.MX8MPlus SOM working with the ath10k mainline driver (from Linux git
tip). Currently it can scan and see some APs and authenticate, but not
associate (timeout). Several months ago I thought this was an SDIO
signalling issue with the SoC, but I'm not sure anymore, because I fixed
up the qcacld driver for the current Linux kernel and it works fine on
the same system (i.e. I can rmmod ath10k_sdio and insmod wlan.ko and it
works).

I wonder if it is some kind of firmware/driver mismatch. I pasted the
relevant dmesg output after my signature below.

This is after I tried to build my own board-2.bin including bdwlan30.bin
from qcacld-2.0-CNSS.LEA.NRT_3.0 (source:
https://github.com/8devices/qcacld-2.0/tree/CNSS.LEA.NRT_3.0/firmware_bin/sdio).
It gets picked up but doesn't seem to make a difference. I also tried
assembling my own firmware-5-sdio.bin from qwlan30.bin and otp30.bin but
this triggers a firmware crash (with register dump) when loading
ath10k_sdio.ko.

The qcacld driver works with that firmware, though.

Any pointers on how to debug this are most appreciated.

Best
Lukas
-- 
Lukas F. Hartmann, CEO
MNT Research GmbH
https://mntre.com
--

root@reform:~# cat /sys/kernel/debug/mmc1/ios 
clock:		50000000 Hz
actual clock:	50000000 Hz
vdd:		21 (3.3 ~ 3.4 V)
bus mode:	2 (push-pull)
chip select:	0 (don't care)
power mode:	2 (on)
bus width:	2 (4 bits)
timing spec:	7 (sd uhs DDR50)
signal voltage:	1 (1.80 V)
driver type:	0 (driver type B)

output from qcacld in dmesg:

[ 5482.570652] wlan: loading driver v4.5.25.57
[ 5482.575281] hifDeviceInserted: Dumping clocks (50000000,200000000)
[ 5482.770932] ol_download_firmware: chip_id:0x5020001 board_id:0x0
[ 5482.777325] ar6k_wlan mmc1:0001:1: Direct firmware load for bdwlan30.b00 failed with error -2
[ 5482.785885] __ol_transfer_bin_file: Failed to get bdwlan30.b00:-2
[ 5482.791995] __ol_transfer_bin_file: Trying to load default bdwlan30.bin
[ 5482.798961] Board extended Data download address: 0x0
[ 5482.817983] __ol_transfer_bin_file: Loading setup file qsetup30.bin
[ 5482.824316] ar6k_wlan mmc1:0001:1: Direct firmware load for qsetup30.bin failed with error -2
[ 5482.832858] __ol_transfer_bin_file: Failed to get qsetup30.bin:-2
[ 5483.273017] ar6k_wlan mmc1:0001:1: Direct firmware load for wlan/wlan_mac.bin failed with error -2
[ 5483.282584] target uses HTT version 3.58; host uses 3.28
[ 5483.287906] *** Warning: host/target HTT versions are different, though compatible!
[ 5483.295848] Host SW:4.5.25.57, FW:0.0.0.26, HW:QCA93x7_REV1_1
[ 5483.302792] ENTER sme_set_btc_coex_dutycycle = 30
[ 5483.302811] ENTER sme_set_btc_coex_dutycycle =30
[ 5483.308765] ath_hif_sdio: HIF (Atheros/multi-bss)
[ 5483.318575] wlan: driver loaded in 748000

output from ath10k_sdio in dmesg:

[ 4541.308975] ath10k_sdio mmc1:0001:1: qca9377 hw1.1 sdio target 0x05020001 chip_id 0x00000000 sub 0000:0000
[ 4541.318711] ath10k_sdio mmc1:0001:1: kconfig debug 1 debugfs 1 tracing 0 dfs 0 testmode 0
[ 4541.327201] ath10k_sdio mmc1:0001:1: firmware ver WLAN.TF.1.1.1-00061-QCATFSWPZ-1 api 5 features ignore-otp crc32 7746e551
[ 4541.483782] ath10k_sdio mmc1:0001:1: board_file api 2 bmi_id N/A crc32 0708e68d
[ 4542.590752] ath10k_sdio mmc1:0001:1: htt-ver 3.32 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1
[ 4542.590822] ath10k_sdio mmc1:0001:1: failed to write to address 0x12ff5: -84
[ 4542.607255] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12ff5 asynchronously: -84
[ 4542.763766] mmc1: queuing unknown CIS tuple 0x01 [d9 01 ff] (3 bytes)
[ 4542.778083] mmc1: queuing unknown CIS tuple 0x1a [01 01 00 02 07] (5 bytes)
[ 4542.788463] mmc1: queuing unknown CIS tuple 0x1b [c1 41 30 30 ff ff 32 00] (8 bytes)
[ 4542.796938] mmc1: queuing unknown CIS tuple 0x14 [] (0 bytes)
[ 4542.804476] ath: EEPROM regdomain: 0x0
[ 4542.804481] ath: EEPROM indicates default country code should be used
[ 4542.804484] ath: doing EEPROM country->regdmn map search
[ 4542.804487] ath: country maps to regdmn code: 0x3a
[ 4542.804490] ath: Country alpha2 being used: US
[ 4542.804493] ath: Regpair used: 0x3a
[ 4544.003032] ath10k_sdio mmc1:0001:1: failed to write to address 0x12ff5: -84
[ 4544.010191] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12ff5 asynchronously: -84
[ 4544.231838] mmc1: queuing unknown CIS tuple 0x01 [d9 01 ff] (3 bytes)
[ 4544.246204] mmc1: queuing unknown CIS tuple 0x1a [01 01 00 02 07] (5 bytes)
[ 4544.256610] mmc1: queuing unknown CIS tuple 0x1b [c1 41 30 30 ff ff 32 00] (8 bytes)
[ 4544.265092] mmc1: queuing unknown CIS tuple 0x14 [] (0 bytes)
[ 4545.426883] ath10k_sdio mmc1:0001:1: failed to write to address 0x12ff5: -84
[ 4545.434040] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12ff5 asynchronously: -84
[ 4567.496221] wlan0: authenticate with 48:5d:35:8d:55:12
[ 4567.534325] wlan0: send auth to 48:5d:35:8d:55:12 (try 1/3)
[ 4567.627347] wlan0: authenticate with 48:5d:35:8d:55:12
[ 4567.632620] wlan0: send auth to 48:5d:35:8d:55:12 (try 1/3)
[ 4567.667287] wlan0: authenticated
[ 4567.674326] wlan0: associate with 48:5d:35:8d:55:12 (try 1/3)
[ 4567.680220] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4567.687294] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4568.806313] wlan0: associate with 48:5d:35:8d:55:12 (try 2/3)
[ 4568.812548] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4568.819730] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4569.830306] wlan0: associate with 48:5d:35:8d:55:12 (try 3/3)
[ 4569.836513] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4569.843668] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4570.822310] wlan0: association with 48:5d:35:8d:55:12 timed out
[ 4575.974307] ath10k_sdio mmc1:0001:1: failed to flush transmit queue (skip 0 ar-state 1): 0
[ 4581.094297] ath10k_sdio mmc1:0001:1: failed to flush transmit queue (skip 0 ar-state 1): 0
[ 4581.443674] wlan0: authenticate with 48:5d:35:8d:55:11
[ 4581.448877] wlan0: 80 MHz not supported, disabling VHT
[ 4581.502006] wlan0: send auth to 48:5d:35:8d:55:11 (try 1/3)
[ 4581.607963] wlan0: authenticate with 48:5d:35:8d:55:11
[ 4581.613157] wlan0: send auth to 48:5d:35:8d:55:11 (try 1/3)
[ 4581.640901] wlan0: authenticated
[ 4581.646306] wlan0: associate with 48:5d:35:8d:55:11 (try 1/3)
[ 4581.652315] ath10k_sdio mmc1:0001:1: failed to write to address 0x12f3d: -84
[ 4581.659408] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12f3d asynchronously: -84
[ 4582.790278] wlan0: associate with 48:5d:35:8d:55:11 (try 2/3)
[ 4582.796375] ath10k_sdio mmc1:0001:1: failed to write to address 0x12f3d: -84
[ 4582.803528] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12f3d asynchronously: -84
[ 4583.814279] wlan0: associate with 48:5d:35:8d:55:11 (try 3/3)
[ 4583.821362] ath10k_sdio mmc1:0001:1: failed to write to address 0x12f3d: -84
[ 4583.831060] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12f3d asynchronously: -84
[ 4584.838284] wlan0: association with 48:5d:35:8d:55:11 timed out
[ 4590.054286] ath10k_sdio mmc1:0001:1: failed to flush transmit queue (skip 0 ar-state 1): 0
[ 4595.174331] ath10k_sdio mmc1:0001:1: failed to flush transmit queue (skip 0 ar-state 1): 0
[ 4597.950346] wlan0: authenticate with 48:5d:35:8d:55:12
[ 4597.988680] wlan0: send auth to 48:5d:35:8d:55:12 (try 1/3)
[ 4598.076586] wlan0: authenticate with 48:5d:35:8d:55:12
[ 4598.081867] wlan0: send auth to 48:5d:35:8d:55:12 (try 1/3)
[ 4598.109777] wlan0: authenticated
[ 4598.114288] wlan0: associate with 48:5d:35:8d:55:12 (try 1/3)
[ 4598.120331] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4598.127455] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4598.822274] wlan0: associate with 48:5d:35:8d:55:12 (try 2/3)
[ 4598.828390] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4598.835547] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4599.814254] wlan0: associate with 48:5d:35:8d:55:12 (try 3/3)
[ 4599.820427] ath10k_sdio mmc1:0001:1: failed to write to address 0x12efd: -84
[ 4599.827654] ath10k_sdio mmc1:0001:1: failed to write skb to 0x12efd asynchronously: -84
[ 4600.814891] wlan0: association with 48:5d:35:8d:55:12 timed out

_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

             reply	other threads:[~2023-06-12 19:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-12 19:59 Lukas F. Hartmann [this message]
2023-06-13  8:05 ` Problems with QCA9377 SDIO on NXP i.MX8MPlus SOM Kalle Valo
2023-06-13  8:26   ` Gary Bisson
2023-06-13 15:35     ` Lukas F. Hartmann
2023-09-04 14:28       ` Bastian Krause
2023-09-05  5:58         ` w.wadepohl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=875y7swixj.fsf@mntre.com \
    --to=lukas@mntre.com \
    --cc=ath10k@lists.infradead.org \
    --cc=gary.bisson@boundarydevices.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.