From patchwork Wed Sep 8 09:10:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shengjiu Wang X-Patchwork-Id: 12480649 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=-12.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham 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 6333CC433EF for ; Wed, 8 Sep 2021 09:36:21 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2CD6661139 for ; Wed, 8 Sep 2021 09:36:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 2CD6661139 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:List-Subscribe:List-Help: List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date:Subject:Cc:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=I1PZsb8BskpYcver/LImED0TmXm2fCamqGx7aetEoh4=; b=DJjLSKZb0Bdp0o 6s8Dy8/0xnVyzQ8DRxsbN+ATkVJkZoSPKIE4lu2iiJPIMpQJx4qOXG4MyZqD/03mG81bPO8eDQpTG uW6w+yNkK8Jvi6BvCTXcoUoMv2Tj/Sbidv4jkWnA3BIeQiycAxMMRbmu+8TDAnieoqTsZi7kx3Qjo 0jhAfC2CCMR6itRGcT1s6Nl2qwpbhlsjWQN+koCizDfSW3UZqG+TbNQLPzTBr4fr7Znl9CWyh78ld ZnKGCh0ETqzGZOz0uW5Dflsm+fTHlAhL967Lte1yudgwc5ZO+o03kFBejClGZPG7/9WnimLLYFJph 1XEB0EMOvW15H3mtRRQQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mNtxy-006JO3-WC; Wed, 08 Sep 2021 09:34:03 +0000 Received: from inva020.nxp.com ([92.121.34.13]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mNtxv-006JN2-MC for linux-arm-kernel@lists.infradead.org; Wed, 08 Sep 2021 09:34:01 +0000 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id DA1021A2EF4; Wed, 8 Sep 2021 11:33:55 +0200 (CEST) Received: from aprdc01srsp001v.ap-rdc01.nxp.com (aprdc01srsp001v.ap-rdc01.nxp.com [165.114.16.16]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id A12981A00A3; Wed, 8 Sep 2021 11:33:55 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id DF615183AD26; Wed, 8 Sep 2021 17:33:53 +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, daniel.baluta@nxp.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 v4 0/4] Add remoteproc driver for DSP on i.MX Date: Wed, 8 Sep 2021 17:10:51 +0800 Message-Id: <1631092255-25150-1-git-send-email-shengjiu.wang@nxp.com> X-Mailer: git-send-email 2.7.4 X-Virus-Scanned: ClamAV using ClamSMTP X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210908_023359_909235_F9F06196 X-CRM114-Status: GOOD ( 11.98 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.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 v4: - merge binding doc to fsl,dsp.yaml for Rob's comments 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 remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX dt-bindings: dsp: fsl: update binding document for remote proc driver .../devicetree/bindings/dsp/fsl,dsp.yaml | 81 +- 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, 1305 insertions(+), 33 deletions(-) create mode 100644 drivers/remoteproc/imx_dsp_rproc.c create mode 100644 drivers/remoteproc/imx_rproc.h