All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/6] *** Add support for wifi QMI client handshakes ***
@ 2018-08-15  9:26 ` Govind Singh
  0 siblings, 0 replies; 49+ messages in thread
From: Govind Singh @ 2018-08-15  9:26 UTC (permalink / raw)
  To: ath10k, briannorris, niklas.cassel, bjorn.andersson, andy.gross,
	devicetree
  Cc: linux-wireless, Govind Singh

Add QMI client handshakes for Q6 integrated WLAN connectivity subsystem.
This module is responsible for communicating WLAN control messages to FW
over QMI interface. This patch series enables the qmi handshakes required for
WCN3990 chipset.

QUALCOMM MSM Interface(QMI) provides the control interface between
components running b/w remote processors with underlying transport layer
based on integrated chipset(shared memory) or discrete chipset(PCI/USB/SDIO/UART).

QMI client driver implementation is based on qmi framework https://lwn.net/Articles/729924/.

Below is the sequence of qmi handshake.

       QMI CLIENT(APPS)                                         QMI SERVER(FW in Q6)

                         <------wlan service discoverd----

                       -----connect to wlam qmi service----->

                       ------------wlan info request----->

                       <------------wlan info resp------------

                       ------------msa info req-------->

                     <------------msa info resp------------

                     ------------msa ready req-------->

                     <------------msa ready resp------------

                     <------------msa ready indication-------

                     ------------capability req------->

                    <------------capability resp------------

                    ------------qmi bdf req--------->

                     <------------qmi bdf resp------------

                      ------------qmi cal trigger------->

                  <------------ QMI FW ready indication-------

WLAN fw is running in modem Q6 dsp as user PD(protection domain).
Sequence of user PD loading is as following.

1) Remote proc PIL driver loads the modem fw/ROOT PD.
2) As part of ROOT pd boot-up it queries to a daemon(pd_mapper) running in apps
processor to determine how many usre pd's to be loaded by the remote processor(Q6).
3) Once user pd info is known to remote processor it loads the user pd via tftp
protocol.

https://github.com/andersson/pd-mapper
https://github.com/andersson/tqftpserv

Changes since V4:
	Minor change in unload sequence, qmi handle is released prior work destroy.

Changes since V3:
	Removed msa memory child node and used only memory-region property.
	Fixed sparse warning reported in v3 change.
	Changed qmi board id data type to u32 to align with fw defined value.

Changes since V2:
	Addressed review comments from v2 version.
	Removed msa-size from dt binding and added reference to reserved-memory/reserved-memory.txt.

Changes since V1:
	Removed qmi client driver and integrated qmi client handshakes in snoc platform driver.
	Addressed comments on v1 version.
	Switched to ath10k bdf download infra(board-2.bin)
	Added MSA fixed region support to support unload use-case.
	Unified logging.

Testing:
	Tested all qmi handshakes, driver load/unload and STA/SAP sanity testing.
	Tested HW: SDM845(WCN3990)
	Tested FW: WLAN.HL.2.0-01192-QCAHLSWMTPLZ-1


Govind Singh (5):
  ath10k: Add qmi service helpers for wcn3990 qmi client
  dt: bindings: add bindings for msa memory region
  firmware: qcom: scm: Add WLAN VMID for Qualcomm SCM interface
  ath10k: Add debug mask for QMI layer
  ath10k: Add QMI message handshake for wcn3990 client

Rakesh Pillai (1):
  ath10k: Add support to create boardname for non-bmi target

 .../bindings/net/wireless/qcom,ath10k.txt     |    6 +
 drivers/net/wireless/ath/ath10k/Kconfig       |    1 +
 drivers/net/wireless/ath/ath10k/Makefile      |    4 +-
 drivers/net/wireless/ath/ath10k/core.c        |   14 +-
 drivers/net/wireless/ath/ath10k/core.h        |    4 +
 drivers/net/wireless/ath/ath10k/debug.h       |    1 +
 drivers/net/wireless/ath/ath10k/qmi.c         | 1019 ++++++++
 drivers/net/wireless/ath/ath10k/qmi.h         |  129 +
 .../net/wireless/ath/ath10k/qmi_wlfw_v01.c    | 2072 +++++++++++++++++
 .../net/wireless/ath/ath10k/qmi_wlfw_v01.h    |  677 ++++++
 drivers/net/wireless/ath/ath10k/snoc.c        |  262 ++-
 drivers/net/wireless/ath/ath10k/snoc.h        |    4 +
 include/linux/qcom_scm.h                      |    4 +-
 13 files changed, 4186 insertions(+), 11 deletions(-)
 create mode 100644 drivers/net/wireless/ath/ath10k/qmi.c
 create mode 100644 drivers/net/wireless/ath/ath10k/qmi.h
 create mode 100644 drivers/net/wireless/ath/ath10k/qmi_wlfw_v01.c
 create mode 100644 drivers/net/wireless/ath/ath10k/qmi_wlfw_v01.h

-- 
2.17.0

^ permalink raw reply	[flat|nested] 49+ messages in thread

end of thread, other threads:[~2018-10-13 17:33 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-15  9:26 [PATCH v5 0/6] *** Add support for wifi QMI client handshakes *** Govind Singh
2018-08-15  9:26 ` Govind Singh
2018-08-15  9:26 ` Govind Singh
2018-08-15  9:26 ` [PATCH v5 1/6] ath10k: Add qmi service helpers for wcn3990 qmi client Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-10-09  6:28   ` Bjorn Andersson
2018-10-09  6:28     ` Bjorn Andersson
2018-10-09  6:28     ` Bjorn Andersson
2018-10-13 17:33   ` Kalle Valo
2018-10-13 17:33     ` Kalle Valo
2018-10-13 17:33   ` Kalle Valo
2018-10-13 17:33     ` Kalle Valo
2018-08-15  9:26 ` [PATCH v5 2/6] ath10k: Add support to create boardname for non-bmi target Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26 ` [PATCH v5 3/6] dt: bindings: add bindings for msa memory region Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15 16:04   ` Rob Herring
2018-08-15 16:04     ` Rob Herring
2018-08-15 16:04     ` Rob Herring
2018-10-09  6:33   ` Bjorn Andersson
2018-10-09  6:33     ` Bjorn Andersson
2018-10-09  6:33     ` Bjorn Andersson
2018-08-15  9:26 ` [PATCH v5 4/6] firmware: qcom: scm: Add WLAN VMID for Qualcomm SCM interface Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-10-09  6:28   ` Bjorn Andersson
2018-10-09  6:28     ` Bjorn Andersson
2018-10-09  6:28     ` Bjorn Andersson
2018-08-15  9:26 ` [PATCH v5 5/6] ath10k: Add debug mask for QMI layer Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26 ` [PATCH v5 6/6] ath10k: Add QMI message handshake for wcn3990 client Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-08-15  9:26   ` Govind Singh
2018-10-09  6:32   ` Bjorn Andersson
2018-10-09  6:32     ` Bjorn Andersson
2018-10-09  6:32     ` Bjorn Andersson
2018-10-09  0:36 ` [PATCH v5 0/6] *** Add support for wifi QMI client handshakes *** Brian Norris
2018-10-09  0:36   ` Brian Norris
2018-10-09  0:36   ` Brian Norris
2018-10-12 12:09   ` Niklas Cassel
2018-10-12 12:09     ` Niklas Cassel
2018-10-12 12:09     ` Niklas Cassel
2018-10-12 16:03     ` Kalle Valo
2018-10-12 16:03       ` Kalle Valo
2018-10-12 16:03       ` Kalle Valo

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.