From: sashiko-bot@kernel.org
To: "Joseph Guo" <qijian.guo@nxp.com>
Cc: Frank.Li@kernel.org, devicetree@vger.kernel.org,
conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org,
imx@lists.linux.dev
Subject: Re: [PATCH v3 2/2] arm64: dts: freescale: add i.MX95 19x19 FRDM PRO board dts
Date: Sat, 09 May 2026 07:52:04 +0000 [thread overview]
Message-ID: <20260509075204.B916AC2BCB2@smtp.kernel.org> (raw)
In-Reply-To: <20260509-imx95_frdm_pro-v3-2-96290b471396@nxp.com>
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [High] The `silent-gpios` for `flexcan1_phy` and `flexcan3_phy` (which use the `nxp,tja1057` CAN transceiver) are defined with the `GPIO_ACTIVE_LOW` polarity. This is incorrect for the TJA1057.
- [High] The pad configuration for the `pcal6416` I2C GPIO expander's interrupt pin (`IMX95_PAD_GPIO_IO34__GPIO5_IO_BIT14`) in `pinctrl_pcal6416` is incorrectly set to `0x31` instead of the expected `0x31e`.
- [Low] The `pcie0` and `pcie1` nodes use the deprecated `reset-gpio` property instead of the standard `reset-gpios`.
- [Low] Device tree node names contain underscores, which violates DT naming specifications.
--
commit e8bda174f6b9f1f5508fbd640dcc59ff092dd5cd
Author: Joseph Guo <qijian.guo@nxp.com>
arm64: dts: freescale: add i.MX95 19x19 FRDM PRO board dts
NXP i.MX95 19x19 FRDM PRO is cost-effective with extensive expansion
capabilities based on the i.MX95 19x19 SoC. Add device tree for this board.
> diff --git a/arch/arm64/boot/dts/freescale/imx95-19x19-frdm-pro.dts b/arch/arm64/boot/dts/freescale/imx95-19x19-frdm-pro.dts
> new file mode 100644
> index 0000000000000..ce638ed8dc0f9
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx95-19x19-frdm-pro.dts
> @@ -0,0 +1,1021 @@
[ ... ]
> + aliases {
> + ethernet0 = &enetc_port0;
> + ethernet1 = &enetc_port1;
[ ... ]
> + serial0 = &lpuart1;
> + serial4 = &lpuart5;
> + };
> +
> + bt_sco_codec: bt_sco_codec {
> + compatible = "linux,bt-sco";
> + #sound-dai-cells = <1>;
> + };
This isn't a bug, but should this node name use hyphens instead of
underscores to comply with Devicetree naming specifications?
> +
> + flexcan1_phy: can-phy0 {
> + compatible = "nxp,tja1057";
> + #phy-cells = <0>;
> + max-bitrate = <5000000>;
> + silent-gpios = <&i2c4_gpio_expander_22 11 GPIO_ACTIVE_LOW>;
> + };
> +
> + flexcan3_phy: can-phy2 {
> + compatible = "nxp,tja1057";
> + #phy-cells = <0>;
> + max-bitrate = <5000000>;
> + silent-gpios = <&i2c4_gpio_expander_22 13 GPIO_ACTIVE_LOW>;
> + };
Does this incorrectly configure the TJA1057 transceiver?
The hardware's silent pin is active-high, so when the driver deasserts the
silent GPIO to enable transmission (logical 0), setting the polarity to
active-low will drive a physical high level.
This would force the transceiver into silent mode and prevent any CAN
transmissions.
Should the polarity be set to active-high instead?
[ ... ]
> + sound-mqs {
> + compatible = "audio-graph-card2";
> + links = <&sai1_port1>;
> + label = "mqs-audio";
> + };
> +
> + usdhc3_pwrseq: usdhc3_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + reset-gpios = <&i2c4_gpio_expander_22 9 GPIO_ACTIVE_LOW>;
> + };
This isn't a bug, but should this node name also use hyphens instead of
underscores?
[ ... ]
> +&netcmix_blk_ctrl {
> + status = "okay";
> +};
> +
> +&pcie0 {
> + pinctrl-0 = <&pinctrl_pcie0>;
> + pinctrl-names = "default";
> + reset-gpio = <&i2c4_gpio_expander_22 19 GPIO_ACTIVE_LOW>;
> + vpcie-supply = <®_m2_mkey_1_pwr>;
> + status = "okay";
> +};
> +
> +&pcie1 {
> + pinctrl-0 = <&pinctrl_pcie1>;
> + pinctrl-names = "default";
> + reset-gpio = <&i2c3_gpio_expander_20 9 GPIO_ACTIVE_LOW>;
> + vpcie-supply = <®_m2_mkey_2_pwr>;
> + status = "okay";
> +};
This isn't a bug, but should these properties use the standard reset-gpios
name instead of the deprecated reset-gpio?
Using the singular form violates strict DT schema definitions and might
trigger validation warnings.
[ ... ]
> + pinctrl_mqs1: mqs1grp {
> + fsl,pins = <
> + IMX95_PAD_SAI1_TXFS__AONMIX_TOP_MQS1_LEFT 0x31e
> + IMX95_PAD_SAI1_RXD0__AONMIX_TOP_MQS1_RIGHT 0x31e
> + >;
> + };
> +
> + pinctrl_pcal6416: pcal6416grp {
> + fsl,pins = <
> + IMX95_PAD_GPIO_IO34__GPIO5_IO_BIT14 0x31
> + >;
> + };
Is this pad missing the pull-up enable bit?
In i.MX95 pad configurations, the trailing 0xe enables the pull-up resistor.
Since the pcal6416 interrupt output is open-drain and configured as
active-low, leaving it floating could cause an interrupt storm or missed
interrupts.
Should this be 0x31e instead of 0x31?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260509-imx95_frdm_pro-v3-0-96290b471396@nxp.com?part=2
prev parent reply other threads:[~2026-05-09 7:52 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-09 7:21 [PATCH v3 0/2] Add NXP FRDM-IMX95-PRO board support Joseph Guo
2026-05-09 7:21 ` [PATCH v3 1/2] dt-bindings: arm: fsl: Add i.MX95 19x19 FRDM PRO board Joseph Guo
2026-05-09 7:21 ` [PATCH v3 2/2] arm64: dts: freescale: add i.MX95 19x19 FRDM PRO board dts Joseph Guo
2026-05-09 7:52 ` 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=20260509075204.B916AC2BCB2@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=Frank.Li@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=imx@lists.linux.dev \
--cc=krzk+dt@kernel.org \
--cc=qijian.guo@nxp.com \
--cc=robh@kernel.org \
--cc=sashiko@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