All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Stefano Radaelli" <stefano.radaelli21@gmail.com>
Cc: devicetree@vger.kernel.org, robh@kernel.org, conor+dt@kernel.org,
	imx@lists.linux.dev, Frank.Li@kernel.org
Subject: Re: [PATCH v3 06/12] ARM: dts: imx6ul: Add Variscite storage and wireless files
Date: Mon, 28 Sep 2026 12:57:35 +0000	[thread overview]
Message-ID: <20260928125735.B9BB61F000FF@smtp.kernel.org> (raw)
In-Reply-To: <335592bb96129d875cf77bd87cabb77f1f9476da.1790512621.git.stefano.r@variscite.com>

Thank you for your contribution! Sashiko AI review found 5 potential issue(s) to consider:
- [High] mmc: pwrseq: simultaneous toggle of power and reset violates hardware sequencing
- [High] dts: brcm: missing power and reset GPIO configuration for Broadcom Wi-Fi
- [High] dts: brcm: completely missing Bluetooth UART node
- [Medium] mmc: missing non-removable property for soldered Broadcom Wi-Fi
- [Low] mtd: nand: partitions defined directly under controller violate modern bindings
--

commit a94c06d13e6360d597e48c190a6a4d8c2a016ddb
Author: Stefano Radaelli <stefano.r@variscite.com>

    ARM: dts: imx6ul: Add Variscite storage and wireless files
    
    Add shared DTSI files for eMMC, NAND, Broadcom Wi-Fi and NXP
    IW61x options on VAR-SOM-6UL and DART-6UL. These options have the
    same descriptions on both modules, so use one file for each.

> diff --git a/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-nand.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-nand.dtsi
> new file mode 100644
> index 0000000000000..1522b5d7e0924
> --- /dev/null
> +++ b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-nand.dtsi
> @@ -0,0 +1,63 @@
[ ... ]
> +&gpmi {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_gpmi_nand_1>;
> +	status = "okay";
> +
> +	partitions {
> +		compatible = "fixed-partitions";
> +		#address-cells = <1>;
> +		#size-cells = <1>;

[Severity: Low]
Should these partitions be placed under a NAND chip subnode (e.g., nand@0)
representing the physical chip, rather than directly under the NAND
controller (&gpmi)?

Modern NAND bindings (nand-controller.yaml) require this, and defining them
here might cause devicetree validation warnings and relies on deprecated
legacy behavior.

[ ... ]
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-brcm.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-brcm.dtsi
> new file mode 100644
> index 0000000000000..d7952233a1ee9
> --- /dev/null
> +++ b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-brcm.dtsi
> @@ -0,0 +1,42 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Copyright (C) 2026 Variscite Ltd. - https://www.variscite.com
> + */
> +
> +/ {
> +	reg_sd1_vmmc: regulator-sd1-vmmc {
> +		compatible = "regulator-fixed";
> +		regulator-name = "VSD_3V3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +	};

[Severity: High]
Is the gpio property missing from this regulator?

The Broadcom Wi-Fi module requires its power enable and reset GPIOs to be
driven to function, but there is no gpio property here and the file
completely lacks an mmc-pwrseq node to release the reset. Will the chip
remain permanently powered off and in reset?

> +};
> +
> +&tsc {
> +	status = "disabled";
> +};
> +
> +&usdhc1 {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +	pinctrl-names = "default", "state_100mhz", "state_200mhz";
> +	pinctrl-0 = <&pinctrl_usdhc1>, <&pinctrl_32k_clk>, <&pinctrl_wifi>;
> +	pinctrl-1 = <&pinctrl_usdhc1_100mhz>, <&pinctrl_32k_clk>, <&pinctrl_wifi>;
> +	pinctrl-2 = <&pinctrl_usdhc1_200mhz>, <&pinctrl_32k_clk>, <&pinctrl_wifi>;
> +	keep-power-in-suspend;
> +	vmmc-supply = <&reg_sd1_vmmc>;
> +	status = "okay";

[Severity: Medium]
Is the non-removable property missing from this node?

Without it, the MMC core incorrectly treats the hard-wired SDIO Wi-Fi chip
as removable, which can cause inefficient polling or failed probing if no
Card Detect (CD) GPIO is present. The companion var-wifi-iw61x.dtsi correctly
sets this property.

> +
> +	brcmf: wifi@1 {
> +		compatible = "brcm,bcm4329-fmac";
> +		reg = <1>;
> +	};
> +};
> +

[Severity: High]
Is an &uart2 node missing from this file?

The Broadcom combo module requires a Bluetooth child node under its UART
(e.g., compatible = "brcm,bcm43438-bt") to initialize the BT functionality.
Will the Bluetooth portion remain uninitialized and unusable without it?

[ ... ]
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-iw61x.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-iw61x.dtsi
> new file mode 100644
> index 0000000000000..d2f116bc8d70f
> --- /dev/null
> +++ b/arch/arm/boot/dts/nxp/imx/imx6ul-imx6ull-var-wifi-iw61x.dtsi
> @@ -0,0 +1,43 @@
[ ... ]
> +/ {
> +	reg_sd1_vmmc: regulator-sd1-vmmc {
> +		compatible = "regulator-fixed";
> +		regulator-name = "VSD_3V3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +	};
> +
> +	iw61x_pwrseq: mmc-pwrseq {
> +		compatible = "mmc-pwrseq-simple";
> +		post-power-on-delay-ms = <100>;
> +		power-off-delay-us = <10000>;
> +		reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>, /* WIFI_RESET */
> +			      <&gpio5 2 GPIO_ACTIVE_LOW>; /* WIFI_PWR_EN */

[Severity: High]
Does placing both the power enable (WIFI_PWR_EN) and reset (WIFI_RESET) pins
in this reset-gpios array cause them to transition state at the exact same
instant?

The mmc_pwrseq_simple driver toggles all pins in this array simultaneously
using gpiod_multi_set_value_cansleep() in drivers/mmc/core/pwrseq_simple.c,
which violates the hardware requirement that power must be stable before the
reset line is released. Could this lead to unreliable or failed Wi-Fi
initialization?

> +	};
> +};

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/cover.1790512621.git.stefano.r@variscite.com?part=6

  reply	other threads:[~2026-09-28 12:57 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-27 12:46 [PATCH v3 00/12] ARM: dts: imx6ul: Add Variscite VAR-SOM-6UL and DART-6UL Stefano Radaelli
2026-09-27 12:46 ` [PATCH v3 01/12] dt-bindings: arm: fsl: Document Variscite i.MX6UL boards Stefano Radaelli
2026-09-29  8:49   ` Krzysztof Kozlowski
2026-09-29  9:06     ` Stefano Radaelli
2026-09-29  9:32       ` Krzysztof Kozlowski
2026-09-29  9:41         ` Stefano Radaelli
2026-09-27 12:46 ` [PATCH v3 02/12] net: phy: micrel: Check RMII clock select property presence Stefano Radaelli
2026-09-27 12:46 ` [PATCH v3 03/12] dt-bindings: net: micrel: Fix RMII clock select property type Stefano Radaelli
2026-09-27 12:46 ` [PATCH v3 04/12] ARM: dts: imx6ul: Add Variscite SoM and DART base files Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-27 12:46 ` [PATCH v3 05/12] ARM: dts: imx6ul: Add Variscite audio codec files Stefano Radaelli
2026-09-27 12:46 ` [PATCH v3 06/12] ARM: dts: imx6ul: Add Variscite storage and wireless files Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot [this message]
2026-09-27 12:46 ` [PATCH v3 07/12] ARM: dts: imx6ul: Add Variscite carrier board files Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-27 12:46 ` [PATCH v3 08/12] ARM: dts: imx6ul: Reuse Variscite DTSI files for Concerto Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-27 12:46 ` [PATCH v3 09/12] ARM: dts: imx6ul: Add Variscite i.MX6UL board variants Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-27 12:46 ` [PATCH v3 10/12] ARM: dts: imx6ull: Add Variscite i.MX6ULL " Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-27 12:46 ` [PATCH v3 11/12] ARM: dts: imx6ulz: Add Variscite i.MX6ULZ " Stefano Radaelli
2026-09-28 12:57   ` sashiko-bot
2026-09-28 19:55   ` Frank Li
2026-09-27 12:46 ` [PATCH v3 12/12] ARM: dts: imx6ul: Enable Variscite i.MX6UL board DTBs Stefano Radaelli

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=20260928125735.B9BB61F000FF@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=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=stefano.radaelli21@gmail.com \
    /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.