From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from Atcsqr.andestech.com (atcsqr.andestech.com [220.128.198.184]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 20C9D3E3160; Wed, 10 Jun 2026 10:03:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.128.198.184 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781085789; cv=none; b=Cg5CS+If+oeQCYl61vVPlaPSDQrusFPFntqfgMhuttUOWmaZek7YAc+Rvui1VZNpQ7cWReZQdtftYEVsYy1JBlrA3auW0e8s6F7TDXdDhZQIoIri6gtTbG8j+O7QfrL/5gAKugAKmd7h1VrltgbrJC5jgug/bBXRa19mNvUOLlc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781085789; c=relaxed/simple; bh=TeCnY+5ryURVyWzpfvFfragz+52zK1Vn31lPFBY7mP4=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=aCHjeAbr+5506KPcHzSH/00efnkYy21Q7HOqdPgUQaRMTDsTdl621NX3kOD72Pv6doNSg0WpyQj6Nj1gGYQixJoQ1p3eKQvxt5iglqtH5b53FN+7L0dCGzn4DL3JLG8JrMuPm7UrVjD13bY6MDvndqL5un/8SG5KfWAz7vVyC6g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=andestech.com; spf=pass smtp.mailfrom=andestech.com; arc=none smtp.client-ip=220.128.198.184 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=andestech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=andestech.com Received: from Atcsqr.andestech.com (localhost [127.0.0.2] (may be forged)) by Atcsqr.andestech.com with ESMTP id 65A9vihg075505; Wed, 10 Jun 2026 17:57:44 +0800 (+08) (envelope-from cl634@andestech.com) Received: from mail.andestech.com (ATCPCS34.andestech.com [10.0.1.134]) by Atcsqr.andestech.com with ESMTPS id 65A9vWCQ075344 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=OK); Wed, 10 Jun 2026 17:57:32 +0800 (+08) (envelope-from cl634@andestech.com) Received: from swlinux02.andestech.com (10.0.15.183) by ATCPCS34.andestech.com (10.0.1.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 10 Jun 2026 17:57:32 +0800 From: CL Wang To: , , , , , CC: , , , Subject: [PATCH v5 0/3] dmaengine: atcdmac300: Add Andes ATCDMAC300 DMA driver Date: Wed, 10 Jun 2026 17:57:21 +0800 Message-ID: <20260610095724.1980622-1-cl634@andestech.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: ATCPCS33.andestech.com (10.0.1.100) To ATCPCS34.andestech.com (10.0.1.134) X-DKIM-Results: atcpcs34.andestech.com; dkim=none; X-DNSRBL: X-SPAM-SOURCE-CHECK: pass X-MAIL:Atcsqr.andestech.com 65A9vihg075505 This patch series adds support for the Andes ATCDMAC300 DMA controller, a memory-to-memory and peripheral DMA controller that provides scatter-gather, cyclic, and slave transfer capabilities. The ATCDMAC300 IP is embedded in AndesCore-based platforms or SoCs such as AE350 and Qilai. Changes in v5: - Update copyright year to 2026 - Remove redundant headers (init.h, iopoll.h, mod_devicetable.h) - Move atcdmac_init_iocp() before of_dma_controller_register() in probe - Change builtin_platform_driver() to module_platform_driver() - Implement .remove callback to support safe module unloading - Update Kconfig entry from bool to tristate - Add MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_LICENSE macros Changes in v4: - Use items list format with descriptions for reg property in DT binding as suggested by Conor Dooley - Re-add Acked-by from Conor Dooley for DT binding patch Changes in v3: - Rename DT binding file from andestech,qilai-dma.yaml to andestech,ae350-dma.yaml - Deprecate IP-core-based compatible usage and align with SoC/platform-based strings - Dropped Acked-by from Conor Dooley due to the above binding change - Remove "andestech,atcdmac300" from of_device_id table - Replace deprecated tasklet with threaded IRQ using devm_request_threaded_irq() and IRQF_ONESHOT - Update locking from spin_lock_bh() to spin_lock_irqsave() - Use builtin_platform_driver() instead of module_platform_driver() - Remove "select DMATEST" from Kconfig - Add separate MAINTAINERS patch (patch 3/3) Please kindly review. CL Wang (3): dt-bindings: dmaengine: Add support for ATCDMAC300 DMA engine dmaengine: atcdmac300: Add driver for Andes ATCDMAC300 DMA controller MAINTAINERS: Add entry for Andes ATCDMAC300 .../bindings/dma/andestech,ae350-dma.yaml | 67 + MAINTAINERS | 6 + drivers/dma/Kconfig | 11 + drivers/dma/Makefile | 1 + drivers/dma/atcdmac300.c | 1518 +++++++++++++++++ drivers/dma/atcdmac300.h | 296 ++++ 6 files changed, 1899 insertions(+) create mode 100644 Documentation/devicetree/bindings/dma/andestech,ae350-dma.yaml create mode 100644 drivers/dma/atcdmac300.c create mode 100644 drivers/dma/atcdmac300.h -- 2.34.1