From patchwork Fri Sep 3 09:29:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shengjiu Wang X-Patchwork-Id: 12474023 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-11.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 235A1C433F5 for ; Fri, 3 Sep 2021 09:52:30 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 08CAE60F9C for ; Fri, 3 Sep 2021 09:52:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1348912AbhICJx2 (ORCPT ); Fri, 3 Sep 2021 05:53:28 -0400 Received: from inva021.nxp.com ([92.121.34.21]:37392 "EHLO inva021.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234990AbhICJx2 (ORCPT ); Fri, 3 Sep 2021 05:53:28 -0400 Received: from inva021.nxp.com (localhost [127.0.0.1]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id D65D3203049; Fri, 3 Sep 2021 11:52:26 +0200 (CEST) Received: from aprdc01srsp001v.ap-rdc01.nxp.com (aprdc01srsp001v.ap-rdc01.nxp.com [165.114.16.16]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id 9D938203045; Fri, 3 Sep 2021 11:52:26 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id EA549183AC89; Fri, 3 Sep 2021 17:52:24 +0800 (+08) From: Shengjiu Wang To: ohad@wizery.com, bjorn.andersson@linaro.org, mathieu.poirier@linaro.org, robh+dt@kernel.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com Cc: linux-imx@nxp.com, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com Subject: [PATCH v3 0/4] Add remoteproc driver for DSP on i.MX Date: Fri, 3 Sep 2021 17:29:33 +0800 Message-Id: <1630661377-31244-1-git-send-email-shengjiu.wang@nxp.com> X-Mailer: git-send-email 2.7.4 X-Virus-Scanned: ClamAV using ClamSMTP Precedence: bulk List-ID: X-Mailing-List: linux-remoteproc@vger.kernel.org Provide a basic driver to control DSP processor found on NXP i.MX8QM, i.MX8QXP, i.MX8MP and i.MX8ULP. Currently it is able to resolve addresses between DSP and main CPU, start and stop the processor, suspend and resume. The communication between DSP and main CPU is based on mailbox, there are three mailbox channels (tx, rx, rxdb). This driver was tested on NXP i.MX8QM, i.MX8QXP, i.MX8MP and i.MX8ULP. changes in v3: - Add this cover letter - refine clock-names according to Rob's comments - move common struct from imx_rproc.c to header file - add IMX_RPROC_SCU_API enum item - refine driver according to Mathieu's comments changes in v2: - change syscon to fsl,dsp-ctrl - add items for clock-names Shengjiu Wang (4): remoteproc: imx_rproc: Move common structure to header file remoteproc: imx_rproc: Add IMX_RPROC_SCU_API method dt-bindings: remoteproc: Add fsl,imx-dsp-rproc binding document remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX .../remoteproc/fsl,imx-dsp-rproc.yaml | 131 ++ drivers/remoteproc/Kconfig | 11 + drivers/remoteproc/Makefile | 1 + drivers/remoteproc/imx_dsp_rproc.c | 1178 +++++++++++++++++ drivers/remoteproc/imx_rproc.c | 28 +- drivers/remoteproc/imx_rproc.h | 39 + 6 files changed, 1361 insertions(+), 27 deletions(-) create mode 100644 Documentation/devicetree/bindings/remoteproc/fsl,imx-dsp-rproc.yaml create mode 100644 drivers/remoteproc/imx_dsp_rproc.c create mode 100644 drivers/remoteproc/imx_rproc.h