From patchwork Mon Jan 28 06:08:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angus Ainslie X-Patchwork-Id: 10783259 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0E26F91E for ; Mon, 28 Jan 2019 06:09:17 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id F038E2A222 for ; Mon, 28 Jan 2019 06:09:16 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E4E692A22C; Mon, 28 Jan 2019 06:09:16 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 960F82A222 for ; Mon, 28 Jan 2019 06:09:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726689AbfA1GIu (ORCPT ); Mon, 28 Jan 2019 01:08:50 -0500 Received: from node.akkea.ca ([192.155.83.177]:59382 "EHLO node.akkea.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726607AbfA1GIu (ORCPT ); Mon, 28 Jan 2019 01:08:50 -0500 Received: from localhost (localhost [127.0.0.1]) by node.akkea.ca (Postfix) with ESMTP id 70E8C4E2051; Mon, 28 Jan 2019 06:08:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655729; bh=YV7evlfUpCm1dkvzmR2FsHaiKUjwEqKtN/TqcgcdxSQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=AYl266RKyavEpchUQ7VdxF8gWoIOz62hfuG0qlo8VEbXqHNPlXjvRXgGMgYMWnmfQ 8+2CLC9mo6dXmPcmnSVwyuCIEQRCCZ9fBMZBHYLNM2U2u5VFQbvxS0yxBjmRVnO9sK XNbdsvampUauH5ZFMc2nx6aG8Z35AI+42MjWqpVE= X-Virus-Scanned: Debian amavisd-new at mail.akkea.ca Received: from node.akkea.ca ([127.0.0.1]) by localhost (mail.akkea.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SjdRXfibeeab; Mon, 28 Jan 2019 06:08:49 +0000 (UTC) Received: from localhost.localdomain (198-48-167-13.cpe.pppoe.ca [198.48.167.13]) by node.akkea.ca (Postfix) with ESMTPSA id 70BF24E204D; Mon, 28 Jan 2019 06:08:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655729; bh=YV7evlfUpCm1dkvzmR2FsHaiKUjwEqKtN/TqcgcdxSQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=AYl266RKyavEpchUQ7VdxF8gWoIOz62hfuG0qlo8VEbXqHNPlXjvRXgGMgYMWnmfQ 8+2CLC9mo6dXmPcmnSVwyuCIEQRCCZ9fBMZBHYLNM2U2u5VFQbvxS0yxBjmRVnO9sK XNbdsvampUauH5ZFMc2nx6aG8Z35AI+42MjWqpVE= From: "Angus Ainslie (Purism)" To: angus@akkea.ca Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Lucas Stach , Daniel Baluta Subject: [PATCH v5 1/5] dmaengine: imx-sdma: add clock ratio 1:1 check Date: Sun, 27 Jan 2019 23:08:36 -0700 Message-Id: <20190128060840.31695-2-angus@akkea.ca> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190128060840.31695-1-angus@akkea.ca> References: <20190120023150.17138-1-angus@akkea.ca> <20190128060840.31695-1-angus@akkea.ca> Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On i.mx8 mscale B0 chip, AHB/SDMA clock ratio 2:1 can't be supportted, since SDMA clock ratio has to be increased to 250Mhz, AHB can't reach to 500Mhz, so use 1:1 instead. Based on NXP commit MLK-16841-1 by Robin Gong Signed-off-by: Angus Ainslie (Purism) Reviewed-by: Lucas Stach --- drivers/dma/imx-sdma.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index 0b3a67ff8e82..757fad2fbfae 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -440,6 +440,8 @@ struct sdma_engine { unsigned int irq; dma_addr_t bd0_phys; struct sdma_buffer_descriptor *bd0; + /* clock ratio for AHB:SDMA core. 1:1 is 1, 2:1 is 0*/ + bool clk_ratio; }; static int sdma_config_write(struct dma_chan *chan, @@ -662,8 +664,11 @@ static int sdma_run_channel0(struct sdma_engine *sdma) dev_err(sdma->dev, "Timeout waiting for CH0 ready\n"); /* Set bits of CONFIG register with dynamic context switching */ - if (readl(sdma->regs + SDMA_H_CONFIG) == 0) - writel_relaxed(SDMA_H_CONFIG_CSM, sdma->regs + SDMA_H_CONFIG); + reg = readl(sdma->regs + SDMA_H_CONFIG); + if ((reg & SDMA_H_CONFIG_CSM) == 0) { + reg |= SDMA_H_CONFIG_CSM; + writel_relaxed(reg, sdma->regs + SDMA_H_CONFIG); + } return ret; } @@ -1840,6 +1845,9 @@ static int sdma_init(struct sdma_engine *sdma) if (ret) goto disable_clk_ipg; + if (clk_get_rate(sdma->clk_ahb) == clk_get_rate(sdma->clk_ipg)) + sdma->clk_ratio = 1; + /* Be sure SDMA has not started yet */ writel_relaxed(0, sdma->regs + SDMA_H_C0PTR); @@ -1880,8 +1888,10 @@ static int sdma_init(struct sdma_engine *sdma) writel_relaxed(0x4050, sdma->regs + SDMA_CHN0ADDR); /* Set bits of CONFIG register but with static context switching */ - /* FIXME: Check whether to set ACR bit depending on clock ratios */ - writel_relaxed(0, sdma->regs + SDMA_H_CONFIG); + if (sdma->clk_ratio) + writel_relaxed(SDMA_H_CONFIG_ACR, sdma->regs + SDMA_H_CONFIG); + else + writel_relaxed(0, sdma->regs + SDMA_H_CONFIG); writel_relaxed(ccb_phys, sdma->regs + SDMA_H_C0PTR); From patchwork Mon Jan 28 06:08:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angus Ainslie X-Patchwork-Id: 10783257 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1ECDC14E1 for ; Mon, 28 Jan 2019 06:09:16 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0CB4D2A222 for ; Mon, 28 Jan 2019 06:09:16 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 00B5A2A22C; Mon, 28 Jan 2019 06:09:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id AB7AD2A222 for ; Mon, 28 Jan 2019 06:09:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726713AbfA1GJK (ORCPT ); Mon, 28 Jan 2019 01:09:10 -0500 Received: from node.akkea.ca ([192.155.83.177]:59408 "EHLO node.akkea.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725782AbfA1GIv (ORCPT ); Mon, 28 Jan 2019 01:08:51 -0500 Received: from localhost (localhost [127.0.0.1]) by node.akkea.ca (Postfix) with ESMTP id 477074E2056; Mon, 28 Jan 2019 06:08:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655730; bh=QmIBLVdbJ3X4Zs3xnT5fPDB4oumJvEdRGSTkpTuJ1IY=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=b8CU70ktiDkZpcm+wWRJIw9jpU6z7PbEOGA0NIg0BCGT6Ww1gQD5/ILOB8xbkj8qj LLix5RnXTd2KCOuQq/l2Z6wLh26Hks5Rd8r+NeoifT3ktqrIGerQcc/BF1MJFeeO/S MSPzVEvPWVe83MXYBbL9Nw5sggzWnXPa+1cQAKTQ= X-Virus-Scanned: Debian amavisd-new at mail.akkea.ca Received: from node.akkea.ca ([127.0.0.1]) by localhost (mail.akkea.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id B6J09s486Qe7; Mon, 28 Jan 2019 06:08:49 +0000 (UTC) Received: from localhost.localdomain (198-48-167-13.cpe.pppoe.ca [198.48.167.13]) by node.akkea.ca (Postfix) with ESMTPSA id 36A2C4E204B; Mon, 28 Jan 2019 06:08:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655729; bh=QmIBLVdbJ3X4Zs3xnT5fPDB4oumJvEdRGSTkpTuJ1IY=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=AWjjoniXOD+Z+ZSRmsENhUdOWO3cDG9GAwi9la/RH6b42yLiSxm2qL07VJz4ZQiwZ W1AqqpjfBE8fbKUA0ezQwoWJm2B4wC+7mBFSTFARXChp+cnlPKejmHvFm7wE9t2a7p GCwUZcsbc8M6tKyYhiqSPkJNcl0ir4m8+x39fKuc= From: "Angus Ainslie (Purism)" To: angus@akkea.ca Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Lucas Stach , Daniel Baluta Subject: [PATCH v5 2/5] dmaengine: imx-sdma: add imx8mq sdma compatible parts Date: Sun, 27 Jan 2019 23:08:37 -0700 Message-Id: <20190128060840.31695-3-angus@akkea.ca> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190128060840.31695-1-angus@akkea.ca> References: <20190120023150.17138-1-angus@akkea.ca> <20190128060840.31695-1-angus@akkea.ca> Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This is identical to the imx7d. Signed-off-by: Angus Ainslie (Purism) --- drivers/dma/imx-sdma.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index 757fad2fbfae..c4db4fe6bcc9 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -578,6 +578,9 @@ static const struct platform_device_id sdma_devtypes[] = { }, { .name = "imx7d-sdma", .driver_data = (unsigned long)&sdma_imx7d, + }, { + .name = "imx8mq-sdma", + .driver_data = (unsigned long)&sdma_imx7d, }, { /* sentinel */ } @@ -592,6 +595,7 @@ static const struct of_device_id sdma_dt_ids[] = { { .compatible = "fsl,imx31-sdma", .data = &sdma_imx31, }, { .compatible = "fsl,imx25-sdma", .data = &sdma_imx25, }, { .compatible = "fsl,imx7d-sdma", .data = &sdma_imx7d, }, + { .compatible = "fsl,imx8mq-sdma", .data = &sdma_imx7d, }, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, sdma_dt_ids); From patchwork Mon Jan 28 06:08:38 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angus Ainslie X-Patchwork-Id: 10783255 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 620F914E1 for ; Mon, 28 Jan 2019 06:09:11 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 505872A222 for ; Mon, 28 Jan 2019 06:09:11 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 44F052A22C; Mon, 28 Jan 2019 06:09:11 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DC1662A222 for ; Mon, 28 Jan 2019 06:09:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726149AbfA1GJF (ORCPT ); Mon, 28 Jan 2019 01:09:05 -0500 Received: from node.akkea.ca ([192.155.83.177]:59428 "EHLO node.akkea.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726713AbfA1GIv (ORCPT ); Mon, 28 Jan 2019 01:08:51 -0500 Received: from localhost (localhost [127.0.0.1]) by node.akkea.ca (Postfix) with ESMTP id 053574E2058; Mon, 28 Jan 2019 06:08:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655731; bh=okZKtmM0iwQ8WWQf1CT/2bd9GBMAsXjPAUMBFfJblu4=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=Y5cF4xMqb7J1HzrKzEUwgBWCbc5RRycT1HS2pHfEYkFxDfVsew4WaCWKRxCh57Out aFGTjfFm9G0Rd6I1+DqrCZmXELQJ0lJf1p6kS9wlZAr80M8ZHKUzLP3RmsPqWhyBTG AQLqQ+y5oCslqxpkLSt7L888zz2hJ3VR6Vl1H/x8= X-Virus-Scanned: Debian amavisd-new at mail.akkea.ca Received: from node.akkea.ca ([127.0.0.1]) by localhost (mail.akkea.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HrXjpxVBtMrp; Mon, 28 Jan 2019 06:08:50 +0000 (UTC) Received: from localhost.localdomain (198-48-167-13.cpe.pppoe.ca [198.48.167.13]) by node.akkea.ca (Postfix) with ESMTPSA id 0FECB4E204D; Mon, 28 Jan 2019 06:08:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655730; bh=okZKtmM0iwQ8WWQf1CT/2bd9GBMAsXjPAUMBFfJblu4=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=jkTgbNeoegCbsf/hISPeMkt4dpusg1xExfvtXKuleXn72uvRh6TbwdNu4Hu3TgidE sXrri3JzTYK1WkGE8WDCYp1JgNpCeUX900b16m6cN0QCgi7SaxfP/ucYaUEch574Ez sKJzrqmuuwfSND6t4qs6lo5t5zAZW2GXwZnto9M8= From: "Angus Ainslie (Purism)" To: angus@akkea.ca Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Lucas Stach , Daniel Baluta Subject: [PATCH v5 3/5] dt-bindings: dma: fsl-imx-sdma: add fsl,imx8mq to the accepted compatible node Date: Sun, 27 Jan 2019 23:08:38 -0700 Message-Id: <20190128060840.31695-4-angus@akkea.ca> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190128060840.31695-1-angus@akkea.ca> References: <20190120023150.17138-1-angus@akkea.ca> <20190128060840.31695-1-angus@akkea.ca> Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Add an fsl,imx8mq compatible string Signed-off-by: Angus Ainslie (Purism) Reviewed-by: Lucas Stach --- Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt index 3c9a57a8443b..9d8bbac27d8b 100644 --- a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt +++ b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt @@ -9,6 +9,7 @@ Required properties: "fsl,imx53-sdma" "fsl,imx6q-sdma" "fsl,imx7d-sdma" + "fsl,imx8mq-sdma" The -to variants should be preferred since they allow to determine the correct ROM script addresses needed for the driver to work without additional firmware. From patchwork Mon Jan 28 06:08:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angus Ainslie X-Patchwork-Id: 10783251 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BA68314E1 for ; Mon, 28 Jan 2019 06:09:04 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A97022A222 for ; Mon, 28 Jan 2019 06:09:04 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9DC152A22A; Mon, 28 Jan 2019 06:09:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 453492A222 for ; Mon, 28 Jan 2019 06:09:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726630AbfA1GIx (ORCPT ); Mon, 28 Jan 2019 01:08:53 -0500 Received: from node.akkea.ca ([192.155.83.177]:59442 "EHLO node.akkea.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726746AbfA1GIw (ORCPT ); Mon, 28 Jan 2019 01:08:52 -0500 Received: from localhost (localhost [127.0.0.1]) by node.akkea.ca (Postfix) with ESMTP id B66AB4E205C; Mon, 28 Jan 2019 06:08:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655731; bh=GuTD8SqdJjaQ7GeF6fQeKCli/Z+1RZuP7gejQxTXV+A=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=pV91jwgtHsqCRiTdNPlGoy99iDL3FDdT9cmZwEDwneJpDg8AM7Tcm/+1wOwgIpBZO lCWj8dgoJtwf/noANTOw3fz+U8qlaC/mjdIR3+Sr9lu0QmwVmFYhFYNikBMDEmSvoq pwTAevKE0NF1k0KRljTEcW8Kw+3IwIdglyM6JVCM= X-Virus-Scanned: Debian amavisd-new at mail.akkea.ca Received: from node.akkea.ca ([127.0.0.1]) by localhost (mail.akkea.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Gw33rgbD49UY; Mon, 28 Jan 2019 06:08:51 +0000 (UTC) Received: from localhost.localdomain (198-48-167-13.cpe.pppoe.ca [198.48.167.13]) by node.akkea.ca (Postfix) with ESMTPSA id C663B4E204E; Mon, 28 Jan 2019 06:08:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655731; bh=GuTD8SqdJjaQ7GeF6fQeKCli/Z+1RZuP7gejQxTXV+A=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=pV91jwgtHsqCRiTdNPlGoy99iDL3FDdT9cmZwEDwneJpDg8AM7Tcm/+1wOwgIpBZO lCWj8dgoJtwf/noANTOw3fz+U8qlaC/mjdIR3+Sr9lu0QmwVmFYhFYNikBMDEmSvoq pwTAevKE0NF1k0KRljTEcW8Kw+3IwIdglyM6JVCM= From: "Angus Ainslie (Purism)" To: angus@akkea.ca Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Lucas Stach , Daniel Baluta Subject: [PATCH v5 4/5] dmaengine: imx-sdma: add a test for imx8mq multi sdma devices Date: Sun, 27 Jan 2019 23:08:39 -0700 Message-Id: <20190128060840.31695-5-angus@akkea.ca> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190128060840.31695-1-angus@akkea.ca> References: <20190120023150.17138-1-angus@akkea.ca> <20190128060840.31695-1-angus@akkea.ca> Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On i.mx8mq, there are two sdma instances, and the common dma framework will get a channel dynamically from any available sdma instance whether it's the first sdma device or the second sdma device. Some IPs like SAI only work with sdma2 not sdma1. To make sure the sdma channel is from the correct sdma device, use the node pointer to match. Signed-off-by: Angus Ainslie (Purism) Reviewed-by: Lucas Stach --- drivers/dma/imx-sdma.c | 6 ++++++ include/linux/platform_data/dma-imx.h | 1 + 2 files changed, 7 insertions(+) diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index c4db4fe6bcc9..d5f86becf59e 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -1918,11 +1918,16 @@ static int sdma_init(struct sdma_engine *sdma) static bool sdma_filter_fn(struct dma_chan *chan, void *fn_param) { struct sdma_channel *sdmac = to_sdma_chan(chan); + struct sdma_engine *sdma = sdmac->sdma; struct imx_dma_data *data = fn_param; if (!imx_dma_is_general_purpose(chan)) return false; + /* return false if it's not the right device */ + if (sdma->dev->of_node != data->of_node) + return false; + sdmac->data = *data; chan->private = &sdmac->data; @@ -1950,6 +1955,7 @@ static struct dma_chan *sdma_xlate(struct of_phandle_args *dma_spec, * be set to sdmac->event_id1. */ data.dma_request2 = 0; + data.of_node = ofdma->of_node; return dma_request_channel(mask, sdma_filter_fn, &data); } diff --git a/include/linux/platform_data/dma-imx.h b/include/linux/platform_data/dma-imx.h index 7d964e787299..9daea8d42a10 100644 --- a/include/linux/platform_data/dma-imx.h +++ b/include/linux/platform_data/dma-imx.h @@ -55,6 +55,7 @@ struct imx_dma_data { int dma_request2; /* secondary DMA request line */ enum sdma_peripheral_type peripheral_type; int priority; + struct device_node *of_node; }; static inline int imx_dma_is_ipu(struct dma_chan *chan) From patchwork Mon Jan 28 06:08:40 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Angus Ainslie X-Patchwork-Id: 10783249 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 73F9B14E1 for ; Mon, 28 Jan 2019 06:09:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5FFE42A222 for ; Mon, 28 Jan 2019 06:09:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4DCC32A22A; Mon, 28 Jan 2019 06:09:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 022362A222 for ; Mon, 28 Jan 2019 06:09:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726774AbfA1GIx (ORCPT ); Mon, 28 Jan 2019 01:08:53 -0500 Received: from node.akkea.ca ([192.155.83.177]:59460 "EHLO node.akkea.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726150AbfA1GIw (ORCPT ); Mon, 28 Jan 2019 01:08:52 -0500 Received: from localhost (localhost [127.0.0.1]) by node.akkea.ca (Postfix) with ESMTP id 72BFE4E204D; Mon, 28 Jan 2019 06:08:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655732; bh=aJyv2Anmq+fMmh2Gi9/xrGD4eRTLdWMOQTdSRYOpd8c=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=wb+JVtYh3oZyNQa4t16L6fvOlK1dtxqZTyQKc8MZnCu4Kg4LWaWRuBYdasChj/oAa j9AG1IgC9MMv016EOWBL6LMJDp97cw4ukLlRNQRnmlQSa8U/BFbEHhaRz+qhORVl9l Pn3UNS6oRzKXArGRJaHsIB+Z9IzCbwNSU2WIkQMs= X-Virus-Scanned: Debian amavisd-new at mail.akkea.ca Received: from node.akkea.ca ([127.0.0.1]) by localhost (mail.akkea.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h5e4iN8c030o; Mon, 28 Jan 2019 06:08:52 +0000 (UTC) Received: from localhost.localdomain (198-48-167-13.cpe.pppoe.ca [198.48.167.13]) by node.akkea.ca (Postfix) with ESMTPSA id 868DD4E204B; Mon, 28 Jan 2019 06:08:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akkea.ca; s=mail; t=1548655732; bh=aJyv2Anmq+fMmh2Gi9/xrGD4eRTLdWMOQTdSRYOpd8c=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=wb+JVtYh3oZyNQa4t16L6fvOlK1dtxqZTyQKc8MZnCu4Kg4LWaWRuBYdasChj/oAa j9AG1IgC9MMv016EOWBL6LMJDp97cw4ukLlRNQRnmlQSa8U/BFbEHhaRz+qhORVl9l Pn3UNS6oRzKXArGRJaHsIB+Z9IzCbwNSU2WIkQMs= From: "Angus Ainslie (Purism)" To: angus@akkea.ca Cc: angus.ainslie@puri.sm, Vinod Koul , dmaengine@vger.kernel.org, NXP Linux Team , Pengutronix Kernel Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Lucas Stach , Daniel Baluta Subject: [PATCH v5 5/5] dmaengine: imx-sdma: fix consistent dma test failures Date: Sun, 27 Jan 2019 23:08:40 -0700 Message-Id: <20190128060840.31695-6-angus@akkea.ca> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190128060840.31695-1-angus@akkea.ca> References: <20190120023150.17138-1-angus@akkea.ca> <20190128060840.31695-1-angus@akkea.ca> Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Without the copy being aligned sdma1 fails ~10% of the time Signed-off-by: Angus Ainslie (Purism) --- drivers/dma/imx-sdma.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index d5f86becf59e..88910ec09568 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -2118,6 +2118,7 @@ static int sdma_probe(struct platform_device *pdev) sdma->dma_device.device_prep_dma_memcpy = sdma_prep_memcpy; sdma->dma_device.device_issue_pending = sdma_issue_pending; sdma->dma_device.dev->dma_parms = &sdma->dma_parms; + sdma->dma_device.copy_align = 2; dma_set_max_seg_size(sdma->dma_device.dev, SDMA_BD_MAX_CNT); platform_set_drvdata(pdev, sdma);