Devicetree
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Pinkesh Vaghela" <pinkesh.vaghela@einfochips.com>
Cc: conor+dt@kernel.org, robh@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH 3/7] riscv: dts: eswin: eic7700: add pinctrl support
Date: Mon, 15 Jun 2026 12:33:15 +0000	[thread overview]
Message-ID: <20260615123315.ABB4A1F00A3A@smtp.kernel.org> (raw)
In-Reply-To: <20260615122016.1110206-4-pinkesh.vaghela@einfochips.com>

Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [High] Dead Code / Missing Pinctrl Hogs
- [High] Invalid Pin Mux Function / Copy-Paste Error
- [High] Missing GPIO to Pinctrl Mapping
- [Low] Device Tree Standard Compliance
--

commit 7180be18ad292ee17c6b942dc71e252ce0fdbeef
Author: Yulin Lu <luyulin@eswincomputing.com>

riscv: dts: eswin: eic7700: add pinctrl support

Add pinctrl node and related pin configuration for EIC7700 SoC.

> diff --git a/arch/riscv/boot/dts/eswin/eic7700-hifive-premier-p550.dts b/arch/riscv/boot/dts/eswin/eic7700-hifive-premier-p550.dts
> index 1fb92f0e7c550..e7bb96e149585 100644
> --- a/arch/riscv/boot/dts/eswin/eic7700-hifive-premier-p550.dts
> +++ b/arch/riscv/boot/dts/eswin/eic7700-hifive-premier-p550.dts
> @@ -18,6 +19,15 @@ aliases {
>  	chosen {
>  		stdout-path = "serial0:115200n8";
>  	};
> +
> +	vcc_1v8: vcc1v8 {
> +		 compatible = "regulator-fixed";

[Severity: Low]
Should this node be named using the generic regulator-* pattern (such as
regulator-1v8) to avoid dtbs_check warnings for deprecated names?

There is also an extra leading space on the properties within this node
that deviates from standard spacing.

> +		 regulator-name = "vcc1v8";
> +		 regulator-always-on;
> +		 regulator-boot-on;
> +		 regulator-min-microvolt = <1800000>;
> +		 regulator-max-microvolt = <1800000>;
> +	 };
>  };

[ ... ]

> @@ -25,6 +35,105 @@ &xtal {
>  	clock-output-names = "xtal24m";
>  };
>  
> +&gpio0_pins {
> +	bias-disable;
> +	input-enable;
> +};

[Severity: High]
Will these pin configuration overrides be silently ignored by the pinctrl
core during boot?

Since these pin definitions are not referenced by a pinctrl-0 property in
an active device node, and are not configured as pinctrl hogs in the provider,
the intended hardware states for these pins will not be programmed.

[ ... ]

> diff --git a/arch/riscv/boot/dts/eswin/eic7700-pinctrl.dtsi b/arch/riscv/boot/dts/eswin/eic7700-pinctrl.dtsi
> new file mode 100644
> index 0000000000000..7293df146aa7b
> --- /dev/null
> +++ b/arch/riscv/boot/dts/eswin/eic7700-pinctrl.dtsi
> @@ -0,0 +1,888 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)

[ ... ]

> +		hdmi_pins: hdmi-pins {
> +			pins = "hdmi_scl", "hdmi_sda", "hdmi_cec";
> +			function = "hdmi";
> +		};
> +
> +		rgmii0_pins: rgmii0-pins {
> +			pins = "rgmii0_clk_125", "rgmii0_txen", "rgmii0_txclk", "rgmii0_txd0",
> +			       "rgmii0_txd1", "rgmii0_txd2", "rgmii0_txd3", "rgmii0_rxclk",
> +			       "rgmii0_rxdv", "rgmii0_rxd0", "rgmii0_rxd1", "rgmii0_rxd2",
> +			       "rgmii0_rxd3", "rgmii0_mdc", "rgmii0_mdio", "rgmii0_intb";
> +			function = "hdmi";
> +		};

[Severity: High]
Is the hdmi function correct for this network pin group?

It appears that rgmii0, rgmii1, and the i2s pin groups that follow all use
the hdmi function. This will prevent the pin controller from routing these
pins properly, likely leading to driver probe failures when peripherals
attempt to request them.

[ ... ]

> diff --git a/arch/riscv/boot/dts/eswin/eic7700.dtsi b/arch/riscv/boot/dts/eswin/eic7700.dtsi
> index a7ebb11159580..8798c50f7584d 100644
> --- a/arch/riscv/boot/dts/eswin/eic7700.dtsi
> +++ b/arch/riscv/boot/dts/eswin/eic7700.dtsi
> @@ -349,6 +349,11 @@ gpioD: gpio-port@3 {
>  			};
>  		};
>  
> +		pinctrl: pinctrl@51600080 {
> +			compatible = "eswin,eic7700-pinctrl";
> +			reg = <0x0 0x51600080 0x0 0x1fff80>;
> +		};
> +

[Severity: High]
Should the existing gpio controller nodes (gpioA, gpioB, gpioC, and gpioD)
be updated with a gpio-ranges property mapping to this new pinctrl provider?

Without gpio-ranges, the GPIO subsystem cannot translate GPIO offsets into
pinctrl pins. The pinctrl core's .gpio_request_enable callback will not be
invoked when a software component requests a GPIO dynamically, preventing
the multiplexer from automatically switching the pin to GPIO mode.

>  		clk: clock-controller@51828000 {
>  			compatible = "eswin,eic7700-clock";

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260615122016.1110206-1-pinkesh.vaghela@einfochips.com?part=3

  reply	other threads:[~2026-06-15 12:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-15 12:20 [PATCH 0/7] riscv: eswin: eic7700: Add support for clocks, resets, pinctrl, HSP power domain, I2C and watchdog Pinkesh Vaghela
2026-06-15 12:20 ` [PATCH 1/7] riscv: dts: eswin: add reset generator for EIC7700 SoC Pinkesh Vaghela
2026-06-15 12:20 ` [PATCH 2/7] riscv: dts: eswin: add clock " Pinkesh Vaghela
2026-06-15 12:27   ` sashiko-bot
2026-06-15 12:20 ` [PATCH 3/7] riscv: dts: eswin: eic7700: add pinctrl support Pinkesh Vaghela
2026-06-15 12:33   ` sashiko-bot [this message]
2026-06-15 12:20 ` [PATCH 4/7] dt-bindings: mfd: syscon: add ESWIN EIC7700 compatible Pinkesh Vaghela
2026-06-15 12:20 ` [PATCH 5/7] riscv: dts: eswin: add hsp power domain Pinkesh Vaghela
2026-06-15 12:31   ` sashiko-bot
2026-06-15 12:20 ` [PATCH 6/7] riscv: dts: eswin: add I2C controller support Pinkesh Vaghela
2026-06-15 12:20 ` [PATCH 7/7] riscv: dts: eswin: add watchdog support Pinkesh Vaghela

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=20260615123315.ABB4A1F00A3A@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=pinkesh.vaghela@einfochips.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox