Re: [PATCH v3 1/2] arm64: dts: Add the Kontron i.MX8M Mini SoMs and baseboards

From: Frieder Schrempf
Date: Thu Oct 01 2020 - 10:24:00 EST


On 01.10.20 15:30, Frieder Schrempf wrote:
On 01.10.20 14:57, Krzysztof Kozlowski wrote:
On Thu, Oct 01, 2020 at 02:06:58PM +0200, Schrempf Frieder wrote:
From: Frieder Schrempf <frieder.schrempf@xxxxxxxxxx>

Kontron Electronics GmbH offers small and powerful SoMs based on the
i.MX8M Mini SoC including PMIC, LPDDR4-RAM, eMMC and SPI NOR.

The matching baseboards have the same form factor and similar interfaces
as the other boards from the Kontron "Board-Line" family, including
SD card, 1G Ethernet, 100M Ethernet, USB Host/OTG, digital IOs, RS232,
RS485, CAN, LVDS or HDMI, RTC and much more.

Signed-off-by: Frieder Schrempf <frieder.schrempf@xxxxxxxxxx>
---
Changes for v3:
* Remove needless status properties
* Remove needless regulator properties for reg_vdd_5v
* Use proper PHY reset properties in PHY node
* Use phy-connection-type instead of phy-mode
* Adjust PMIC node name and label
* Add over-current-active-low to usbotg1 node
* Remove redundant bus-width property from usdhc2 node
* Remove needless regulator-compatible from reg_vdd_snvs
* Set minimum voltage to 85mV for reg_vdd_snvs

Changes for v2:
* Make the licensing less strict (GPL-2.0+ OR MIT)
* Merge the SoM and baseboard DTs for N8010 and N8011 into one as
   they only differ in DDR and eMMC size.
* Change compatibles and model strings to "n810x" and "N8010X".
* Only use a common memory node that will be updated by the
   bootloader reflecting the detected DDR size.
* Improve naming for 16MHz CAN fixed oscillator and set
   "clock-output-names".
* Consistently use "reg_" prefix for regulators.
* Remove "userspi" node.
* Slightly improve commit message.
---
  .../dts/freescale/imx8mm-kontron-n801x-s.dts  | 323 ++++++++++++++++++
  .../freescale/imx8mm-kontron-n801x-som.dtsi   | 293 ++++++++++++++++
  2 files changed, 616 insertions(+)
  create mode 100644
[...]

+
+        regulators {
+            reg_vdd_soc: BUCK1 {
+                regulator-name = "BUCK1";

All regulator names should be lowercase, as dtschema asks. Node names
can stay uppercase, although I guess it would be better to have them
lower as it is also naming convention for device tree.

Ok, I will change the regulator and node names to lowercase.

I just found out that the pca9450 driver actually uses the upper case node names for matching. So I will keep the upper case node names for now and only change the regulator names.

Afterwards we can fix the node names in the driver and in the DTs in a separate patch if required.



+                regulator-min-microvolt = <800000>;
+                regulator-max-microvolt = <900000>;
+                regulator-boot-on;
+                regulator-always-on;
+                regulator-ramp-delay = <3125>;
+            };
+
+            reg_vdd_arm: BUCK2 {
+                regulator-name = "BUCK2";
+                regulator-min-microvolt = <850000>;
+                regulator-max-microvolt = <950000>;
+                regulator-boot-on;
+                regulator-ramp-delay = <3125>;
+                nxp,dvs-run-voltage = <950000>;
+                nxp,dvs-standby-voltage = <850000>;
+            };
+
+            reg_vdd_dram: BUCK3 {
+                regulator-name = "BUCK3";
+                regulator-min-microvolt = <850000>;
+                regulator-max-microvolt = <900000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_vdd_3v3: BUCK4 {
+                regulator-name = "BUCK4";
+                regulator-min-microvolt = <3300000>;
+                regulator-max-microvolt = <3300000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_vdd_1v8: BUCK5 {
+                regulator-name = "BUCK5";
+                regulator-min-microvolt = <1800000>;
+                regulator-max-microvolt = <1800000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_nvcc_dram: BUCK6 {
+                regulator-name = "BUCK6";
+                regulator-min-microvolt = <1100000>;
+                regulator-max-microvolt = <1100000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_nvcc_snvs: LDO1 {
+                regulator-name = "LDO1";
+                regulator-min-microvolt = <1800000>;
+                regulator-max-microvolt = <1800000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_vdd_snvs: LDO2 {
+                regulator-name = "LDO2";
+                regulator-min-microvolt = <850000>;
+                regulator-max-microvolt = <900000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_vdda: LDO3 {
+                regulator-name = "LDO3";
+                regulator-min-microvolt = <1800000>;
+                regulator-max-microvolt = <1800000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_vdd_phy: LDO4 {
+                regulator-name = "LDO4";
+                regulator-min-microvolt = <900000>;
+                regulator-max-microvolt = <900000>;
+                regulator-boot-on;
+                regulator-always-on;
+            };
+
+            reg_nvcc_sd: LDO5 {
+                regulator-name = "LDO5";
+                regulator-min-microvolt = <1800000>;
+                regulator-max-microvolt = <3300000>;
+            };
+        };
+    };
+};
+
[...]