From: sashiko-bot@kernel.org
To: "Petko Manolov" <petko.manolov@konsulko.com>
Cc: conor+dt@kernel.org, devicetree@vger.kernel.org, robh@kernel.org
Subject: Re: [PATCH v4 3/3] arm: dts: altera: add Draeger M48 CPU Module
Date: Fri, 11 Sep 2026 15:18:26 +0000 [thread overview]
Message-ID: <20260911151826.ABB631F00893@smtp.kernel.org> (raw)
In-Reply-To: <20260911150755.2803736-4-petko.manolov@konsulko.com>
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [High] Unsafe register access due to unconditional probing of FPGA-based IPs without LWHPS2FPGA bridge enablement.
- [Medium] Hardware description mismatch between commit message and device tree.
- [Low] Use of deprecated 'snps,nr-gpios' property instead of standard 'ngpios'.
- [Low] The 'name' property is explicitly deprecated in device tree nodes.
--
commit 45faa524ae6c9f608be9c1559da6ec21aff7dbea
Author: Petko Manolov <petko.manolov@konsulko.com>
arm: dts: altera: add Draeger M48 CPU Module
This commit adds a new device tree for the Draeger M48 CPU module.
> Draeger M48 is a CPU module built around the NXP i.MX6q.
[Severity: Medium]
Is this description accurate? The device tree added in this patch clearly
describes an Altera Cyclone V SoC, which contradicts the commit message
stating it is built around the NXP i.MX6q.
> diff --git a/arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_draeger_m48.dts b/arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_draeger_m48.dts
> new file mode 100644
> index 0000000000000..838708acb31bd
> --- /dev/null
> +++ b/arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_draeger_m48.dts
> @@ -0,0 +1,123 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * (C) Copyright 2020 Draeger and Licensors, info@draeger.com
> + */
> +#include "socfpga_cyclone5.dtsi"
> +
> +/ {
> + model = "Draeger M48 Cyclone V SoC";
> + compatible = "draeger,M48", "altr,socfpga-cyclone5", "altr,socfpga";
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +
> + memory@0 {
> + name = "memory";
[Severity: Low]
Is the "name" property needed here? According to the Device Tree
Specification, nodes must be identified by their unit-name and properties
like device_type or compatible. The name property is deprecated and
generates compiler warnings.
> + device_type = "memory";
> + reg = <0x0 0x40000000>;
> + };
[ ... ]
> + soc {
> + gpio3: gpio@ff202000 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + compatible = "snps,dw-apb-gpio";
> + reg = <0xff202000 0x20>;
[Severity: High]
Can this unconditional probing cause a bus error during early boot?
The dw-apb-gpio driver will probe this node because it defaults to status =
"okay". This hardcoded address (0xff202000) falls in the Cyclone V
Lightweight HPS-to-FPGA (LWHPS2FPGA) memory window. If the FPGA is
unprogrammed, or the bridge is disabled in the included socfpga.dtsi,
accessing this region triggers a precise external data abort, crashing the
kernel.
Should these IPs be explicitly nested under an fpga-region, or should the
device tree guarantee bridge enablement?
> +
> + portd: gpio-controller@0 {
> + compatible = "snps,dw-apb-gpio-port";
> + gpio-controller;
> + #gpio-cells = <2>;
> + snps,nr-gpios = <2>;
[Severity: Low]
Does this violate the device tree bindings for snps,dw-apb-gpio? The
snps,nr-gpios property is deprecated in favor of the standard ngpios
property.
> + reg = <0>;
> + };
> + };
> +
> + gpio4: gpio@ff202020 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + compatible = "snps,dw-apb-gpio";
> + reg = <0xff202020 0x20>;
[Severity: High]
Similarly, can this access cause a bus error if the LWHPS2FPGA bridge is
inactive or placed in reset?
> +
> + porte: gpio-controller@0 {
> + compatible = "snps,dw-apb-gpio-port";
> + gpio-controller;
> + #gpio-cells = <2>;
> + snps,nr-gpios = <2>;
[Severity: Low]
Could this use the standard ngpios property instead of the deprecated
snps,nr-gpios?
> + reg = <0>;
> + };
> + };
> + };
> +};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260911150755.2803736-1-petko.manolov@konsulko.com?part=3
prev parent reply other threads:[~2026-09-11 15:18 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-11 15:07 [PATCH v4 0/3] arm: dts: altera: add Draeger M48 CPU Module Petko Manolov
2026-09-11 15:07 ` [PATCH v4 1/3] dt-bindings: vendor-prefixes: add Draeger AG Petko Manolov
2026-09-11 15:07 ` [PATCH v4 2/3] dt-bindings: arm: altera: add Draeger M48 Module Petko Manolov
2026-09-11 15:14 ` sashiko-bot
2026-09-13 9:18 ` Krzysztof Kozlowski
2026-09-13 13:32 ` Petko Manolov
2026-09-13 14:20 ` Krzysztof Kozlowski
2026-09-11 15:07 ` [PATCH v4 3/3] arm: dts: altera: add Draeger M48 CPU Module Petko Manolov
2026-09-11 15:18 ` sashiko-bot [this message]
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=20260911151826.ABB631F00893@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=petko.manolov@konsulko.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.