[PATCH v4 4/4] wifi: ath12k: Connect to the QMI server belonging to the device owned by this driver
Juha-Matti Tilli
juha-matti.tilli at iki.fi
Thu Oct 22 22:51:17 PDT 2026
On Thu, Oct 22, 2026, at 20:43, Manivannan Sadhasivam via B4 Relay wrote:
> From: Manivannan Sadhasivam <manivannan.sadhasivam at oss.qualcomm.com>
>
> When two identical ath12k PCIe devices are connected to the same host, both
> advertise the WLFW service with the same service and instance id. The QMI
> lookup reports both servers to each device, so a device may connect to the
> firmware running on the other device.
>
> But now, QRTR provides each MHI endpoint a unique node id which is
> different from the node id announced by the device. So use the same id to
> pick the correct server. Add a get_qrtr_node_id() HIF callback that returns
> the node id derived from the MHI controller index and zero for transports
> that do not assign one. In the new_server callback, reject any service
> whose node id does not match. A node id of zero disables the check, so
> transports that do not assign one keep their current behavior.
Tested-by: Juha-Matti Tilli <juha-matti.tilli at iki.fi>
Tested-on: 2x WCN7850 hw2.0 WLAN.IOE_HMT.1.1-00018-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1
As always, I took the entire state of the QRTR directory as of after
these changes, on top of 6.18.53 kernel, and with some trivial changes
like kzalloc_obj made it compile. Then I cherry-picked the ath11k/ath12k
changes, which had no conflicts now.
I have two ath12k access points on this router, both work
simultaneously.
If somebody wants to test this backported variant, it's here:
https://github.com/jmtilli/linux/tree/6_18_multi_ath11k_ath12k_mani_v4
BR, Juha-Matti
More information about the ath11k
mailing list