From: sashiko-bot@kernel.org
To: "Mohd Ayaan Anwar" <mohd.anwar@oss.qualcomm.com>
Cc: robh@kernel.org, devicetree@vger.kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH PRELIMINARY 2/5] arm64: dts: qcom: shikra: add ethernet nodes
Date: Wed, 09 Sep 2026 06:24:26 +0000 [thread overview]
Message-ID: <20260909062426.580E01F00A3E@smtp.kernel.org> (raw)
In-Reply-To: <20260908-shikra_ethernet_dts-v1-2-69c0c5c7c124@oss.qualcomm.com>
Thank you for your contribution! Sashiko AI review found 3 potential issue(s) to consider:
- [High] The 'qcom,shikra-ethqos' compatible string is undocumented in DT bindings, lacks a generic fallback, and has no driver support, rendering the nodes dead code.
- [Medium] The ethernet nodes define 6 clocks including 'axi-noc' and 'pcie-tile-axi-noc', violating the 4-clock limit in bindings and introducing a copy-paste error.
- [Low] Incorrect interconnect tag macro `QCOM_ICC_TAG_ALWAYS` used for RPM-based interconnects.
--
commit ab9a1a40b65e83ff44f2ceb6b0d365afac0a9e34
Author: Mohd Ayaan Anwar <mohd.anwar@oss.qualcomm.com>
arm64: dts: qcom: shikra: add ethernet nodes
Add the two Gigabit Ethernet controllers present on Shikra (ethernet0
at 0x5d00000, ethernet1 at 0x5d20000). Both nodes are left disabled;
board files supply the PHY details.
> diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
> index c1f06f692f664..a55e20be83fe2 100644
> --- a/arch/arm64/boot/dts/qcom/shikra.dtsi
> +++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
[ ... ]
> @@ -1977,6 +2027,222 @@ &clk_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>,
> };
> };
>
> + ethernet0: ethernet@5d00000 {
> + compatible = "qcom,shikra-ethqos";
[Severity: High]
Does this compatible string exist in the dt-bindings and does it have driver
support?
Without a standard fallback string like "qcom,sc8280xp-ethqos" and no driver
support in dwmac-qcom-ethqos.c, won't these nodes fail to probe and remain
completely uninitialized when board files try to enable them?
> + reg = <0x0 0x05d00000 0x0 0x10000>,
> + <0x0 0x05d16000 0x0 0x100>;
> + reg-names = "stmmaceth", "rgmii";
> +
> + interrupts = <GIC_SPI 478 IRQ_TYPE_LEVEL_HIGH 0>;
> + interrupt-names = "macirq";
> +
> + clocks = <&gcc GCC_EMAC0_AXI_CLK>,
> + <&gcc GCC_EMAC0_AHB_CLK>,
> + <&gcc GCC_EMAC0_PTP_CLK>,
> + <&gcc GCC_EMAC0_RGMII_CLK>,
> + <&gcc GCC_EMAC0_AXI_SYS_NOC_CLK>,
> + <&gcc GCC_PCIE_TILE_AXI_SYS_NOC_CLK>;
> + clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii",
> + "axi-noc", "pcie-tile-axi-noc";
[Severity: Medium]
Does the qcom,ethqos.yaml binding allow 6 clocks?
The binding strictly limits the clocks array to 4 items. Additionally, does it
make sense to assign a PCIe clock to the Ethernet MAC? NOC clock scaling is
usually handled by the interconnect framework via the interconnects property,
so this might be a copy-paste error that breaks static validation.
> +
> + power-domains = <&gcc GCC_EMAC0_GDSC>;
> + resets = <&gcc GCC_EMAC0_BCR>;
> + iommus = <&apps_smmu 0x0380 0x0007>;
> +
> + interconnects = <&mem_noc MASTER_AMPSS_M0 QCOM_ICC_TAG_ALWAYS
> + &config_noc SLAVE_EMAC0_CFG QCOM_ICC_TAG_ALWAYS>,
[Severity: Low]
Is QCOM_ICC_TAG_ALWAYS the correct tag macro here?
The Shikra SoC uses an RPM-based interconnect provider, which expects tags
from <dt-bindings/interconnect/qcom,rpm-icc.h> such as RPM_ALWAYS_TAG.
QCOM_ICC_TAG_ALWAYS is an RPMh macro defined in
<dt-bindings/interconnect/qcom,icc.h>.
[ ... ]
> + ethernet1: ethernet@5d20000 {
> + compatible = "qcom,shikra-ethqos";
[Severity: High]
Does this compatible string exist in the dt-bindings and does it have driver
support?
Without a standard fallback string like "qcom,sc8280xp-ethqos" and no driver
support in dwmac-qcom-ethqos.c, won't these nodes fail to probe and remain
completely uninitialized when board files try to enable them?
> + reg = <0x0 0x05d20000 0x0 0x10000>,
> + <0x0 0x05d36000 0x0 0x100>;
> + reg-names = "stmmaceth", "rgmii";
> +
> + interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH 0>;
> + interrupt-names = "macirq";
> +
> + clocks = <&gcc GCC_EMAC1_AXI_CLK>,
> + <&gcc GCC_EMAC1_AHB_CLK>,
> + <&gcc GCC_EMAC1_PTP_CLK>,
> + <&gcc GCC_EMAC1_RGMII_CLK>,
> + <&gcc GCC_EMAC1_AXI_SYS_NOC_CLK>,
> + <&gcc GCC_PCIE_TILE_AXI_SYS_NOC_CLK>;
> + clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii",
> + "axi-noc", "pcie-tile-axi-noc";
[Severity: Medium]
Does the qcom,ethqos.yaml binding allow 6 clocks?
The binding strictly limits the clocks array to 4 items. Additionally, does it
make sense to assign a PCIe clock to the Ethernet MAC? NOC clock scaling is
usually handled by the interconnect framework via the interconnects property,
so this might be a copy-paste error that breaks static validation.
> +
> + power-domains = <&gcc GCC_EMAC1_GDSC>;
> + resets = <&gcc GCC_EMAC1_BCR>;
> + iommus = <&apps_smmu 0x03a0 0x0007>;
> +
> + interconnects = <&mem_noc MASTER_AMPSS_M0 QCOM_ICC_TAG_ALWAYS
> + &config_noc SLAVE_EMAC1_CFG QCOM_ICC_TAG_ALWAYS>,
[Severity: Low]
Is QCOM_ICC_TAG_ALWAYS the correct tag macro here?
The Shikra SoC uses an RPM-based interconnect provider, which expects tags
from <dt-bindings/interconnect/qcom,rpm-icc.h> such as RPM_ALWAYS_TAG.
QCOM_ICC_TAG_ALWAYS is an RPMh macro defined in
<dt-bindings/interconnect/qcom,icc.h>.
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260908-shikra_ethernet_dts-v1-0-69c0c5c7c124@oss.qualcomm.com?part=2
next prev parent reply other threads:[~2026-09-09 6:24 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-08 6:23 [PATCH PRELIMINARY 0/5] arm64: dts: qcom: shikra: add Ethernet support Mohd Ayaan Anwar
2026-09-08 6:23 ` [PATCH PRELIMINARY 1/5] arm64: dts: qcom: shikra-iqs-som: fix GPIO138 reservation Mohd Ayaan Anwar
2026-09-08 12:11 ` Andrew Lunn
2026-09-08 13:43 ` Mohd Ayaan Anwar
2026-09-08 13:57 ` Andrew Lunn
2026-09-09 11:20 ` Konrad Dybcio
2026-09-09 11:19 ` Konrad Dybcio
2026-09-09 11:24 ` Krzysztof Kozlowski
2026-09-09 11:30 ` Krzysztof Kozlowski
2026-09-09 11:33 ` Krzysztof Kozlowski
2026-09-09 11:39 ` Mohd Ayaan Anwar
2026-09-09 11:34 ` Mohd Ayaan Anwar
2026-09-08 6:23 ` [PATCH PRELIMINARY 2/5] arm64: dts: qcom: shikra: add ethernet nodes Mohd Ayaan Anwar
2026-09-09 6:24 ` sashiko-bot [this message]
2026-09-08 6:23 ` [PATCH PRELIMINARY 3/5] arm64: dts: qcom: shikra-cqm-evk: enable the first Ethernet port Mohd Ayaan Anwar
2026-09-09 6:24 ` sashiko-bot
2026-09-08 6:23 ` [PATCH PRELIMINARY 4/5] arm64: dts: qcom: shikra-cqs-evk: " Mohd Ayaan Anwar
2026-09-09 6:24 ` sashiko-bot
2026-09-08 6:23 ` [PATCH PRELIMINARY 5/5] arm64: dts: qcom: shikra-iqs-evk: enable both Ethernet ports Mohd Ayaan Anwar
2026-09-09 6:24 ` sashiko-bot
2026-09-08 6:56 ` [PATCH PRELIMINARY 0/5] arm64: dts: qcom: shikra: add Ethernet support Krzysztof Kozlowski
2026-09-08 7:04 ` Mohd Ayaan Anwar
2026-09-08 7:14 ` Krzysztof Kozlowski
2026-09-08 7:23 ` Mohd Ayaan Anwar
2026-09-08 7:39 ` Mohd Ayaan Anwar
2026-09-08 8:42 ` Krzysztof Kozlowski
2026-09-08 10:02 ` Mohd Ayaan Anwar
2026-09-08 8:40 ` Krzysztof Kozlowski
2026-09-08 9:31 ` Mohd Ayaan Anwar
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=20260909062426.580E01F00A3E@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=mohd.anwar@oss.qualcomm.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.