From patchwork Mon Oct 11 09:20:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shengjiu Wang X-Patchwork-Id: 12549473 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 70C42C433EF for ; Mon, 11 Oct 2021 09:47:03 +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 41B0060EDF for ; Mon, 11 Oct 2021 09:47:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 41B0060EDF 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=h+6cMBjWq3w76faeuvjyYClnPD+0fooWj5A2u1Sx6Cs=; b=DQcsFWYHl9mu0B 4cn97y8ZYI+lwjYyjh7+bkacrHsLceIwJwTLsCAbB22x83w3j0uJ7RLOaY9e/YnYAo5mWoi7G38NC fzVno6qOHcYh88u7HsAsUUVPxJCtJO80sznRxiOvLvs3lO/mNbB7sqQK6EfK46vdfR+4yqfj8jWLC UB9GPLEwP76I2o4NoXL3xqqFm7PRDkt3J7iKW6QQ3z9SpQt66FXrwYbIodBhMGuhyx8ciAK4zORvW oyiny/j/Jxw8IJWfrEZH3ZUTCwnTM1iwE/nTUClPTQzxe80q/isKdZGpXZJFAyXFVCISPOq/CXKB6 dqJKiNDIl89HBN6M9dCQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mZrrs-008bk4-LU; Mon, 11 Oct 2021 09:45:12 +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 1mZrrj-008bdh-Jl for linux-arm-kernel@lists.infradead.org; Mon, 11 Oct 2021 09:45:05 +0000 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 4BFB81A0FAE; Mon, 11 Oct 2021 11:44:59 +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 140CF1A0F9E; Mon, 11 Oct 2021 11:44:59 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id 590D5183AD26; Mon, 11 Oct 2021 17:44:57 +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 v6 0/4] Add remoteproc driver for DSP on i.MX Date: Mon, 11 Oct 2021 17:20:11 +0800 Message-Id: <1633944015-789-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-20211011_024503_852867_2A8E6388 X-CRM114-Status: GOOD ( 11.89 ) 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 v6: - fix the apply issue for linux-next - add if/then schema according to Rob's comments changes in v5: - refine driver according to Mathieu's comments 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 | 123 +- drivers/remoteproc/Kconfig | 11 + drivers/remoteproc/Makefile | 1 + drivers/remoteproc/imx_dsp_rproc.c | 1206 +++++++++++++++++ drivers/remoteproc/imx_rproc.c | 28 +- drivers/remoteproc/imx_rproc.h | 39 + 6 files changed, 1375 insertions(+), 33 deletions(-) create mode 100644 drivers/remoteproc/imx_dsp_rproc.c create mode 100644 drivers/remoteproc/imx_rproc.h