From patchwork Thu Mar 7 01:45:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Long Cheng X-Patchwork-Id: 10842167 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 76BA11515 for ; Thu, 7 Mar 2019 01:46:29 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5FE502E93F for ; Thu, 7 Mar 2019 01:46:29 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 523F12E944; Thu, 7 Mar 2019 01:46:29 +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=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 0B3002E93F for ; Thu, 7 Mar 2019 01:46:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject: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=l/PsGV/hOpIjOZJftgmY5e1uE/g+DPaEbeZgSuqYbrc=; b=ImvRP5QB26KlOt EYI+pfB/oiboiHvmxQOEt1HtR+zAPqQHUkIUKiwU+MHQSNIwmEI08QS2qpDpz4bQP5u1SL6dm8MaK nuFGGKGnvJYN8QIsYHfOoE9ACqtz88LvHxn6miXBEADie+u7EKEGLTlvWbP7Em8kiFmePldYKvCpr cVX/8y7p0IVf8TNndfn5A6wnPIvuTwAKP6DfksJ6XPuO1xzyBuTdRtRm/cQ0lu/hUMGzXZYSS5cPS 6tNZwv+dQ3uZm2aNse4VVrLs9bYuqbLBcom1MhVcQcrPsN093ytOoRIk1SRUsrW3FWGA2fiEgzI5/ 58tas6RGOWV+glIWovlg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h1i6v-0005tX-Vu; Thu, 07 Mar 2019 01:46:14 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h1i6Y-0005NI-HR; Thu, 07 Mar 2019 01:45:53 +0000 X-UUID: 0caa4b69ea3c4d7bace05aff277c9668-20190306 X-UUID: 0caa4b69ea3c4d7bace05aff277c9668-20190306 Received: from mtkcas68.mediatek.inc [(172.29.94.19)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 962455428; Wed, 06 Mar 2019 17:45:47 -0800 Received: from mtkmbs08n1.mediatek.inc (172.21.101.55) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 6 Mar 2019 17:45:45 -0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs08n1.mediatek.inc (172.21.101.55) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Thu, 7 Mar 2019 09:45:38 +0800 Received: from localhost.localdomain (10.17.3.153) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Thu, 7 Mar 2019 09:45:37 +0800 From: Long Cheng To: Vinod Koul , Randy Dunlap , "Rob Herring" , Mark Rutland , Ryder Lee , Sean Wang , Nicolas Boichat , Matthias Brugger Subject: [PATCH v11 0/4] add uart DMA function Date: Thu, 7 Mar 2019 09:45:31 +0800 Message-ID: <1551923135-32479-1-git-send-email-long.cheng@mediatek.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190306_174550_585522_EE6287CA X-CRM114-Status: GOOD ( 10.50 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Zhenbao Liu , devicetree@vger.kernel.org, srv_heupstream@mediatek.com, Greg Kroah-Hartman , Sean Wang , linux-kernel@vger.kernel.org, Long Cheng , linux-mediatek@lists.infradead.org, linux-serial@vger.kernel.org, Jiri Slaby , dmaengine@vger.kernel.org, Yingjoe Chen , Dan Williams , linux-arm-kernel@lists.infradead.org Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP In Mediatek SOCs, the uart can support DMA function. Base on DMA engine formwork, we add the DMA code to support uart. And put the code under drivers/dma/mediatek. This series contains document bindings, Kconfig to control the function enable or not, device tree including interrupt and dma device node, the code of UART DMA Changes compared to v10 -modify DMA tx status function -modify 8250_mtk for DMA rx -add notes to binding Document. Changes compared to v9 -rename dt-bindings file -remove direction from device_config -simplified code Changes compared to v8 -revise missing items Changes compared to v7: -modify apdma uart tx Changes compared to v6: -Correct spelling Changes compared to v5: -move 'requst irqs' to alloc channel -remove tasklet. Changes compared to v4: -modify Kconfig depends on. Changes compared to v3: -fix CONFIG_PM, will cause build fail Changes compared to v2: -remove unimportant parameters -instead of cookie, use APIs of virtual channel. -use of_dma_xlate_by_chan_id. Changes compared to v1: -mian revised file, 8250_mtk_dma.c --parameters renamed for standard --remove atomic operation Long Cheng (4): dmaengine: 8250_mtk_dma: add MediaTek uart DMA support arm: dts: mt2712: add uart APDMA to device tree dt-bindings: dma: uart: rename binding serial: 8250-mtk: modify uart DMA rx .../devicetree/bindings/dma/8250_mtk_dma.txt | 33 - .../devicetree/bindings/dma/mtk-uart-apdma.txt | 55 ++ arch/arm64/boot/dts/mediatek/mt2712e.dtsi | 51 ++ drivers/dma/mediatek/Kconfig | 11 + drivers/dma/mediatek/Makefile | 1 + drivers/dma/mediatek/mtk-uart-apdma.c | 660 ++++++++++++++++++++ drivers/tty/serial/8250/8250_mtk.c | 53 +- 7 files changed, 801 insertions(+), 63 deletions(-) delete mode 100644 Documentation/devicetree/bindings/dma/8250_mtk_dma.txt create mode 100644 Documentation/devicetree/bindings/dma/mtk-uart-apdma.txt create mode 100644 drivers/dma/mediatek/mtk-uart-apdma.c