From: sashiko-bot@kernel.org
To: "Lefteris Koutrakis" <lefteris.koutrakis@gmail.com>,
devicetree@vger.kernel.org
Cc: robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH v3] powerpc/dts: Add Device Tree for WatchGuard Firebox T30
Date: Wed, 28 Oct 2026 14:47:10 +0000 [thread overview]
Message-ID: <sashiko-outbox-188010@kernel.org> (raw)
In-Reply-To: <20261028143421.145290-1-lefteris.koutrakis@gmail.com>
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [Medium] powerpc/dts: invalid compatible string in firebox-t30 tpm@29 node
- [Low] powerpc/dts: duplicate firebox-t30.dtb entry in fsl/Makefile
- [Low] powerpc/dts: malformed spi@7000 interrupts and redundant SoC properties
- [Low] powerpc/dts: firebox-t30: undocumented compatible and unsupported DT properties
--
commit 68d1b53d33f85dd0ec26113a393584818efd23a1
Author: Lefteris Koutrakis <lefteris.koutrakis@gmail.com>
powerpc/dts: Add Device Tree for WatchGuard Firebox T30
This commit adds a new Device Tree source file for the WatchGuard Firebox T30
board based on the Freescale P1020 SoC and hooks it into the Freescale PowerPC
DTS Makefile.
> diff --git a/arch/powerpc/boot/dts/fsl/Makefile b/arch/powerpc/boot/dts/fsl/Makefile
> index d2cc8e1f007ea..0a5c8b5967335 100644
> --- a/arch/powerpc/boot/dts/fsl/Makefile
> +++ b/arch/powerpc/boot/dts/fsl/Makefile
> @@ -3,6 +3,7 @@
> dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
>
> # MPC85xx platforms
> +dtb-$(CONFIG_MPC85xx_RDB) += firebox-t30.dtb
> dtb-$(CONFIG_BSC9131_RDB) += bsc9131rdb.dtb
> dtb-$(CONFIG_BSC9132_QDS) += bsc9132qds.dtb
> dtb-$(CONFIG_C293_PCIE) += c293pcie.dtb
> @@ -44,3 +45,4 @@ dtb-$(CONFIG_GEF_SBC310) += gef_sbc310.dtb
> dtb-$(CONFIG_GEF_SBC610) += gef_sbc610.dtb
> dtb-$(CONFIG_GEF_PPC9A) += gef_ppc9a.dtb
> dtb-$(CONFIG_MVME7100) += mvme7100.dtb
> +dtb-$(CONFIG_MPC85xx_RDB) += firebox-t30.dtb
[Severity: Low]
Is this second addition of firebox-t30.dtb to dtb-$(CONFIG_MPC85xx_RDB) at
the bottom of arch/powerpc/boot/dts/fsl/Makefile (under the MPC86xx platforms
section) unintended?
Since firebox-t30.dtb is already appended to dtb-$(CONFIG_MPC85xx_RDB) at the
start of the MPC85xx platforms section, building with CONFIG_MPC85xx_RDB=y
causes firebox-t30.dtb to be listed twice in $(dtb-y) and $(obj)/dtbs-list via
scripts/Makefile.dtbs.
> diff --git a/arch/powerpc/boot/dts/fsl/firebox-t30.dts b/arch/powerpc/boot/dts/fsl/firebox-t30.dts
> new file mode 100644
> index 0000000000000..6e9ec7f90ece2
> --- /dev/null
> +++ b/arch/powerpc/boot/dts/fsl/firebox-t30.dts
> @@ -0,0 +1,398 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/leds/common.h>
> +
> +/include/ "p1020si-pre.dtsi"
> +
> +/ {
> + model = "Watchguard Firebox T30";
> + compatible = "watchguard,firebox-t30", "fsl,P1020RDB";
[ ... ]
> + soc: soc@ffe00000 {
> + ranges = <0x0 0x0 0xffe00000 0x100000>;
> +
> + i2c@3000 {
> + rtc@30 {
> + compatible = "sii,s35390a";
> + reg = <0x30>;
> + };
> + };
> +
> + i2c@3100 {
> + tpm@29 {
> + compatible = "tpm,tpm_i2c_atmel";
> + reg = <0x29>;
> + };
> + };
[Severity: Medium]
Should the compatible property for tpm@29 under i2c@3100 be
"atmel,at97sc3204t" instead of "tpm,tpm_i2c_atmel"?
In drivers/char/tpm/tpm_i2c_atmel.c, the OF match table only matches
"atmel,at97sc3204t":
static const struct of_device_id i2c_atmel_of_match[] = {
{.compatible = "atmel,at97sc3204t"},
{},
};
MODULE_DEVICE_TABLE(of, i2c_atmel_of_match);
When an I2C device is instantiated from Device Tree, i2c_device_uevent() in
drivers/i2c/i2c-core-base.c emits only the OF modalias and returns before
emitting the legacy i2c: modalias:
rc = of_device_uevent_modalias(dev, env);
if (rc != -ENODEV)
return rc;
With compatible = "tpm,tpm_i2c_atmel", the kernel emits
MODALIAS=of:NtpmT(null)Ctpm,tpm_i2c_atmel, which prevents automatic module
loading when CONFIG_TCG_TIS_I2C_ATMEL=m and fails DT schema validation against
Documentation/devicetree/bindings/tpm/tcg,tpm-tis-i2c.yaml.
> +
> + sdhc@2e000 {
> + compatible = "fsl,p1020-esdhc", "fsl,esdhc";
> + sdhci,auto-cmd12;
> + reg = <0x2e000 0x1000>;
> + interrupts = <0x48 0x2 0x0 0x0>;
> + interrupt-parent = <&mpic>;
> + clock-frequency = <0>;
> + };
> +
> + spi0: spi@7000 {
> + compatible = "fsl,mpc8536-espi";
> + reg = <0x7000 0x1000>;
> + interrupts = <0x3b 0x2>;
> + interrupt-parent = <&mpic>;
> + fsl,espi-num-chipselects = <4>;
> + #address-cells = <1>;
> + #size-cells = <0>;
[Severity: Low]
Can the SoC-level properties in sdhc@2e000 and spi0: spi@7000 be dropped here
so they are inherited from p1020si-post.dtsi?
In spi0: spi@7000, interrupts = <0x3b 0x2> only provides 2 cells for &mpic,
whereas mpic: pic@40000 in pq3-mpic.dtsi requires #interrupt-cells = <4>.
Because p1020si-post.dtsi (which includes pq3-espi-0.dtsi and pq3-esdhc-0.dtsi)
is included at the bottom of firebox-t30.dts, dtc overwrites this 2-cell
specifier with the 4-cell interrupts = <59 0x2 0 0> definition from
pq3-espi-0.dtsi.
Furthermore, sdhc@2e000 only repeats properties already defined in
p1020si-post.dtsi and pq3-esdhc-0.dtsi without adding any board-specific
configuration, and spi@7000 only needs to define its flash@0 and slic@1 child
nodes.
[ ... ]
> + enet0: ethernet@b0000 {
> + phy-connection-type = "rgmii-id";
> + rx-internal-delay-ps = <2000>;
> + tx-internal-delay-ps = <2000>;
> + nvmem-cells = <&macaddr_nor_cfg0_1830 0>;
> + nvmem-cell-names = "mac-address";
> +
> + fixed-link {
> + speed = <1000>;
> + full-duplex;
> + };
> + };
[ ... ]
> + ath10k: wifi@0,0 {
> + reg = <0x0000 0 0 0 0>;
> + #gpio-cells = <2>;
> + gpio-controller;
> + nvmem-cells = <&macaddr_nor_cfg0_1894 0>;
> + nvmem-cell-names = "mac-address";
> + };
[Severity: Low]
Are the following bindings and properties in firebox-t30.dts intentional?
1. The root node uses compatible = "watchguard,firebox-t30", "fsl,P1020RDB",
where neither the "watchguard" vendor prefix (in
Documentation/devicetree/bindings/vendor-prefixes.yaml) nor the
"watchguard,firebox-t30" board compatible string is documented.
2. enet0: ethernet@b0000 (an fsl,etsec2 device from pq3-etsec2-0.dtsi) sets
rx-internal-delay-ps = <2000> and tx-internal-delay-ps = <2000>, which the
gianfar driver in drivers/net/ethernet/freescale/gianfar.c does not parse
or support.
3. ath10k: wifi@0,0 declares gpio-controller and #gpio-cells = <2>, which are
not supported by the ath10k driver or its binding in
Documentation/devicetree/bindings/net/wireless/qcom,ath10k.yaml, and are
not referenced elsewhere in this DTS.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261028143421.145290-1-lefteris.koutrakis@gmail.com?part=1
next prev parent reply other threads:[~2026-10-28 14:47 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-28 14:34 [PATCH v3] powerpc/dts: Add Device Tree for WatchGuard Firebox T30 Lefteris Koutrakis
2026-10-28 14:47 ` sashiko-bot [this message]
2026-10-28 14:58 ` Krzysztof Kozlowski
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=sashiko-outbox-188010@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=lefteris.koutrakis@gmail.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.