[v3,5/7] arm64: dts: allwinner: sun50i-h6: Add missing SRAM region for video engine
| Message ID | 20260712030011.3778169-6-wens@kernel.org (mailing list archive) |
|---|---|
| State | New |
| Headers |
Return-Path: <linux-sunxi+bounces-24365-sunxi=pue.re@lists.linux.dev> X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 082971C00A4 for <noreply@patchwork.local>; Sun, 12 Jul 2026 05:02:10 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=kernel.org; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24365-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24365-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id 230B53036626 for <noreply@patchwork.local>; Sun, 12 Jul 2026 03:00:49 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0D22D36F90D; Sun, 12 Jul 2026 03:00:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Vy8zoUDN" X-Original-To: linux-sunxi@lists.linux.dev Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 1688036B07C; Sun, 12 Jul 2026 03:00:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783825226; cv=none; b=omc91x4EeMp5uKNYaYIyEZrsgpqeEg2OjLFg5A2rpuplb5C2N6WXo2edU6pCEHMWfrJ1/G3UHIS/UioRb7WXlR43PKMOaTxgiFDMU32p+yt6PWXxtFL9j35C+YGWT4zHyfsWITMIAS4iBOa8MyJG4OIstQVNJ3Y+zv3DLy3FsWA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783825226; c=relaxed/simple; bh=h8HnPa9jPNT9KN5lGEI/AtSgYlDiW6l80zMgBH26b/I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Xe3chNhtHtfie+k5jL6MzB8IpFt7bGxXBE1d0mz14sUnl8SysiekX/PiiOMhzFgd3blAT56bgNTXxVolNI6ZRimBZyRlEiHvO93pMNrkZb2ugN0hHdBQXvRWHDFi79w9vsvps8xk/wgeu03n0l1gu4GY+dj/s/PZgXD/LA+bEXI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Vy8zoUDN; arc=none smtp.client-ip=100.103.45.18 Received: by smtp.kernel.org (Postfix) with ESMTPSA id EE1B81F00AC4; Sun, 12 Jul 2026 03:00:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783825217; bh=lHn+VlrPP8+DG9eMf2EHuMFbxRRlTlKli3GayR7WGoQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=Vy8zoUDNas+vvG0c2LmFKZew4UfK+SSk56tXC0Fg46ambpKU2CcLCEQEapdMGuJso RkVe97ZOQL5eMAlMX8gyaerTuDB6oCuHmW6eld8HD7KMgK582JOcs9zdMF+FKSAEGm UN9y79Qoo/obqfiZ+xwvgueP3WNMjil1T27f8ubXOBq3RGVyiWBye77Ibw37JpIolE PpvlwyjgWpcOIML36+DlC15b2xqDcsYrRro+ioOY3jcBWkyU1dix2U7TepybWGKyYF qv8LuD+BdIIfT3lm+r0rNgZmuCsjGZS3CfxKZmmwJr4JDnN65E4Nx/4P70/eXdQCss A/EX6AmbO9WFA== Received: by wens.tw (Postfix, from userid 1000) id 1245460176; Sun, 12 Jul 2026 11:00:13 +0800 (CST) From: Chen-Yu Tsai <wens@kernel.org> To: Maxime Ripard <mripard@kernel.org>, Paul Kocialkowski <paulk@sys-base.io>, Mauro Carvalho Chehab <mchehab@kernel.org>, Chen-Yu Tsai <wens@kernel.org>, Jernej Skrabec <jernej@kernel.org>, Samuel Holland <samuel@sholland.org>, Rob Herring <robh@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>, Conor Dooley <conor+dt@kernel.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, devicetree@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Jernej Skrabec <jernej.skrabec@gmail.com> Subject: [PATCH v3 5/7] arm64: dts: allwinner: sun50i-h6: Add missing SRAM region for video engine Date: Sun, 12 Jul 2026 11:00:08 +0800 Message-ID: <20260712030011.3778169-6-wens@kernel.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260712030011.3778169-1-wens@kernel.org> References: <20260712030011.3778169-1-wens@kernel.org> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: <linux-sunxi.lists.linux.dev> List-Subscribe: <mailto:linux-sunxi+subscribe@lists.linux.dev> List-Unsubscribe: <mailto:linux-sunxi+unsubscribe@lists.linux.dev> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [-0.66 / 15.00]; BAYES_HAM(-5.50)[100.00%]; RBL_SENDERSCORE(2.00)[172.234.253.10:from]; SUSPICIOUS_RECIPS(1.50)[]; MID_CONTAINS_FROM(1.00)[]; R_MISSING_CHARSET(0.50)[]; MAILLIST(-0.15)[generic]; BAD_REP_POLICIES(0.10)[]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; TAGGED_RCPT(0.00)[dt]; FREEMAIL_CC(0.00)[linuxfoundation.org,vger.kernel.org,lists.linux.dev,lists.infradead.org,gmail.com]; FUZZY_BLOCKED(0.00)[rspamd.com]; PRECEDENCE_BULK(0.00)[]; RCPT_COUNT_TWELVE(0.00)[17]; DBL_BLOCKED_OPENRESOLVER(0.00)[sea.lore.kernel.org:rdns,sea.lore.kernel.org:helo]; FROM_HAS_DN(0.00)[]; RCVD_COUNT_FIVE(0.00)[6]; R_DKIM_ALLOW(0.00)[kernel.org:s=k20260515]; DMARC_POLICY_ALLOW(0.00)[kernel.org,quarantine]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; DKIM_TRACE(0.00)[kernel.org:+]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(0.00)[+ip4:172.234.253.10:c]; FORGED_SENDER_MAILLIST(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:63949, ipnet:172.234.224.0/19, country:SG]; FROM_NEQ_ENVFROM(0.00)[wens@kernel.org,linux-sunxi@lists.linux.dev]; RCVD_TLS_LAST(0.00)[]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; TAGGED_FROM(0.00)[bounces-24365-noreply=patchwork.local]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 082971C00A4 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= |
| Series |
arm64: allwinner: h616: Support Video Engine
|
|
Commit Message
Chen-Yu Tsai
July 12, 2026, 3 a.m. UTC
The SRAM C region contains a partial alias to the VE SRAM already
referenced by the video engine. To avoid access through this alias
window, the region should also be claimed by the video engine.
Add a reference to the SRAM C region to the video engine node.
Fixes: b542570e5605 ("arm64: dts: allwinner: h6: Add Video Engine node")
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@kernel.org>
---
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider: - [Medium] The newly added `<&de2_sram 1>` phandle is silently ignored by the OS because the SRAM driver hardcodes parsing to only the first array element. - [Medium] Assigning `de2_sram` to the Video Engine creates an unresolvable resource conflict with the Display Engine, guaranteeing a probe failure if the SRAM driver were to parse it. -- --- Patch [5]: [PATCH v3 5/7] arm64: dts: allwinner: sun50i-h6: Add missing SRAM region for video engine --- commit dbe16923a66cbda638350c813c16a8b1c65e3b6b Author: Chen-Yu Tsai <wens@kernel.org> arm64: dts: allwinner: sun50i-h6: Add missing SRAM region for video engine The SRAM C region contains a partial alias to the VE SRAM already referenced by the video engine. To avoid access through this alias window, the region should also be claimed by the video engine. Add a reference to the SRAM C region to the video engine node. > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi > index 72ce1a75647bf..88c6e3e105c07 100644 > --- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi [ ... ] > @@ -205,7 +205,7 @@ video-codec@1c0e000 { > clock-names = "ahb", "mod", "ram"; > resets = <&ccu RST_BUS_VE>; > interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; > - allwinner,sram = <&ve_sram 1>; > + allwinner,sram = <&ve_sram 1>, <&de2_sram 1>; [Severity: Medium] Will this second phandle actually be parsed by the OS? Looking at the driver code in drivers/soc/sunxi/sunxi_sram.c, it seems the parser hardcodes the index to 0: drivers/soc/sunxi/sunxi_sram.c:sunxi_sram_of_parse() { ... ret = of_parse_phandle_with_fixed_args(node, "allwinner,sram", 1, 0, &args); ... } Does the driver need to be updated to parse multiple SRAM elements so this alias window is actually closed? [Severity: Medium] If the driver is updated to parse this second element, will it cause a probe failure due to a resource conflict? The de2_sram region is already claimed by the Display Engine (bus@1000000). Looking at sunxi_sram_claim(), the API enforces strict exclusive ownership: drivers/soc/sunxi/sunxi_sram.c:sunxi_sram_claim() { ... if (sram_desc->claimed) { spin_unlock(&sram_lock); return -EBUSY; } ... } If both the Display Engine and Video Engine try to claim de2_sram, won't the second device to probe be rejected with -EBUSY? > iommus = <&iommu 3>; > }; >
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi index 72ce1a75647b..88c6e3e105c0 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi @@ -205,7 +205,7 @@ video-codec@1c0e000 { clock-names = "ahb", "mod", "ram"; resets = <&ccu RST_BUS_VE>; interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; - allwinner,sram = <&ve_sram 1>; + allwinner,sram = <&ve_sram 1>, <&de2_sram 1>; iommus = <&iommu 3>; };