IPQ807x SoC Investigation / Status [WIP]

Hello all,

Im making this thread to make a central location for IPQ807x SoC information / status outside of the AX3600 thread. I have been working on the Xiaomi AX3600 device alongside @gmzhu , the current status of the HW is

Working

  • Linux Boot
  • Nand
  • LED's
  • Ethernet Ports (lots of thanks to @gmzhuo for getting this working)
  • Q6 firmware loading
  • ath11k loads / inits OK

Not Working / Not Done

  • PCIe (tho this could be just the AX3600)
  • Switch / VLAN setup
  • WiFi caldata extract from ART
  • Wifi AP (bss channel survey timed out)
  • NSS clocks (no idea why these fail to come online)

My staging branch is :

Yes this need a lot of clean up / improvement, but the core hardware is (seemingly) working.

17 Likes

I replace gcc-ipq8074.c to gcc-ipq807x.c
On my side, sometimes the remoteproc is not stable with gcc-ipq8074.c.

But there is still no packet with WiFi.

I also added WiFi caldata extract from ART.

Dose the ath11k support 802.11ax?
Why there's no HE Capabilities with iw list?

Are you able to get the AP enabled at all or even do an STA mode scan and get results ?

Yeah ath11k should support AX but im not convinced that either the firmware or ath11k itself is working properly with our SoC :confused:

Still can't get AP enabled or station scan.
Yes, I checked the code in mac.c, ath11k should support 11ax, but don't know why there's no HE capability.

I guess it's getting it's HT capabilities list from the Q6 side with a wmi call ?.

But as we can't get AP or a scan I think something more fundamental is wrong. I guess this is why ath11k isn't enabled yet on 8074 on mainline or QCOM staging tree.

Any one can help me?
What's this means?

root@OpenWrt:/# cat /sys/kernel/debug/ath11k/ipq8074/mac0/fw_stats/beacon_stats

           ath11k Beacon stats (1)
           ===================

                       VDEV ID 0
              VDEV MAC address 12:34:56:78:91:13
              ================

      Num of beacon tx success 31
     Num of beacon tx failures 0

root@OpenWrt:/# cat /sys/kernel/debug/ath11k/ipq8074/mac0/fw_stats/pdev_stats
[  476.072393] ath11k c000000.wifi: bss channel survey timed out

             ath11k PDEV stats
             =================

           Channel noise floor        -95
              Channel TX power         58
                TX frame count  386843520
                RX frame count 2142337280
                RX clear count  396197440
                   Cycle count  216322816
               PHY error count          0

          ath11k PDEV TX stats
          ====================

            HTT cookies queued          0
             HTT cookies disp.          0
                   MSDU queued         87
                   MPDU queued         87
                 MSDUs dropped          0
                  Local enqued         87
                   Local freed         87
                     HW queued       2981
                  PPDUs reaped       2981
                 Num underruns          0
                 PPDUs cleaned          0
                  MPDUs requed          0
             Excessive retries         72
                       HW rate       2881
           Sched self triggers         72
     Dropped due to SW retries          3
       Illegal rate phy errors    9905850
        PDEV continuous xretry          0
                    TX timeout          0
                   PDEV resets          0
 Stateless TIDs alloc failures          0
                  PHY underrun          0
  MPDU is more than txop limit          0

          ath11k PDEV RX stats
          ====================

         Mid PPDU route change          0
       Tot. number of statuses          0
        Extra frags on rings 0       2909
        Extra frags on rings 1          0
        Extra frags on rings 2       2909
        Extra frags on rings 3          0
        MSDUs delivered to HTT          0
        MPDUs delivered to HTT          0
      MSDUs delivered to stack          2
      MPDUs delivered to stack          0
               Oversized AMSUs          0
                    PHY errors         72
              PHY errors drops          0
   MPDU errors (FCS, MIC, ENC)          0

ath11k solved. It's because of board info. I can sleep now.

1 Like

Can you post the changes needed to get ath11k running. I have had no time to look at it over the weekend (DIY work around the house :smiley: )

I have already pushed.https://github.com/gmzhuo/openwrt

2 Likes

What bdwlan file did you use. In your tree it seems to be a symlink to board.bin ?

It’s from WiFi-ax-feed,and it’s the author of WiFi-ax-feed told me the issue should be the board file or cal file.

So your using board-sercomm-wallaby.bin.IPQ8074 as bdwlan ?

If so that's a little confusing as to why the one from stock fails.

Tested your latest changes, can confirm WiFi works AP and station scan.

But still no VHT or 160mhz capabilities showing, I am assuming that is a ath11k issue

1 Like

I think it’s because of firmware.

Possible, but then it would be the same for all IPQ807X devices. I guess we need to find out whats actually supported in FW.

It could also be the board config file still not being 100% correct

FYI I have tested your branch with bdwlan.b292 (hash 131dcb827df00c0af5685d1e003a213f) on your branch and it works in the same was as the board file from the AX feed.

root@OpenWrt:/# md5sum /lib/firmware/IPQ8074/*
40f75eb62ecac9508f05d82340f8d439  /lib/firmware/IPQ8074/Notice.txt
131dcb827df00c0af5685d1e003a213f  /lib/firmware/IPQ8074/bdwlan.bin
131dcb827df00c0af5685d1e003a213f  /lib/firmware/IPQ8074/board.bin
e55840bc929d0c3da02f185aa1ad9987  /lib/firmware/IPQ8074/caldata.bin
d821de12d00a3aa26daf291927f0643f  /lib/firmware/IPQ8074/m3_fw.b00
81b33e6bb7526254334e9e14fa69d73d  /lib/firmware/IPQ8074/m3_fw.b01
e27d0fe07396ab001d986f5420cb0f19  /lib/firmware/IPQ8074/m3_fw.b02
78171d39e9956c88d055f4cf5e9e110e  /lib/firmware/IPQ8074/m3_fw.flist
2256c1e93307c74f82625c79b8d76b37  /lib/firmware/IPQ8074/m3_fw.mdt
5c5cae7d90f4d0b9e25f3be47063777c  /lib/firmware/IPQ8074/q6_fw.b00
d8e09224ba8c4da8a0a3352dcb0e04d3  /lib/firmware/IPQ8074/q6_fw.b01
2b07553e1df51589f260421068ceec8b  /lib/firmware/IPQ8074/q6_fw.b02
2c41ea796725bb24fce2ed2a8cfd1bc1  /lib/firmware/IPQ8074/q6_fw.b03
852605af8cc91167058e4e6f15b7472d  /lib/firmware/IPQ8074/q6_fw.b04
ac45ffee3dbdcbe80b2d77250614bd1f  /lib/firmware/IPQ8074/q6_fw.b05
125013da796c1c23de9392f2cb46021e  /lib/firmware/IPQ8074/q6_fw.b07
60aada179686d37962b9d423aec17804  /lib/firmware/IPQ8074/q6_fw.b08
81383ad311938554fabc848488d29bd8  /lib/firmware/IPQ8074/q6_fw.flist
8359ac80c85d72f2d22aad4828761f40  /lib/firmware/IPQ8074/q6_fw.mdt
root@OpenWrt:/# 
root@OpenWrt:/# iw wlan0 scan
BSS 3c:89:94:xx:xx:xxd(on wlan0)
        TSF: 1530234886055 usec (17d, 17:03:54)
        freq: 5180
        beacon interval: 100 TUs
        capability: ESS (0x1111)
        signal: -84.00 dBm
        last seen: 3040 ms ago
        Information elements from Probe Response frame:
        SSID: XXXXXXXX
        RSN:     * Version: 1
                 * Group cipher: CCMP
                 * Pairwise ciphers: CCMP
                 * Authentication suites: PSK
                 * Capabilities: 1-PTKSA-RC 1-GTKSA-RC (0x0000)
        HT capabilities:
                Capabilities: 0x9ef
                        RX LDPC
                        HT20/HT40
                        SM Power Save disabled
                        RX HT20 SGI
                        RX HT40 SGI
                        TX STBC
                        RX STBC 1-stream
                        Max AMSDU length: 7935 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 4 usec (0x05)
                HT RX MCS rate indexes supported: 0-23
                HT TX MCS rate indexes are undefined
        HT operation:
                 * primary channel: 36
                 * secondary channel offset: above
                 * STA channel width: any
        VHT capabilities:
                VHT Capabilities (0x0f8259b2):
                        Max MPDU length: 11454
                        Supported Channel Width: neither 160 nor 80+80
                        RX LDPC
                        short GI (80 MHz)
                        TX STBC
                        SU Beamformer
                        SU Beamformee
                VHT RX MCS set:
                        1 streams: MCS 0-9
                        2 streams: MCS 0-9
                        3 streams: MCS 0-9
                        4 streams: not supported
                        5 streams: not supported
                        6 streams: not supported
                        7 streams: not supported
                        8 streams: not supported
                VHT RX highest supported: 0 Mbps
                VHT TX MCS set:
                        1 streams: MCS 0-9
                        2 streams: MCS 0-9
                        3 streams: MCS 0-9
                        4 streams: not supported
                        5 streams: not supported
                        6 streams: not supported
                        7 streams: not supported
                        8 streams: not supported
                VHT TX highest supported: 0 Mbps
        VHT operation:
                 * channel width: 1 (80 MHz)
                 * center freq segment 1: 42
                 * center freq segment 2: 0
                 * VHT basic MCS set: 0x0000

Which version are you get from?

From : miwifi_r3600_firmware_f7f3e_1.0.67.bin

I have extracted the firmware DIR and uploaded it here : https://drive.google.com/file/d/1ZnxXSdXFTzM7DnnRExOD0PYCxbarqkEe/view?usp=sharing

@Apache14 How did you get rid of the USB clock warning?

I finally got my AX3600 and have started working on it.
I have started from scratch and only using the upstream drivers, unfortunately I get the USB clock warnings and cant get into the shell despite NAND not throwing any warnings or errors.