[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171130011644.9421-1-bjorn.andersson@linaro.org>
Date: Wed, 29 Nov 2017 17:16:39 -0800
From: Bjorn Andersson <bjorn.andersson@...aro.org>
To: Andy Gross <andy.gross@...aro.org>,
Ohad Ben-Cohen <ohad@...ery.com>,
Bjorn Andersson <bjorn.andersson@...aro.org>
Cc: Arun Kumar Neelakantam <aneela@...eaurora.org>,
Chris Lew <clew@...eaurora.org>, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org, linux-soc@...r.kernel.org,
linux-remoteproc@...r.kernel.org
Subject: [PATCH v4 0/5] In-kernel QMI helpers and sysmon
This series introduces a helper library for drivers that needs to implement
clients or services in the kernel for communicating with QMI encoded messages.
This is used by a set of drivers in order to implement control signaling that
needs to happen between a driver and a service on a remote processor, such as
the synchronization of states during a remoteproc shutdown/restart; as seen in
the sysmon implementation.
Finally a sample driver provides an implementation of the "test" protocol,
which is a service typically implemented by Qualcomm remoteproc firmware.
Changes since v3:
- Don't call QMI handler for response type messages without known txn
- Kerneldoc updates
- Style updates
Changes since v2:
- Fix reported typos
- Checkpatch fixes
- Use non-gpl EXPORT_SYMBOL
Changes since v1:
- Lot of modifications to QMI interface, from feedback and implementation and
testing of sysmon.
- Added sysmon driver.
- Added patch for remoteproc to pass gracefulness on subdev remove.
- QRTR patches part of v1 was merged separately
Bjorn Andersson (5):
soc: qcom: Introduce QMI encoder/decoder
soc: qcom: Introduce QMI helpers
remoteproc: Pass type of shutdown to subdev remove
remoteproc: qcom: Introduce sysmon
samples: Introduce Qualcomm QMI sample client
drivers/remoteproc/Kconfig | 17 +
drivers/remoteproc/Makefile | 1 +
drivers/remoteproc/qcom_adsp_pil.c | 12 +
drivers/remoteproc/qcom_common.c | 6 +-
drivers/remoteproc/qcom_common.h | 21 +
drivers/remoteproc/qcom_q6v5_pil.c | 3 +
drivers/remoteproc/qcom_sysmon.c | 587 ++++++++++++++++++++++++
drivers/remoteproc/qcom_wcnss.c | 4 +
drivers/remoteproc/remoteproc_core.c | 18 +-
drivers/soc/qcom/Kconfig | 9 +
drivers/soc/qcom/Makefile | 2 +
drivers/soc/qcom/qmi_encdec.c | 826 +++++++++++++++++++++++++++++++++
drivers/soc/qcom/qmi_interface.c | 857 +++++++++++++++++++++++++++++++++++
include/linux/remoteproc.h | 4 +-
include/linux/soc/qcom/qmi.h | 279 ++++++++++++
samples/Kconfig | 9 +
samples/Makefile | 2 +-
samples/qmi/Makefile | 1 +
samples/qmi/qmi_sample_client.c | 631 ++++++++++++++++++++++++++
19 files changed, 3274 insertions(+), 15 deletions(-)
create mode 100644 drivers/remoteproc/qcom_sysmon.c
create mode 100644 drivers/soc/qcom/qmi_encdec.c
create mode 100644 drivers/soc/qcom/qmi_interface.c
create mode 100644 include/linux/soc/qcom/qmi.h
create mode 100644 samples/qmi/Makefile
create mode 100644 samples/qmi/qmi_sample_client.c
--
2.15.0
Powered by blists - more mailing lists