[PATCH v4 3/3] arm64: dts: amlogic: add support for Orbbec Zora P1

sashiko-bot at kernel.org sashiko-bot at kernel.org
Wed Jul 29 07:21:07 PDT 2026


Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] Hardware pin conflict on GPIOX_16, which is simultaneously assigned as an SDIO reset GPIO and a PWM_E clock output.
- [Low] The overridden 'led-blue' node fails to delete the inherited 'label' property, causing the LED sysfs device name to incorrectly remain 'n2:blue' and ignoring the new 'color' and 'function' properties.
--

--- Patch [3]: [PATCH v4 3/3] arm64: dts: amlogic: add support for Orbbec Zora P1 ---
commit 42dd3ecbc89a1e42aabbfd5aa86b80cf4d5cb181
Author: Alberto Robazza <robazzalberto at gmail.com>

arm64: dts: amlogic: add support for Orbbec Zora P1

The Orbbec Zora P1 is an A311D board modded from the ODROID-N2. This commit
adds a new device tree that builds on meson-g12b-a311d.dtsi and
meson-g12b-odroid-n2.dtsi, adding board-specific GPIO wiring for Wi-Fi/BT
and modifying the LED configuration.

> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-zora-p1.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-zora-p1.dts
> new file mode 100644
> index 0000000000000..6e696ddbcafea
> --- /dev/null
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-zora-p1.dts

[ ... ]

> +	leds {
> +		/* Status led on Zora is actually green, same pin as N2, but reversed polarity */
> +		led-blue {
> +			function = LED_FUNCTION_STATUS;
> +			color = <LED_COLOR_ID_GREEN>;
> +			gpios = <&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;

[Severity: Low]
Will the LED subsystem ignore the new color and function properties here?

Since this node overrides led-blue from the base meson-g12b-odroid-n2.dtsi
(which sets label = "n2:blue"), not explicitly removing the label with
/delete-property/ label; means the original label is inherited.

In led_parse_fwnode_props(), if a label is present, it uses that exclusively
for the sysfs name and ignores the color and function properties.

> +		};
> +	};
> +
> +	sdio_pwrseq: sdio-pwrseq {
> +		compatible = "mmc-pwrseq-simple";
> +		reset-gpios = <&gpio GPIOX_16 GPIO_ACTIVE_LOW>;
> +		clocks = <&clock_32768>;
> +		clock-names = "ext_clock";
> +	};

[ ... ]

> +&pwm_ef {
> +	status = "okay";
> +	pinctrl-0 = <&pwm_e_pins>;

[Severity: High]
Does this create a hardware pin conflict on GPIOX_16?

The sdio_pwrseq node explicitly requests GPIOX_16 as a reset GPIO. At the
same time, pwm_ef claims pwm_e_pins. On Amlogic G12A/G12B platforms, the
pwm_e_pins group maps directly to GPIOX_16.

This looks like the exact same pin is requested for two incompatible roles,
which might conflict between the GPIO and pinctrl subsystems and prevent the
Wi-Fi module from working.

> +	pinctrl-names = "default";
> +};
> +

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260729141234.65037-1-robazzalberto@gmail.com?part=3



More information about the linux-amlogic mailing list