From mboxrd@z Thu Jan 1 00:00:00 1970 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=-14.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 BB6D8C07E95 for ; Tue, 13 Jul 2021 11:16:08 +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 6D0FF61284 for ; Tue, 13 Jul 2021 11:16:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6D0FF61284 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:Cc:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=DsW83tFi64KicZvCzL+2D+FXLIHdiYTscgWBbWMx/4o=; b=MNB5xfuO+tbrF+ Vr9dJ+A44tibS+E7exp3kJsVrlOJTItb+ODHUnvBBBIUZwowNkcQwCvSeQ4lAriUNICM0GYdv1xxL CaPrqftRZJsT/65sLdkMqzHB4gtDPRbAblwaZHYzvQQtBB2dGnnhNg9MB3S8kQKo3b5TBVw7uO+sa JwjQ/9wNK6lNOmSc7LQ57nFBLvdwSbC6s8ZmMUGDrpUM2i2RmxXibYsOFvdkzcQTxJhs054SIBkFT VG5DiVudEBTz/eVVmlLwWMjrZ6jkURLeuLySAA/AQsTglBkbs0zdFIK9jllF5BUBJgmrW+KwzWw3l e4bSUAIoaeLTXCnf/f0w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1m3GMP-00A6xB-NI; Tue, 13 Jul 2021 11:13:58 +0000 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1m3Fmc-009xu0-Uy for linux-arm-kernel@lists.infradead.org; Tue, 13 Jul 2021 10:37:00 +0000 Received: from gallifrey.ext.pengutronix.de ([2001:67c:670:201:5054:ff:fe8d:eefb] helo=[IPv6:::1]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m3FmP-0002GJ-5j; Tue, 13 Jul 2021 12:36:45 +0200 Message-ID: Subject: Re: [PATCH v15 09/12] dmaengine: imx-sdma: remove ERR009165 on i.mx6ul From: Lucas Stach To: Robin Gong , vkoul@kernel.org, mark.rutland@arm.com, broonie@kernel.org, robh+dt@kernel.org, catalin.marinas@arm.com, will.deacon@arm.com, shawnguo@kernel.org, festevam@gmail.com, s.hauer@pengutronix.de, martin.fuzzey@flowbird.group, u.kleine-koenig@pengutronix.de, dan.j.williams@intel.com, matthias.schiffer@ew.tq-group.com, frieder.schrempf@kontron.de, m.felsch@pengutronix.de, xiaoning.wang@nxp.com Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org, linux-imx@nxp.com, kernel@pengutronix.de, dmaengine@vger.kernel.org, linux-arm-kernel@lists.infradead.org Date: Tue, 13 Jul 2021 12:36:43 +0200 In-Reply-To: <1626201709-19643-10-git-send-email-yibin.gong@nxp.com> References: <1626201709-19643-1-git-send-email-yibin.gong@nxp.com> <1626201709-19643-10-git-send-email-yibin.gong@nxp.com> User-Agent: Evolution 3.40.1 (3.40.1-1.fc34) MIME-Version: 1.0 X-SA-Exim-Connect-IP: 2001:67c:670:201:5054:ff:fe8d:eefb X-SA-Exim-Mail-From: l.stach@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-arm-kernel@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210713_033659_111796_611BE1CD X-CRM114-Status: GOOD ( 22.42 ) 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: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Am Mittwoch, dem 14.07.2021 um 02:41 +0800 schrieb Robin Gong: > ECSPI issue fixed from i.mx6ul at hardware level, no need > ERR009165 anymore on those chips such as i.mx8mq. > > Signed-off-by: Robin Gong > Acked-by: Vinod Koul > --- > drivers/dma/imx-sdma.c | 27 +++++++++++++++++++++++++-- > 1 file changed, 25 insertions(+), 2 deletions(-) > > diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c > index 4cb2e84..211299f 100644 > --- a/drivers/dma/imx-sdma.c > +++ b/drivers/dma/imx-sdma.c > @@ -476,6 +476,13 @@ struct sdma_driver_data { > int num_events; > struct sdma_script_start_addrs *script_addrs; > bool check_ratio; > + /* > + * ecspi ERR009165 fixed should be done in sdma script > + * and it has been fixed in soc from i.mx6ul. > + * please get more information from the below link: > + * https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf > + */ > + bool ecspi_fixed; > }; > > struct sdma_engine { > @@ -596,6 +603,13 @@ static struct sdma_driver_data sdma_imx6q = { > .script_addrs = &sdma_script_imx6q, > }; > > +static struct sdma_driver_data sdma_imx6ul = { > + .chnenbl0 = SDMA_CHNENBL0_IMX35, > + .num_events = 48, > + .script_addrs = &sdma_script_imx6q, > + .ecspi_fixed = true, > +}; > + > static struct sdma_script_start_addrs sdma_script_imx7d = { > .ap_2_ap_addr = 644, > .uart_2_mcu_addr = 819, > @@ -629,6 +643,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,imx6ul-sdma", .data = &sdma_imx6ul, }, > { .compatible = "fsl,imx8mq-sdma", .data = &sdma_imx8mq, }, > { /* sentinel */ } > }; > @@ -947,8 +962,16 @@ static void sdma_get_pc(struct sdma_channel *sdmac, > break; > case IMX_DMATYPE_CSPI: > per_2_emi = sdma->script_addrs->app_2_mcu_addr; > - emi_2_per = sdma->script_addrs->mcu_2_ecspi_addr; > - sdmac->is_ram_script = true; > + > + /* Use rom script mcu_2_app if ERR009165 fixed */ > + if (sdmac->sdma->drvdata->ecspi_fixed) { > + emi_2_per = sdma->script_addrs->mcu_2_app_addr; > + sdmac->is_ram_script = false; This second line in this clause isn't needed. Please just move this "sdmac->is_ram_script = false;" to the top of this function, so it's easy to see that this is the default value. Regards, Lucas > + } else { > + emi_2_per = sdma->script_addrs->mcu_2_ecspi_addr; > + sdmac->is_ram_script = true; > + } > + > break; > case IMX_DMATYPE_EXT: > case IMX_DMATYPE_SSI: _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel