On Mon, 2022-01-10 at 09:47 +0100, Krzysztof Kozlowski wrote: > On 07/01/2022 19:03, Marcel Ziswiler wrote: > > From: Marcel Ziswiler <marcel.ziswiler@xxxxxxxxxxx> > > > > This patch adds the device tree to support Toradex Verdin iMX8M Mini a > > computer on module which can be used on different carrier boards. > > > > The module consists of an NXP i.MX 8M Mini family SoC (either i.MX 8M > > Mini Quad or 8M Mini DualLite), a PCA9450A PMIC, a Gigabit Ethernet PHY, > > 1 or 2 GB of LPDDR4 RAM, an eMMC, a TLA2024 ADC, an I2C EEPROM, an > > RX8130 RTC, an optional SPI CAN controller plus an optional Bluetooth/ > > Wi-Fi module. > > > > Anything that is not self-contained on the module is disabled by > > default. > > > > The device tree for the Dahlia includes the module's device tree and > > enables the supported peripherals of the carrier board. > > > > The device tree for the Verdin Development Board includes the module's > > device tree as well as the Dahlia one as it is a superset and supports > > almost all peripherals available. > > > > So far there is no display functionality supported at all but basic > > console UART, USB host, eMMC and Ethernet and PCIe functionality work > > fine. > > > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@xxxxxxxxxxx> > > > > --- > > > > arch/arm64/boot/dts/freescale/Makefile | 4 + > > .../dts/freescale/imx8mm-verdin-dahlia.dtsi | 143 ++ > > .../boot/dts/freescale/imx8mm-verdin-dev.dtsi | 67 + > > .../imx8mm-verdin-nonwifi-dahlia.dts | 18 + > > .../freescale/imx8mm-verdin-nonwifi-dev.dts | 18 + > > .../dts/freescale/imx8mm-verdin-nonwifi.dtsi | 75 + > > .../freescale/imx8mm-verdin-wifi-dahlia.dts | 18 + > > .../dts/freescale/imx8mm-verdin-wifi-dev.dts | 18 + > > .../dts/freescale/imx8mm-verdin-wifi.dtsi | 95 ++ > > .../boot/dts/freescale/imx8mm-verdin.dtsi | 1277 +++++++++++++++++ > > 10 files changed, 1733 insertions(+) > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-dahlia.dtsi > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-dev.dtsi > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dahlia.dts > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi-dev.dts > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-nonwifi.dtsi > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dahlia.dts > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi-dev.dts > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin-wifi.dtsi > > create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi > > > > (...) > > > diff --git a/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mm- > > verdin.dtsi > > new file mode 100644 > > index 000000000000..23eb695a5266 > > --- /dev/null > > +++ b/arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi > > @@ -0,0 +1,1277 @@ > > +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT > > +/* > > + * Copyright 2022 Toradex > > + */ > > + > > +#include "dt-bindings/pwm/pwm.h" > > +#include "imx8mm.dtsi" > > + > > +/ { > > + chosen { > > + bootargs = "console=ttymxc0,115200 earlycon"; > > earlycon is a debug tool, so should not be part of mainline DTS by > default. Entire bootargs property looks actually not needed. Yes, I will remove it in v2. > > + stdout-path = &uart1; > > + }; > > + > > (...) > > > +/* Verdin ETH_1 (On-module PHY) */ > > +&fec1 { > > + fsl,magic-packet; > > + phy-handle = <ðphy0>; > > + phy-mode = "rgmii-id"; > > + phy-supply = <®_ethphy>; > > + pinctrl-names = "default", "sleep"; > > + pinctrl-0 = <&pinctrl_fec1>; > > + pinctrl-1 = <&pinctrl_fec1_sleep>; > > + > > + mdio { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + ethphy0: ethernet-phy@7 { > > + compatible = "ethernet-phy-ieee802.3-c22"; > > + interrupt-parent = <&gpio1>; > > + interrupts = <10 IRQ_TYPE_LEVEL_LOW>; > > + micrel,led-mode = <0>; > > + reg = <7>; > > + }; > > + }; > > +}; > > + > > +/* Verdin QSPI_1 */ > > +&flexspi { > > + pinctrl-names = "default"; > > + pinctrl-0 = <&pinctrl_flexspi0>; > > +#if 0 > > Please drop it or explain with a comment why we need dead code in Linux > kernel. Yes, I agree. > > + flash@0 { > > + #address-cells = <1>; > > + #size-cells = <1>; > > + compatible = "jedec,spi-nor"; > > + reg = <0>; > > + spi-max-frequency = <80000000>; > > + }; > > +#endif > > +}; > > + Thanks for your review. > Best regards, > Krzysztof Cheers Marcel