From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Bjorn Andersson Subject: [PATCH v4 0/5] In-kernel QMI helpers and sysmon Date: Wed, 29 Nov 2017 17:16:39 -0800 Message-Id: <20171130011644.9421-1-bjorn.andersson@linaro.org> To: Andy Gross , Ohad Ben-Cohen , Bjorn Andersson Cc: Arun Kumar Neelakantam , Chris Lew , linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, linux-remoteproc@vger.kernel.org List-ID: 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