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=-9.7 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,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 5A7C6C43215 for ; Mon, 25 Nov 2019 06:50:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 154E220748 for ; Mon, 25 Nov 2019 06:50:10 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="CWNwUM5a" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725747AbfKYGuI (ORCPT ); Mon, 25 Nov 2019 01:50:08 -0500 Received: from mail-eopbgr800059.outbound.protection.outlook.com ([40.107.80.59]:29472 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725535AbfKYGuI (ORCPT ); Mon, 25 Nov 2019 01:50:08 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W9fR9QYztQsxZ4tZ1QuJ2OGglhqQ4VC3JLLFvnu2uNLdkjhsSKnHxjiXuXXgeGYDAbrDE4uKFlpbOto+cufltUugT5zNd4CVIHUyhjPu7ediqKDxZ83GJ61isLq+YfRdwCtBFLeIp0367GcmeoQPEYGDPHLQv7RYprK/dpyqLhDYm0UaDF8y2oW0wQVuzoH5ZFlYfCpCx2Avgw1fbQuOAoAXN4B3Lx5Vn+G8+sYuwWKPIapmGt7/dVZKxwyl5OOWuxoREX/gl1UW2/qkqpZM09QY1RW4FidPbHTuVxB/gZLq4zef6hb+4Toalw/AYMSPwAIvCruAqcLT/d2kxGA5dQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h6l5KvdcJa0ccXBN+PYpy6Nc/2p21mtTmyjYszCsbwM=; b=I3qNaGMqlHPYAs9OtHNNvkJtrzr50EnG+hE46UyKUFcT5/t151CTUm/x7NoCs3qV1iz+o3evIBkcb51K9uOb0HC1pSkqULTlfYPdeRz6CPA5JMKix/3J4RkOyRQ6R8DZDPsmVA4fLF6UdK9qN1yEva5gasZtEpe62PJeueSTwEoTfKGSN4ViNVcUdmBs1NJO559zBPqFRCfxQg+KY8F+rTTaZPrJs1CzGJ0QMELfzO/zS4QoFGlJAUNjBxbhnJD4/RZtO39w9icIj5jX52LGhUXvSYMhxLeSs5tMK5MarQ3mjPljBJTrYMpm0Y7IinnczFHH9xbMOShXvvX4fvUHWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none (sender ip is 149.199.60.83) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=xhdpunnaia40.localdomain; dmarc=none action=none header.from=xilinx.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector2-xilinx-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h6l5KvdcJa0ccXBN+PYpy6Nc/2p21mtTmyjYszCsbwM=; b=CWNwUM5avgO5QoedtsfOxfKd6CEgK4yMfSYCaSTCWyLtfVXryBWTZaHGrYpuUCln2n8oQY7G/6tRiqjz5Wl4E+vUFyzGAnlWIviUzbCi7F45aCBmTHU7NUIDwajHilTlk8+YcFqVH9HRiRiHMz2JuoYLXmCYOxfHM5r9XiEVqmo= Received: from SN4PR0201CA0041.namprd02.prod.outlook.com (2603:10b6:803:2e::27) by DM5PR02MB3704.namprd02.prod.outlook.com (2603:10b6:4:af::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2474.19; Mon, 25 Nov 2019 06:50:04 +0000 Received: from BL2NAM02FT054.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e46::204) by SN4PR0201CA0041.outlook.office365.com (2603:10b6:803:2e::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2474.17 via Frontend Transport; Mon, 25 Nov 2019 06:50:04 +0000 Authentication-Results: spf=none (sender IP is 149.199.60.83) smtp.mailfrom=xhdpunnaia40.localdomain; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=xilinx.com; Received-SPF: None (protection.outlook.com: xhdpunnaia40.localdomain does not designate permitted sender hosts) Received: from xsj-pvapsmtpgw01 (149.199.60.83) by BL2NAM02FT054.mail.protection.outlook.com (10.152.77.107) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.2474.17 via Frontend Transport; Mon, 25 Nov 2019 06:50:03 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66] helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1iZ84Y-0005dU-Gg; Sun, 24 Nov 2019 22:42:10 -0800 Received: from localhost ([127.0.0.1] helo=xsj-pvapsmtp01) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1iZ84R-0003BF-Vc; Sun, 24 Nov 2019 22:42:04 -0800 Received: from [10.140.184.180] (helo=xhdpunnaia40.localdomain) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1iZ84R-0003Af-6u; Sun, 24 Nov 2019 22:42:03 -0800 Received: by xhdpunnaia40.localdomain (Postfix, from userid 13245) id 65911105F6F; Mon, 25 Nov 2019 12:12:02 +0530 (IST) From: Radhey Shyam Pandey To: vkoul@kernel.org, dan.j.williams@intel.com, michal.simek@xilinx.com, nick.graumann@gmail.com, andrea.merello@gmail.com, appana.durga.rao@xilinx.com, mcgrof@kernel.org Cc: dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, git@xilinx.com, Radhey Shyam Pandey Subject: [PATCH] dmaengine: xilinx_dma: Reset DMA channel in dma_terminate_all Date: Mon, 25 Nov 2019 12:12:01 +0530 Message-Id: <1574664121-13451-1-git-send-email-radhey.shyam.pandey@xilinx.com> X-Mailer: git-send-email 2.7.4 X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23620.005 X-TM-AS-Result: No--0.351-7.0-31-1 X-imss-scan-details: No--0.351-7.0-31-1;No--0.351-5.0-31-1 X-TM-AS-User-Approved-Sender: No;No X-TM-AS-Result-Xfilter: Match text exemption rules:No X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(4636009)(346002)(396003)(39860400002)(136003)(376002)(428003)(249900001)(189003)(199004)(50466002)(14444005)(42186006)(16586007)(103686004)(51416003)(316002)(36756003)(5660300002)(26005)(2616005)(336012)(70586007)(42882007)(70206006)(305945005)(498600001)(81166006)(50226002)(81156014)(8676002)(48376002)(2906002)(8936002)(356004)(47776003)(4326008)(107886003)(6266002)(450100002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR02MB3704;H:xsj-pvapsmtpgw01;FPR:;SPF:None;LANG:en;PTR:unknown-60-83.xilinx.com;MX:0;A:0; MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 374d063a-3a8f-4f3d-13a7-08d77173b362 X-MS-TrafficTypeDiagnostic: DM5PR02MB3704: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:4502; X-Forefront-PRVS: 0232B30BBC X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XM6qyOSU4XYNgWGzWUS8WC7jNFjOXij1yxWkD+zfrlOukevpY6h6xab8vQYa3Ci5jrwW4L7T5Rt0VsnVfargeTNn9yha3TMQNrnTZNLmuTnvxF1mE4OJPc4EqGpMD467iw8NmfN2hdAUPOcPeFKqUAxPe5Odo8/lSGnGgo3KFup2SQcXnKi/50+UJSx6bdW9RRk2ewyaxaKd61wO4BhTaHYCstN8tYoSKbjqEWUMe8JrRNHNsbLaJQsG0p5M9flZhlcgpHe1prCJbY67ZN9/yjDpb7O9WwdyFGhlq3wPGK0lGa5fTmYYGCrHV2P4xHsjysjggfckjhwYLbMnxqbc52L2VMnXPq1WuMNSgggXmjpa+2dpTOgPibP9ZZqzYaGeUPDB7yncBGN0IDGlLHTMKrlPNKWFN5w/IjYbjmQWlGTomKP9RF9kLSKuhPskvjuS X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Nov 2019 06:50:03.9210 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 374d063a-3a8f-4f3d-13a7-08d77173b362 X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.60.83];Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR02MB3704 Sender: dmaengine-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: dmaengine@vger.kernel.org Reset DMA channel after stop to ensure that pending transfers and FIFOs in the datapath are flushed or completed. It fixes intermittent data verification failure reported by xilinx dma test client. Signed-off-by: Radhey Shyam Pandey --- drivers/dma/xilinx/xilinx_dma.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/dma/xilinx/xilinx_dma.c b/drivers/dma/xilinx/xilinx_dma.c index a9c5d5c..6f1539c 100644 --- a/drivers/dma/xilinx/xilinx_dma.c +++ b/drivers/dma/xilinx/xilinx_dma.c @@ -2404,16 +2404,17 @@ static int xilinx_dma_terminate_all(struct dma_chan *dchan) u32 reg; int err; - if (chan->cyclic) - xilinx_dma_chan_reset(chan); - - err = chan->stop_transfer(chan); - if (err) { - dev_err(chan->dev, "Cannot stop channel %p: %x\n", - chan, dma_ctrl_read(chan, XILINX_DMA_REG_DMASR)); - chan->err = true; + if (!chan->cyclic) { + err = chan->stop_transfer(chan); + if (err) { + dev_err(chan->dev, "Cannot stop channel %p: %x\n", + chan, dma_ctrl_read(chan, + XILINX_DMA_REG_DMASR)); + chan->err = true; + } } + xilinx_dma_chan_reset(chan); /* Remove and free all of the descriptors in the lists */ xilinx_dma_free_descriptors(chan); chan->idle = true; -- 2.7.4