From: sashiko-bot@kernel.org
To: "Aiden Isik" <aidenisik@member.fsf.org>
Cc: robh@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH 2/2] arm64: dts: exynos: Add initial support for Samsung Galaxy Watch FE
Date: Mon, 17 Aug 2026 10:35:00 +0000 [thread overview]
Message-ID: <20260817103500.B4B4E1F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260817-for-next-lucky7-v1-2-42ffb2b71ba2@member.fsf.org>
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [High] Unaligned `no-map` simple-framebuffer region causes memory attribute aliasing.
- [Medium] Invalid usage of `reserved-memory` for memory-mapped devices and regions outside system RAM.
- [Low] Missing unit address in the `misc-rmem` device tree node.
- [Low] Mathematical error in memory calculation in commit message and comments.
--
--- Patch [2]: [PATCH 2/2] arm64: dts: exynos: Add initial support for Samsung Galaxy Watch FE ---
commit 6f30a8a96fda7068a12749f38925083c1838f92d
Author: Aiden Isik <aidenisik@member.fsf.org>
arm64: dts: exynos: Add initial support for Samsung Galaxy Watch FE
This commit adds initial device tree support for the Samsung Galaxy Watch FE,
including bootloader framebuffer and memory definitions.
> Only the lowest 490MiB and highest 512MiB of memory are used for now.
> The 488MiB between the addresses of 0x9ea00000 and 0xbe680000 is excluded
[Severity: Low]
This isn't a bug, but the math in the commit message seems slightly off.
0xbe680000 - 0x9ea00000 is 0x1fc80000, which is 508.5 MiB, not 488 MiB.
> diff --git a/arch/arm64/boot/dts/exynos/exynos5515-lucky7.dts b/arch/arm64/boot/dts/exynos/exynos5515-lucky7.dts
> index 0000000000000..f91ea7e44cf86
> --- /dev/null
> +++ b/arch/arm64/boot/dts/exynos/exynos5515-lucky7.dts
> @@ -0,0 +1,106 @@
[ ... ]
> + memory@80000000 {
> + /*
> + * Use the lowest 490MiB and highest 512MiB of memory.
> + * The 488MiB between the addresses of 0x9ea00000 and
[Severity: Low]
This isn't a bug, but similarly to the commit message, the calculated memory
size here is 508.5 MiB, not 488 MiB.
> + * 0xbe680000 is currently unused due to any memory accesses
> + * in several ranges between those addresses causing the core
> + * performing the accesses to stall.
> + */
> + reg = <0x0 0x80000000 0x1ea00000>,
[ ... ]
> + reserved-memory {
> + ranges;
> + #address-cells = <2>;
> + #size-cells = <1>;
> +
> + framebuffer@9e0cf000 {
> + reg = <0x0 0x9e0cf000 (396 * 396 * 4)>;
> + no-map;
> + };
[Severity: High]
Does this unaligned size combined with no-map cause memory attribute aliasing
on arm64?
The region has an unaligned size of 0x99240 (627264 bytes). The no-map
property drops this exact byte range from the kernel's linear map, leaving the
remainder of the page (0x9e168240-0x9e169000) to be mapped as Normal Cacheable
memory.
When the simple-framebuffer driver calls ioremap_wc(), it maps the entire page
at 0x9e168000 as Write-Combine (Normal Non-Cacheable), creating an attribute
alias.
> +
> + misc-rmem {
> + /*
> + * Some of these regions belong to memory-mapped
> + * devices, and will be assigned to drivers as support
> + * is added.
> + *
> + * Other regions belong to the TrustZone firmware
> + * and should never be touched.
> + */
> + reg = <0x0 0x87000000 0x200000>,
[Severity: Medium]
Is it valid to use reserved-memory for memory-mapped devices and regions
outside system RAM?
The Devicetree specification dictates that reserved-memory regions MUST be
contained within a defined /memory node. The misc-rmem node includes
addresses (e.g., 0xa0000000, 0xb0000000) that fall within the
0x9ea00000-0xc0000000 range explicitly omitted from the /memory node.
Additionally, since these are MMIO regions, shouldn't they be described as
device nodes on a bus rather than reserved RAM?
[Severity: Low]
This isn't a bug, but this node is missing the unit address @87000000
to match the first reg entry, which will generate a unit_address_vs_reg dtc
compiler warning.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260817-for-next-lucky7-v1-0-42ffb2b71ba2@member.fsf.org?part=2
next prev parent reply other threads:[~2026-08-17 10:35 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-17 10:27 [PATCH 0/2] Hi there, Aiden Isik via B4 Relay
2026-08-17 10:27 ` [PATCH 1/2] arm64: dts: exynos: Add initial support for Exynos5515 SoC Aiden Isik via B4 Relay
2026-08-17 10:38 ` sashiko-bot
2026-08-17 10:57 ` Aiden Isik
2026-08-17 10:27 ` [PATCH 2/2] arm64: dts: exynos: Add initial support for Samsung Galaxy Watch FE Aiden Isik via B4 Relay
2026-08-17 10:35 ` sashiko-bot [this message]
2026-08-17 11:04 ` Aiden Isik
2026-08-17 11:07 ` [PATCH 0/2] Hi there, Krzysztof Kozlowski
2026-08-17 13:46 ` Aiden Isik
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=20260817103500.B4B4E1F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=aidenisik@member.fsf.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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;
as well as URLs for NNTP newsgroup(s).