From patchwork Sat Oct 19 20:39:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 13842907 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 EB780D3C92D for ; Sat, 19 Oct 2024 20:47:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=ASbzm1dKYI7MS9b7uAT3zGV8ddrL3dIka7wQzQqZ70o=; b=Bn1K4rDcytGx0mSqbfXBvg9mx4 feC50PuaVa2U4QtlluLKoEdMl8YE+yx6YO4w0lNHSlZ3SNWDJ4x6PQlEqx6/AFEMLAI4b2LWKWCRd FBT696wAQg384byhz+g2UM7WrfPRE1I+Mutf8djikL8X4S9Vt+9hXvzUAbVulshOJ+iPV5YWmaPiP stQp9g2X4tXG9uF1+J1Ju8RUHRB69wJcjkBtAywCj5+aFHXNi+BwoypJeNTjwgcczc5WH5E+eogpP 3ZzW8IaDLdamqIUhT9+wrBemOhXplhXVRF5p7i/8C4qNLSqrIaixTpgeLz3Mi4xmqC6p4RIfAXLua 6W3U9kYQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1t2GME-00000003uWx-1QOj; Sat, 19 Oct 2024 20:47:30 +0000 Received: from mail-lf1-x132.google.com ([2a00:1450:4864:20::132]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1t2GEi-00000003tbH-0XBK for linux-arm-kernel@lists.infradead.org; Sat, 19 Oct 2024 20:39:45 +0000 Received: by mail-lf1-x132.google.com with SMTP id 2adb3069b0e04-539e6c754bdso3208817e87.2 for ; Sat, 19 Oct 2024 13:39:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1729370382; x=1729975182; darn=lists.infradead.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ASbzm1dKYI7MS9b7uAT3zGV8ddrL3dIka7wQzQqZ70o=; b=CZ8R/4k6Ap9h/afnG6FpPBSKL8s1RMJ2diwXa2puphW3nkeZKajRPe2KVtaeKDpkGi oVcipEslDCePOSzu72KRahR2wEE/vgnaa/i6ThWwanOMAVBN4CHepm1tHA40K9P+fp8/ OyogdeTotdFcpDKXrgXjkns1fG7owuR9od02c1QQhDYvhGj1myAVThJ1EZLPqSfPfj/r Q9U/LTdp+SDRGYM5cLv1pbrii5mSiukiBchAgKZvyxLm+437JpXqJ073V2ufxbZamNYl 07+3LZdLoTIh6WYUVE5QdwkuOciRkYvg0ATZkuQKHP9+Wm2U45+BSCpuTiBK1xd7XVhB idng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729370382; x=1729975182; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ASbzm1dKYI7MS9b7uAT3zGV8ddrL3dIka7wQzQqZ70o=; b=IdOvALQSeKk6/aw8rKPxbBV+6UhEEHq0ASqC2eNMN3pZoLOhQXdYpJpaS5jPmpswqc dwIyC5NIMF9v1/DD4O0AMEko94cgO7DVQLpkBmXdYgE+LTXol4DnqLbfvq65IHzlVsIE Fe0SPx0ju93IWfDvb7I0w737oC/P5vGGTSbx36ZljLPWJ2mkngb3dcuJeOl03l+rgT34 alI19AcAMJi2Jl8fQNsr3KsTg94kHJCfHkk91iMmQa8IGXcMJcUkWUeeF0axLTN1It/k bs/42tST+i0GyzroPnTws+I0gHVXx4iRp5LO5jsa1CLWTrkOe7qRySyy0jhhzUEHmoQS lHFg== X-Forwarded-Encrypted: i=1; AJvYcCVyg+ozJiRCCKTzhuC+xWLoPl/5zO0rG1ZKqZB2ueUh4RQ0su0bBl/KwJ3EZGuqgaW3BAS5pxTCaeBgtf5JYSMD@lists.infradead.org X-Gm-Message-State: AOJu0Yx5OAh9Z4AZxcUaecamicf41OoHgwTtg94fMskZjFsGCM7oujSK dpTTo+WO5mkdQJV7tYA9lNiNAz17yDv7nKDG57taw6S1Q9FoIVdcF8QSHod+S00= X-Google-Smtp-Source: AGHT+IE8PmLW2uHN7CzUZBeuCZkeAP4PRUg5hZ2qcYw3GGxZ+s7W6KNBfnAdYuQHUxVmvDGm+dOkZQ== X-Received: by 2002:a05:6512:3e0b:b0:539:f51e:2457 with SMTP id 2adb3069b0e04-53a1550bbfamr3367061e87.52.1729370382336; Sat, 19 Oct 2024 13:39:42 -0700 (PDT) Received: from lino.lan ([85.235.12.238]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-53a224202d5sm37564e87.136.2024.10.19.13.39.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 19 Oct 2024 13:39:41 -0700 (PDT) From: Linus Walleij Date: Sat, 19 Oct 2024 22:39:35 +0200 Subject: [PATCH v3 6/9] ARM: dts: bcm6846: Add ARM PL081 DMA block MIME-Version: 1.0 Message-Id: <20241019-genexis-xg6846b-base-v3-6-8375a0e1f89f@linaro.org> References: <20241019-genexis-xg6846b-base-v3-0-8375a0e1f89f@linaro.org> In-Reply-To: <20241019-genexis-xg6846b-base-v3-0-8375a0e1f89f@linaro.org> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , William Zhang , Anand Gore , Kursad Oney , Florian Fainelli , =?utf-8?b?UmFmYcWCIE1p?= =?utf-8?b?xYJlY2tp?= , Benjamin Larsson , Broadcom internal kernel review list Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Linus Walleij X-Mailer: b4 0.14.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241019_133944_221445_6719B6C7 X-CRM114-Status: GOOD ( 15.11 ) 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The ARM PL081 DMA controller can be found in the BCM6846 memory map, and it turns out to work. The block may be used as DMA engine for some of the peripherals (maybe the EMMC controller found in the same group of peripherals?) but it can always be used as a memcpy engine, which is a generic "blitter". I tested it with the dmatest module, and it copies lots of data very fast and fires hundreds of thousands of interrupts so it works just fine. Add it to the BCM6846 DTSI file. Signed-off-by: Linus Walleij --- arch/arm/boot/dts/broadcom/bcm6846.dtsi | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm/boot/dts/broadcom/bcm6846.dtsi b/arch/arm/boot/dts/broadcom/bcm6846.dtsi index 378dbd1b41b3..e0e06af3fe89 100644 --- a/arch/arm/boot/dts/broadcom/bcm6846.dtsi +++ b/arch/arm/boot/dts/broadcom/bcm6846.dtsi @@ -240,5 +240,18 @@ mdio: mdio@2060 { #size-cells = <0>; status = "disabled"; }; + + pl081_dma: dma-controller@59000 { + compatible = "arm,pl081", "arm,primecell"; + // The magic B105F00D info is missing + arm,primecell-periphid = <0x00041081>; + reg = <0x59000 0x1000>; + interrupts = ; + memcpy-burst-size = <256>; + memcpy-bus-width = <32>; + clocks = <&periph_clk>; + clock-names = "apb_pclk"; + #dma-cells = <2>; + }; }; };