public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: Chen-Yu Tsai <wens@kernel.org>
To: Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Chen-Yu Tsai <wens@kernel.org>,
	Jernej Skrabec <jernej@kernel.org>,
	Samuel Holland <samuel@sholland.org>
Cc: devicetree@vger.kernel.org, linux-sunxi@lists.linux.dev,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: [PATCH 6/7] soc: sunxi: sram: Add H616 SRAM regions
Date: Wed, 25 Mar 2026 00:43:54 +0800	[thread overview]
Message-ID: <20260324164357.1607247-7-wens@kernel.org> (raw)
In-Reply-To: <20260324164357.1607247-1-wens@kernel.org>

The Allwinner H616 has two switchable peripheral SRAM regions:

- The VE SRAM is a 2 MB dedicated SRAM for the Video Engine. CPU access
  to this region is enabled by default. CPU access can be disabled,
  after which reads will show the same stale value for all addresses,
  while writes are ignored.

  The mux value for this region is different from previous generations.

- The SRAM C region is an alias of the first 128 KB of VE SRAM, plus 64
  KB of DE SRAM. The latter is otherwise unaccessible from the CPU. When
  CPU access is disabled, the whole region reads as zero, while writes
  are ignored.

  The mux value for this region is the same as on the A64 and H6.

Add data for the VE SRAM. The register values were taken from the BSP
vendor kernel.

Signed-off-by: Chen-Yu Tsai <wens@kernel.org>
---
 drivers/soc/sunxi/sunxi_sram.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/soc/sunxi/sunxi_sram.c b/drivers/soc/sunxi/sunxi_sram.c
index 4d81897179e7..2ccaeacf8c70 100644
--- a/drivers/soc/sunxi/sunxi_sram.c
+++ b/drivers/soc/sunxi/sunxi_sram.c
@@ -83,6 +83,12 @@ static struct sunxi_sram_desc sun50i_a64_sram_c = {
 				  SUNXI_SRAM_MAP(0, 1, "de2")),
 };
 
+static struct sunxi_sram_desc sun50i_h616_ve_sram = {
+	.data	= SUNXI_SRAM_DATA("VE", 0x0, 0, 1,
+				  SUNXI_SRAM_MAP(1, 0, "cpu"),
+				  SUNXI_SRAM_MAP(0, 1, "ve")),
+};
+
 static const struct of_device_id sunxi_sram_dt_ids[] = {
 	{
 		.compatible	= "allwinner,sun4i-a10-sram-a3-a4",
@@ -100,6 +106,10 @@ static const struct of_device_id sunxi_sram_dt_ids[] = {
 		.compatible	= "allwinner,sun50i-a64-sram-c",
 		.data		= &sun50i_a64_sram_c.data,
 	},
+	{
+		.compatible	= "allwinner,sun50i-h616-ve-sram",
+		.data		= &sun50i_h616_ve_sram.data,
+	},
 	{}
 };
 
-- 
2.47.3



  parent reply	other threads:[~2026-03-24 16:44 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-24 16:43 [PATCH 0/7] soc: sunxi: sram: Add H616 SRAM support Chen-Yu Tsai
2026-03-24 16:43 ` [PATCH 1/7] dt-bindings: sram: Document Allwinner H616 VE SRAM Chen-Yu Tsai
2026-03-25  0:22   ` Jernej Škrabec
2026-03-24 16:43 ` [PATCH 2/7] dt-bindings: sram: sunxi-sram: Add H616 SRAM regions Chen-Yu Tsai
2026-03-25  0:23   ` Jernej Škrabec
2026-03-24 16:43 ` [PATCH 3/7] soc: sunxi: sram: Const-ify sunxi_sram_func data and references Chen-Yu Tsai
2026-03-25  0:24   ` Jernej Škrabec
2026-03-24 16:43 ` [PATCH 4/7] soc: sunxi: sram: Allow SRAM to be claimed multiple times Chen-Yu Tsai
2026-03-25  0:25   ` Jernej Škrabec
2026-03-24 16:43 ` [PATCH 5/7] soc: sunxi: sram: Support claiming multiple regions per device Chen-Yu Tsai
2026-03-25  0:28   ` Jernej Škrabec
2026-03-24 16:43 ` Chen-Yu Tsai [this message]
2026-03-25  0:29   ` [PATCH 6/7] soc: sunxi: sram: Add H616 SRAM regions Jernej Škrabec
2026-03-24 16:43 ` [PATCH 7/7] arm64: dts: allwinner: sun50i-h616: Add SRAM nodes Chen-Yu Tsai
2026-03-25  0:30   ` Jernej Škrabec

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260324164357.1607247-7-wens@kernel.org \
    --to=wens@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jernej@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sunxi@lists.linux.dev \
    --cc=robh@kernel.org \
    --cc=samuel@sholland.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox