Hello everyone,
I bought a QCA9377 Wireless Network Adapter with PCIe interface. It works well on my Debian and I noticed the kernel driver in use for this device is ath10k.
As I know the WiFi driver that maintained by Qualcomm is qcacld 3.0. I'm trying to improving the WiFi driver (qcacld 3.0), for example, fix some bugs. So I hope my QCA9377 can work with qcacld 3.0 driver. But I didn't find available software and firmware for my purpose.
My questions are:
1. Is there a version of qcacld 3.0 maintained by Qualcomm can support QCA9377 with PCIe interface?
2. If the answer for Q1 is no, I will try to port qcacld to support my device. I'm not familiar with how WiFi driver interactive with the hardware. Can I get available firmware for qcacld 3.0 and QCA9377-5?
The current firmware I'm using is https://github.com/kvalo/ath10k-firmware/tree/master/QCA9377/hw1.0. I think this firmware will not work for qcacld code. (please let me know if I'm wrong) Another resource I found is https://chipcode.qti.qualcomm.com/light-registered-users/qca9377-le-2-1-3_qca_oem/tree/r213047.1. But I don't know whether it can be used for qcacld 3.0 and QCA9377-5.
Additional information of my QCA9377 device:
Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter (rev 31)Subsystem: AzureWave QCA9377 802.11ac Wireless Network AdapterControl: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-Latency: 0, Cache Line Size: 64 bytesInterrupt: pin A routed to IRQ 152IOMMU group: 15Region 0: Memory at b4200000 (64-bit, non-prefetchable) [size=2M]Capabilities: [40] Power Management version 3Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-Capabilities: [50] MSI: Enable+ Count=1/8 Maskable+ 64bit-Address: fee00698 Data: 0000Masking: 000000fe Pending: 00000000Capabilities: [70] Express (v2) Endpoint, MSI 00DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64usExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 10.000WDevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-MaxPayload 256 bytes, MaxReadReq 512 bytesDevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq- AuxPwr+ TransPend-LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <4us, L1 <64usClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-LnkSta: Speed 2.5GT/s (ok), Width x1 (ok)TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-DevCap2: Completion Timeout: Not Supported, TimeoutDis+ NROPrPrP- LTR+10BitTagComp- 10BitTagReq- OBFF Via message, ExtFmt- EETLPPrefix-EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-FRS- TPHComp- ExtTPHComp-AtomicOpsCap: 32bit- 64bit- 128bitCAS-DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ OBFF Disabled,AtomicOpsCtl: ReqEn-LnkCap2: Supported Link Speeds: 2.5GT/s, Crosslink- Retimer- 2Retimers- DRS-LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-Compliance De-emphasis: -6dBLnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-Retimer- 2Retimers- CrosslinkRes: unsupportedCapabilities: [100 v2] Advanced Error ReportingUESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-CESta: RxErr+ BadTLP- BadDLLP+ Rollover- Timeout- AdvNonFatalErr-CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-HeaderLog: 00000000 00000000 00000000 00000000Capabilities: [148 v1] Virtual ChannelCaps: LPEVC=0 RefClk=100ns PATEntryBits=1Arb: Fixed- WRR32- WRR64- WRR128-Ctrl: ArbSelect=FixedStatus: InProgress-VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ffStatus: NegoPending- InProgress-Capabilities: [168 v1] Device Serial Number 00-00-00-00-00-00-00-00Capabilities: [178 v1] Latency Tolerance ReportingMax snoop latency: 3145728nsMax no snoop latency: 3145728nsCapabilities: [180 v1] L1 PM SubstatesL1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+PortCommonModeRestoreTime=50us PortTPowerOnTime=10usL1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-T_CommonMode=0us LTR1.2_Threshold=81920nsL1SubCtl2: T_PwrOn=10usKernel driver in use: ath10k_pciKernel modules: ath10k_pci
Thanks for any help!
Best Regards
Xingyun
Hi Xingyun,
qcacld-3.0 is for another generation of WLAN chips from Qualcomm. It doesn't work with qca9377.
Currently, ath10k is the only driver supporting qca9377-5 (PCI). You can check further on ath10k forums.
On this forum, we only support qca9377-3 SDIO.
Thanks.
Thank you so much!
Best regards