From patchwork Mon Mar 28 09:52:22 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zong Li X-Patchwork-Id: 12793378 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 34110C4332F for ; Mon, 28 Mar 2022 09:52:52 +0000 (UTC) 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: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=7P6dgHLaHfLkZpyUagSyw71YATBYxv8WF/ULv/BcMoU=; b=3+SyqqE0f80BbM djkOoLQVC5TNuuim4PfAft/2b6SnW7jGckAQ+JgZkbzq506rqmVvPDKoRgXv6lsXBDluDAgSL52Le DlciqWHhOZFvw3tcVhMQ5QUSvu2hpOjM9zdiRSmkObwmM/8D12Moy2ledZcRlNjzW1yfq6BS7T1ji aoC1u1z0+0Ie+IrVzHgDtGK0iscGo8K4RRYV5mJJ+T4vcHElTnOiGufZS3lEz0AU+b/tCHiK+9r6h QQG3Ego3F+gYkjQ0WBtUS7c8uj5jyFRsDxj+MIIPWopoFV/UH5g/IDmSfaCLz2YX75b7v4PvvUq5L V6OAdMOFee/of5FuMlTQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3D-0085eZ-De; Mon, 28 Mar 2022 09:52:39 +0000 Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3B-0085dT-G5 for linux-riscv@lists.infradead.org; Mon, 28 Mar 2022 09:52:38 +0000 Received: by mail-pl1-x62c.google.com with SMTP id w8so14329781pll.10 for ; Mon, 28 Mar 2022 02:52:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vPzKfL7z/ioVzkWZmdGnUOpm+jBpSszjouCZkOgerBU=; b=PYeDYo1HZ+7zO+AjGFbIt9N+/gsEwVMegWIS1I/bcFoGw2PEndjfGBaRvllTEbs38N bXCJNvmvP6ZAfHeZpXIU4iyuyb9MptbvUFETlcAZE46xCGPDdPvBYAQ9zSkk8R5DDTgb 5S60isfPn4L159WOuC8jbTlz9F+uOPIOXLZ3E2c7Aq1lVQ0XEKMWPuWa+YcdvPUL2O35 TY/cFDmCgsRX4OoFTJs3BMODa300OOCIj/TSt3G2gzC+bAXHZ78QMcfs4eEkQ6fJ6XHr alMg+XAF/PD2Yo6eM4tpg2eMEB53C0KBsrNeMRUSDUm7xmN8zuQjbskLfdazAxBn3DBG S1hQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=vPzKfL7z/ioVzkWZmdGnUOpm+jBpSszjouCZkOgerBU=; b=OsqXtgBIiaJ3dRRylm13FN61uhJE7gz4670T+HeP8ETpsS63OmMcirDd4QkvY3rCAI O6bI7FkgCJ0hfClND1jsmIXdXPF0fRNlYBouY7cLV8sz7z/NJzJxZKbwFXhEPnU2qTco zKjcBnB13J/F6b2K6tVt1DDCxcHYLQPTmw9I4JktGO79dDZorlz0/R4Vh+NKRhhIAjqF XSQ1Bh5z4bT///TpzVR1JOREAI6jH1a2DGhavxb7oHgoeRCrvcpo5WYMXs1+tmQ6kSHd qzeo3rdyFdDfiRqUYc2QFsT8sh4UxW0+rA8iNDPTl1EP7crXhq8t09dOZT60d6ecUOD9 DmEw== X-Gm-Message-State: AOAM533jMSuXvgZGwWLED+0WzBhWcvO02PFC0y7IAJ0HNX0eW4GtxsJW 9800FuSmxSomPk/PXKgaOBgO2w== X-Google-Smtp-Source: ABdhPJyTbXAWOqRoBuc+FpnhaK605V2eNVJRooRDgQ+I4q3Ph/Hxo0TJOY0YQ0dhaz7sKJr7ECLF+Q== X-Received: by 2002:a17:902:ea52:b0:153:fd04:c158 with SMTP id r18-20020a170902ea5200b00153fd04c158mr25087355plg.83.1648461156722; Mon, 28 Mar 2022 02:52:36 -0700 (PDT) Received: from hsinchu16.internal.sifive.com (59-124-168-89.hinet-ip.hinet.net. [59.124.168.89]) by smtp.gmail.com with ESMTPSA id g4-20020a633744000000b00381efba48b0sm12255117pgn.44.2022.03.28.02.52.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Mar 2022 02:52:36 -0700 (PDT) From: Zong Li To: robh+dt@kernel.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, krzysztof.kozlowski@canonical.com, conor.dooley@microchip.com, geert@linux-m68k.org, bin.meng@windriver.com, green.wan@sifive.com, vkoul@kernel.org, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Cc: Zong Li , Rob Herring , Palmer Dabbelt Subject: [PATCH v8 1/4] dt-bindings: dma-engine: sifive, fu540: Add dma-channels property and modify compatible Date: Mon, 28 Mar 2022 17:52:22 +0800 Message-Id: <7cc9a7b5f7e6c28fc9eb172c441b5aed2159b8a0.1648461096.git.zong.li@sifive.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220328_025237_561800_52D4BE36 X-CRM114-Status: GOOD ( 10.04 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org Add dma-channels property, then we can determine how many channels there by device tree, rather than statically defining it in PDMA driver. In addition, we also modify the compatible for PDMA versioning scheme. Signed-off-by: Zong Li Reviewed-by: Rob Herring Suggested-by: Palmer Dabbelt Reviewed-by: Palmer Dabbelt Acked-by: Palmer Dabbelt Acked-by: Krzysztof Kozlowski Reviewed-by: Bin Meng --- .../bindings/dma/sifive,fu540-c000-pdma.yaml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml index 47c46af25536..3271755787b4 100644 --- a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml +++ b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml @@ -28,7 +28,15 @@ allOf: properties: compatible: items: - - const: sifive,fu540-c000-pdma + - enum: + - sifive,fu540-c000-pdma + - const: sifive,pdma0 + description: + Should be "sifive,-pdma" and "sifive,pdma". + Supported compatible strings are - + "sifive,fu540-c000-pdma" for the SiFive PDMA v0 as integrated onto the + SiFive FU540 chip resp and "sifive,pdma0" for the SiFive PDMA v0 IP block + with no chip integration tweaks. reg: maxItems: 1 @@ -37,6 +45,12 @@ properties: minItems: 1 maxItems: 8 + dma-channels: + description: For backwards-compatibility, the default value is 4 + minimum: 1 + maximum: 4 + default: 4 + '#dma-cells': const: 1 @@ -50,8 +64,9 @@ unevaluatedProperties: false examples: - | dma-controller@3000000 { - compatible = "sifive,fu540-c000-pdma"; + compatible = "sifive,fu540-c000-pdma", "sifive,pdma0"; reg = <0x3000000 0x8000>; + dma-channels = <4>; interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>; #dma-cells = <1>; }; From patchwork Mon Mar 28 09:52:23 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zong Li X-Patchwork-Id: 12793380 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 64B05C433FE for ; Mon, 28 Mar 2022 09:52:54 +0000 (UTC) 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: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=kRBOVkkmdlpPXnGSYfhpdxDIQEpZGvKlbDCpfpIh90Y=; b=RqGV3eLldy9ueA MhG3m4/S/7LDTT9SobN4aJ4ujrOJv2y5RpFiLLlrKYe04kJ7LCJiUl4ddog5EDV5741WQQuMeH2d+ 9TWmAzFOyc1bpS3izWgXg6D3VLlyV4GBPyxaFHLbh8YZvPsmqDWd1rf5qfVC9Uq/a1HrVSQQ0qaxc wZ1OOQ+6jAhmKNLvxxXrpi5BPnqkRBByepuaaNwxOasnlsAe6uUbjMQcNeWUuaJBZMsTZhVgJpcKx wIoAjzqtPJs1xYZpOmIeJb+QSsP3hsubTtNxF3ZJY5kykFZBPqeggb8D6nGS8rwlj+w1fSnk5nPKo ZnKjt5JsNKPrQWHkauPw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3H-0085fu-9W; Mon, 28 Mar 2022 09:52:43 +0000 Received: from mail-pj1-x1030.google.com ([2607:f8b0:4864:20::1030]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3E-0085f7-SR for linux-riscv@lists.infradead.org; Mon, 28 Mar 2022 09:52:42 +0000 Received: by mail-pj1-x1030.google.com with SMTP id c15-20020a17090a8d0f00b001c9c81d9648so224420pjo.2 for ; Mon, 28 Mar 2022 02:52:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=bwZ4ntGN7f8A8nsIcId+rUmkc/uVaZ9W2h2a+0CTy+I=; b=IO1wRJ5JootJiOYi8EyMw7W414vNT7NAHx9rKQTYR0fx2t1ukxQU6t8S0ZcMXI+Qq+ /q3SDCiAwcSY0QOAO+YRlqTqqWbMrXikfSBCt/qUcdY0KrKYixn0g46dYlA9pBnldg79 zustXyExPGLSga3BfHWFywEdwpPF+quB+lj0f0xNKDvm9Dq9eiT2F9oX4F2t1ry1jcAc RQkJjH6g/2VoKdJ5bC9jmZ2mwUf5bQdok9n/dgc5ZGezYVWQ7fnzc36XoNXlM1eTwqWT RXPyJ15qRLLoCqmksuBVSr5yOV/nwOiRjvNQMl6YN4w2FP+FfZRXTDhETJTseOaVIzSW oBBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=bwZ4ntGN7f8A8nsIcId+rUmkc/uVaZ9W2h2a+0CTy+I=; b=yWwTfTB2g5tfZe698XpilD7R607dwfTeqHbfrB35X5oPripgp4STvC0v7yYUwM3lHz CKM/mJ332mCfxa5gNED8BI00LtusU4xbhbKMOS0gw/TDjiSoUiL1cEPJCUA/ucCRBtO/ mHCqgd1IZVqA0DiYu226t9EPayQVSrwyQPAyL0vEIf2zXHQDhyuAeakOI05LKONdQ9uM RVeOb/jpykuclOb/+/YY2yDVFnqzYE9LB3g2z3Ru4YH1HKVgdraKsEcG92ImsfK9iZRe 98XhDUAcWUmetDPYLA6WkDV92Jz2+NPDv2OguzFZEqsnQ4XTz2NPU6bB7KdMJnvoDc8i cJjg== X-Gm-Message-State: AOAM531wnbgy8lCwjfRZpiL0ZWGRJ/CpCHni7xwMfPR06aaDa/+pX4io 1oVbTRScvN0uHbDLnQslYlRrFA== X-Google-Smtp-Source: ABdhPJyPFyUzbmqGInFSDy/EYxHjhBm+UfFDGTJClCd8Ky24rcAtEAcDFYKO1z1/CDOTCnKHWHtL+Q== X-Received: by 2002:a17:902:6bc3:b0:156:e4f:b014 with SMTP id m3-20020a1709026bc300b001560e4fb014mr4737654plt.17.1648461160156; Mon, 28 Mar 2022 02:52:40 -0700 (PDT) Received: from hsinchu16.internal.sifive.com (59-124-168-89.hinet-ip.hinet.net. [59.124.168.89]) by smtp.gmail.com with ESMTPSA id g4-20020a633744000000b00381efba48b0sm12255117pgn.44.2022.03.28.02.52.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Mar 2022 02:52:39 -0700 (PDT) From: Zong Li To: robh+dt@kernel.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, krzysztof.kozlowski@canonical.com, conor.dooley@microchip.com, geert@linux-m68k.org, bin.meng@windriver.com, green.wan@sifive.com, vkoul@kernel.org, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Cc: Zong Li , Palmer Dabbelt Subject: [PATCH v8 2/4] riscv: dts: Add dma-channels property and modify compatible Date: Mon, 28 Mar 2022 17:52:23 +0800 Message-Id: X-Mailer: git-send-email 2.35.1 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220328_025240_938339_0244D863 X-CRM114-Status: UNSURE ( 9.00 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org Add dma-channels property, then we can determine how many channels there by device tree, in addition, we add the pdma versioning scheme for compatible. Signed-off-by: Zong Li Reviewed-by: Palmer Dabbelt Acked-by: Palmer Dabbelt Acked-by: Conor Dooley Reviewed-by: Bin Meng --- arch/riscv/boot/dts/sifive/fu540-c000.dtsi | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/riscv/boot/dts/sifive/fu540-c000.dtsi b/arch/riscv/boot/dts/sifive/fu540-c000.dtsi index 3eef52b1a59b..6a3011180846 100644 --- a/arch/riscv/boot/dts/sifive/fu540-c000.dtsi +++ b/arch/riscv/boot/dts/sifive/fu540-c000.dtsi @@ -168,11 +168,12 @@ uart0: serial@10010000 { status = "disabled"; }; dma: dma@3000000 { - compatible = "sifive,fu540-c000-pdma"; + compatible = "sifive,fu540-c000-pdma", "sifive,pdma0"; reg = <0x0 0x3000000 0x0 0x8000>; interrupt-parent = <&plic0>; interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>; + dma-channels = <4>; #dma-cells = <1>; }; uart1: serial@10011000 { From patchwork Mon Mar 28 09:52:24 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zong Li X-Patchwork-Id: 12793381 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 48E21C43219 for ; Mon, 28 Mar 2022 09:52:55 +0000 (UTC) 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: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=KcPbGk5cbT7f9mcmis0hq3w1oOv59dGuJlIzcnrupEU=; b=wa6sJnv0+x2imG 4QmFMPSXldGL8PijpIxq358FE0LP3sjclnjrTeBUQCXBOwoC0PKjySNTe9JoNXIsJDKjxh1OoO7Ig hxcJZj1sGW7fpU+OczpVxOnYs70ZjP8QWGa/za/P4eVcawTMwxfRFqNIxcG7cVMHsWLLpYkb4r9tf W4I1unf7hkljg6+bml1QZywFGJgmQKbmGDkbNR7IxV77OyGXHOiFLeC2n/M9w2sS/9bK6eFmsKIn5 iWqJJXVGYZgDAstw2LthG6UPp+zcmKYZAObW6rWmynRYJr049wfmTSt6rfNHTVm7kIjlfk9l6DGxN PgZ7RXAcSqxkE1CoYuzg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3L-0085hj-9e; Mon, 28 Mar 2022 09:52:47 +0000 Received: from mail-pl1-x632.google.com ([2607:f8b0:4864:20::632]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3I-0085gO-4O for linux-riscv@lists.infradead.org; Mon, 28 Mar 2022 09:52:45 +0000 Received: by mail-pl1-x632.google.com with SMTP id f10so3995438plr.6 for ; Mon, 28 Mar 2022 02:52:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=wa/jhOBDbzXypLwdqQHP2csPLeVnygjpsw6wefsCgcI=; b=Q3fVODma/iyy4N0/11SdBthh/s+q8+fOIxK61L2ALfHDGiUqEW8sE9ALtc52F85OhS EkXBFEVuHIE2gB44Iz1tiQrWKcRhG0a6s9aVJoZ9xbfv6CH6SO1u/V6y7NOA/nFFP7kL MWw5PXy8/qGv4cSwVRq55OiYaJbUpraPvbXSyzOXE4kADO2Kf1JZfbhCU6qxO9jTsXgm 1d1XLpCVpErOnecqUNkOmh81lGmRWpaT5KIpA6GNl3UK1gjtK/QJAwR2ccvyRpMAEkVx wVs6gKqRgH98VoJLDPbk3D93Dyu6tsiqmt3fVcs9X1kuynctSonwhdo7RXFhfzWcAu5x k75Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=wa/jhOBDbzXypLwdqQHP2csPLeVnygjpsw6wefsCgcI=; b=NaDJUIUiVQpXZpScf/sMTHsd3ms9h2MN/C1uXLI6hMAHoBg/Wz1HtJXIIj7/MXG4iL IoRLwRHKAacbEhHNIWMnGv0B16+uPQ8JoO4rNUZ5eLGJIoqvGDIVfgD45GbIwenF/Q3m NZ/Spk22/UqLRL6aqit8MxKfkgwOUsPnCjrzrtjK4vfXSU0WJ2HnsfntOLxSyrbnWgFW dl3jIgQpx2k4nG9W50Dap91jQyQh0ELcM+1227YGqV7QhBQmPF2f0MdArj/eqButviHj xNtTCUwP1n8jv96pMIrKfyHJLIVUHVgVIXx9qL1bBA4WHiBAB9f4d38QiIkJWy8PqSb1 FQIA== X-Gm-Message-State: AOAM532f2JV25q+SjWf5Rjw4ObgsQpeJTz9fhgU+Rp5c4eo8MaOtTtg7 9KFmNWImjz7SHFr1BkCZzJeNHQ== X-Google-Smtp-Source: ABdhPJxHONZ3f2Yc2WSNu+jkr5b+vJB/GJkHJsbhf2730GFrUfxaNbwYpNK9G38hBoG4pMTeWyCn0w== X-Received: by 2002:a17:90a:470a:b0:1c9:a9b4:f88c with SMTP id h10-20020a17090a470a00b001c9a9b4f88cmr5064699pjg.185.1648461163359; Mon, 28 Mar 2022 02:52:43 -0700 (PDT) Received: from hsinchu16.internal.sifive.com (59-124-168-89.hinet-ip.hinet.net. [59.124.168.89]) by smtp.gmail.com with ESMTPSA id g4-20020a633744000000b00381efba48b0sm12255117pgn.44.2022.03.28.02.52.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Mar 2022 02:52:42 -0700 (PDT) From: Zong Li To: robh+dt@kernel.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, krzysztof.kozlowski@canonical.com, conor.dooley@microchip.com, geert@linux-m68k.org, bin.meng@windriver.com, green.wan@sifive.com, vkoul@kernel.org, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Cc: Zong Li Subject: [PATCH v8 3/4] riscv: dts: rename the node name of dma Date: Mon, 28 Mar 2022 17:52:24 +0800 Message-Id: X-Mailer: git-send-email 2.35.1 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220328_025244_190998_0F2F358D X-CRM114-Status: UNSURE ( 9.35 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org Rename the node name by the generic DMA naming Signed-off-by: Zong Li CC: Vinod Koul Reviewed-by: Bin Meng --- arch/riscv/boot/dts/sifive/fu540-c000.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/riscv/boot/dts/sifive/fu540-c000.dtsi b/arch/riscv/boot/dts/sifive/fu540-c000.dtsi index 6a3011180846..6eebe34c2851 100644 --- a/arch/riscv/boot/dts/sifive/fu540-c000.dtsi +++ b/arch/riscv/boot/dts/sifive/fu540-c000.dtsi @@ -167,7 +167,7 @@ uart0: serial@10010000 { clocks = <&prci PRCI_CLK_TLCLK>; status = "disabled"; }; - dma: dma@3000000 { + dma: dma-controller@3000000 { compatible = "sifive,fu540-c000-pdma", "sifive,pdma0"; reg = <0x0 0x3000000 0x0 0x8000>; interrupt-parent = <&plic0>; From patchwork Mon Mar 28 09:52:25 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zong Li X-Patchwork-Id: 12793382 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id AA0B0C433F5 for ; Mon, 28 Mar 2022 09:52:57 +0000 (UTC) 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: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=5rUJ2/hrDMkr01W77ND/ERl5/ATNXCS9d/JJjKxhKQA=; b=LvX/SrGCG6ZF2K YQREeSMcS8FXDnMl0fFC4vYjQDEM9pv4dObXlgRRLeifblL+4Hj7TpiAXT3nYcmXVUNex4vCf2dHa Urq9IPYVVflx+Zz1mgY3eaLamvQpXAdtfRjAy26WbaPoCrH8hkhxBtO6t//0PR/mqBRGukuTDwsul /zT0IdMXYJWR0lA6v9iku3KohNNrtrhforuRi06uUorbz0Du4enxlTRyaYzuFXXZIA/4prILcvEQO wmT/KkPwq2NnJXTkBMbugLPcYhl3aEuciixLFizYDcuz1cqA2oW2uYp/Wo4NNvuFPFN+hfpFEN7bV hy1Uah/yrFNKgmITK1wg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3O-0085jk-B5; Mon, 28 Mar 2022 09:52:50 +0000 Received: from mail-pj1-x102e.google.com ([2607:f8b0:4864:20::102e]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nYm3L-0085hh-Ej for linux-riscv@lists.infradead.org; Mon, 28 Mar 2022 09:52:48 +0000 Received: by mail-pj1-x102e.google.com with SMTP id a16-20020a17090a6d9000b001c7d6c1bb13so9922053pjk.4 for ; Mon, 28 Mar 2022 02:52:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=oFYJu8bdS9lTnagtGk2u5UISyqGssJEWeZR75J4CCQ4=; b=GntnHgow6kb2bhuinGrTFT6S/X9qym/s0sFSEUkJXDmNQl82e2NCI1Dma+l72P+0wm 9XMVcbHiRuxmvVtSPBZ7tQKj3M9CwbQN8u0YrhUHuwLJA0xwxOAP/iwP5HG2ieL5yBOB riyl5rYiqhApthbGtlZAOlL61VBJIcvqO1QaO37Z7lv9H4vxQ+xubqdQx26xXUVGFD8d gxMFYcwX+olVPgEM1Ntshiy1FnwUIwyiKDhK2pqaCM1mSHd6b1m0g9+oLCrcBHPeLggT +UMQ6lX6a6VxpFVHvdyINtwXFxyfB2gkIAq5wYTXNjWGzZ4XNOPo3g7YIa1sPy5P0hSU vILg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=oFYJu8bdS9lTnagtGk2u5UISyqGssJEWeZR75J4CCQ4=; b=T/+DZd3zLjPzO5VtYbvWIelkZc5B/RagEIFCxus1hthOF/c0P+fRHFUW3C6lEfmAAO R3mE8BaBqrmeZjGHyw0FbLglaWSsegmRy6JWYcaxND8UwHmXIqrPx/MlrKDT/o5ZokmN CbJq3wb80ftLwhvYzkte36AHKd8gNOkIOJnjkCb87vJZtDA92GhcKgpEr2xr6+++wtq4 hCLhC9m85gzybDvIedbDnlQpZspkrdtiZc290LJgsygI0Gd4ilL09h1e2UVMWSOh4zEg DgX0Z5nBkmTQLnX/CnwY1S2HvhLRDSLS2EkUaOnQLhWAZnxiM1ygXfmT5ZtZJq1Jxlrc lHCQ== X-Gm-Message-State: AOAM5317oF+jLo7lS0mW5QeuFapBwa7Au2QRmkOYA5kbCWtcpKGi6/fv knUKTqRhC+oH/FMVDbTdH5Ufhw== X-Google-Smtp-Source: ABdhPJwLen54FYCTR5UKlde92eYTDiJhw3WeUWHMHtaUWkB4DnSeea8SCaamC7zkpBJAESiySUP9EA== X-Received: by 2002:a17:90b:1c01:b0:1c6:dc49:d146 with SMTP id oc1-20020a17090b1c0100b001c6dc49d146mr39288419pjb.29.1648461166701; Mon, 28 Mar 2022 02:52:46 -0700 (PDT) Received: from hsinchu16.internal.sifive.com (59-124-168-89.hinet-ip.hinet.net. [59.124.168.89]) by smtp.gmail.com with ESMTPSA id g4-20020a633744000000b00381efba48b0sm12255117pgn.44.2022.03.28.02.52.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Mar 2022 02:52:46 -0700 (PDT) From: Zong Li To: robh+dt@kernel.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, krzysztof.kozlowski@canonical.com, conor.dooley@microchip.com, geert@linux-m68k.org, bin.meng@windriver.com, green.wan@sifive.com, vkoul@kernel.org, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Cc: Zong Li , Palmer Dabbelt Subject: [PATCH v8 4/4] dmaengine: sf-pdma: Get number of channel by device tree Date: Mon, 28 Mar 2022 17:52:25 +0800 Message-Id: X-Mailer: git-send-email 2.35.1 In-Reply-To: References: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220328_025247_538544_32760A76 X-CRM114-Status: GOOD ( 18.91 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org It currently assumes that there are always four channels, it would cause the error if there is actually less than four channels. Change that by getting number of channel from device tree. For backwards-compatibility, it uses the default value (i.e. 4) when there is no 'dma-channels' information in dts. Signed-off-by: Zong Li Acked-by: Palmer Dabbelt Reviewed-by: Bin Meng --- drivers/dma/sf-pdma/sf-pdma.c | 24 ++++++++++++++++-------- drivers/dma/sf-pdma/sf-pdma.h | 8 ++------ 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/drivers/dma/sf-pdma/sf-pdma.c b/drivers/dma/sf-pdma/sf-pdma.c index f12606aeff87..db5a4ef76077 100644 --- a/drivers/dma/sf-pdma/sf-pdma.c +++ b/drivers/dma/sf-pdma/sf-pdma.c @@ -482,23 +482,30 @@ static void sf_pdma_setup_chans(struct sf_pdma *pdma) static int sf_pdma_probe(struct platform_device *pdev) { struct sf_pdma *pdma; - struct sf_pdma_chan *chan; struct resource *res; - int len, chans; - int ret; + int ret, n_chans; const enum dma_slave_buswidth widths = DMA_SLAVE_BUSWIDTH_1_BYTE | DMA_SLAVE_BUSWIDTH_2_BYTES | DMA_SLAVE_BUSWIDTH_4_BYTES | DMA_SLAVE_BUSWIDTH_8_BYTES | DMA_SLAVE_BUSWIDTH_16_BYTES | DMA_SLAVE_BUSWIDTH_32_BYTES | DMA_SLAVE_BUSWIDTH_64_BYTES; - chans = PDMA_NR_CH; - len = sizeof(*pdma) + sizeof(*chan) * chans; - pdma = devm_kzalloc(&pdev->dev, len, GFP_KERNEL); + ret = of_property_read_u32(pdev->dev.of_node, "dma-channels", &n_chans); + if (ret) { + /* backwards-compatibility for no dma-channels property */ + dev_dbg(&pdev->dev, "set number of channels to default value: 4\n"); + n_chans = PDMA_MAX_NR_CH; + } else if (n_chans > PDMA_MAX_NR_CH) { + dev_err(&pdev->dev, "the number of channels exceeds the maximum\n"); + return -EINVAL; + } + + pdma = devm_kzalloc(&pdev->dev, struct_size(pdma, chans, n_chans), + GFP_KERNEL); if (!pdma) return -ENOMEM; - pdma->n_chans = chans; + pdma->n_chans = n_chans; res = platform_get_resource(pdev, IORESOURCE_MEM, 0); pdma->membase = devm_ioremap_resource(&pdev->dev, res); @@ -556,7 +563,7 @@ static int sf_pdma_remove(struct platform_device *pdev) struct sf_pdma_chan *ch; int i; - for (i = 0; i < PDMA_NR_CH; i++) { + for (i = 0; i < pdma->n_chans; i++) { ch = &pdma->chans[i]; devm_free_irq(&pdev->dev, ch->txirq, ch); @@ -574,6 +581,7 @@ static int sf_pdma_remove(struct platform_device *pdev) static const struct of_device_id sf_pdma_dt_ids[] = { { .compatible = "sifive,fu540-c000-pdma" }, + { .compatible = "sifive,pdma0" }, {}, }; MODULE_DEVICE_TABLE(of, sf_pdma_dt_ids); diff --git a/drivers/dma/sf-pdma/sf-pdma.h b/drivers/dma/sf-pdma/sf-pdma.h index 0c20167b097d..dcb3687bd5da 100644 --- a/drivers/dma/sf-pdma/sf-pdma.h +++ b/drivers/dma/sf-pdma/sf-pdma.h @@ -22,11 +22,7 @@ #include "../dmaengine.h" #include "../virt-dma.h" -#define PDMA_NR_CH 4 - -#if (PDMA_NR_CH != 4) -#error "Please define PDMA_NR_CH to 4" -#endif +#define PDMA_MAX_NR_CH 4 #define PDMA_BASE_ADDR 0x3000000 #define PDMA_CHAN_OFFSET 0x1000 @@ -118,7 +114,7 @@ struct sf_pdma { void __iomem *membase; void __iomem *mappedbase; u32 n_chans; - struct sf_pdma_chan chans[PDMA_NR_CH]; + struct sf_pdma_chan chans[]; }; #endif /* _SF_PDMA_H */