[PATCH 10/10] arm64: dts: add description for solidrun i.mx8mm som and evb
Josua Mayer
josua at solid-run.com
Thu Oct 30 09:47:34 PDT 2025
Am 27.10.25 um 18:48 schrieb Josua Mayer:
> Add description for the SolidRun i.MX8M Mini SoM on HummingBoard Ripple.
>
> The SoM features:
> - 1Gbps Ethernet with PHY
> - eMMC
> - 1/2GB DDR
> - NPU (assembly option)
> - WiFi + Bluetooth
>
> The HummingBoard Ripple features:
> - 2x USB-2.0 Type-A connector
> - 1Gbps RJ45 Ethernet with PoE
> - microSD connector
> - microHDMI connector
> - mpcie connector with USB-2.0 interface + SIM card holder
> - microUSB connector for console (using fdtdi chip)
> - RTC with backup battery
>
> Signed-off-by: Josua Mayer <josua at solid-run.com>
> ---
> arch/arm64/boot/dts/freescale/Makefile | 2 +
> .../dts/freescale/imx8mm-hummingboard-ripple.dts | 335 +++++++++++++++++
> arch/arm64/boot/dts/freescale/imx8mm-sr-som.dtsi | 395 +++++++++++++++++++++
> 3 files changed, 732 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
> index c56137097da3b..3fbc8a1a1bf6e 100644
> --- a/arch/arm64/boot/dts/freescale/Makefile
> +++ b/arch/arm64/boot/dts/freescale/Makefile
> @@ -124,6 +124,8 @@ imx8mm-evk-pcie-ep-dtbs += imx8mm-evk.dtb imx-pcie0-ep.dtbo
> imx8mm-evkb-pcie-ep-dtbs += imx8mm-evkb.dtb imx-pcie0-ep.dtbo
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk-pcie-ep.dtb imx8mm-evkb-pcie-ep.dtb
>
> +dtb-$(CONFIG_ARCH_MXC) += imx8mm-hummingboard-ripple.dtb
> +DTC_FLAGS_imx8mm-hummingboard-ripple += -@
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-icore-mx8mm-ctouch2.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-icore-mx8mm-edimm2.2.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-iot-gateway.dtb
> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-hummingboard-ripple.dts b/arch/arm64/boot/dts/freescale/imx8mm-hummingboard-ripple.dts
> new file mode 100644
> index 0000000000000..110e7ff1ff135
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx8mm-hummingboard-ripple.dts
cut
> +&usbotg2 {
> + status = "okay";
> + dr_mode = "host";
> + vbus-supply = <&vbus1>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&usb_hub_pins>;
> +
> + hub_2_0: hub at 1 {
> + compatible = "usb4b4,6502", "usb4b4,6506";
> + reg = <1>;
> + peer-hub = <&hub_3_0>;
> + reset-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&v_1_2>;
> + vdd2-supply = <&v_3_3>;
> + };
> +
> + /* this device is not visible because host supports 2.0 only */
> + hub_3_0: hub at 2 {
> + compatible = "usb4b4,6500", "usb4b4,6504";
> + reg = <2>;
> + peer-hub = <&hub_2_0>;
> + reset-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>;
> + vdd-supply = <&v_1_2>;
> + vdd2-supply = <&v_3_3>;
> + };
> +};
Is it correct to specify both usb-2.0 and usb-3.0 instances of the
hub even though the host is usb-2.0 only?
More information about the linux-arm-kernel
mailing list