]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
imx8mq: synchronise device tree with linux
authorMarcel Ziswiler <marcel.ziswiler@toradex.com>
Thu, 21 Jul 2022 13:47:59 +0000 (15:47 +0200)
committerStefano Babic <sbabic@denx.de>
Mon, 25 Jul 2022 14:12:01 +0000 (16:12 +0200)
Synchronise device tree with linux v5.19-rc5.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
arch/arm/dts/imx8mq-evk.dts
arch/arm/dts/imx8mq-kontron-pitx-imx8m.dts
arch/arm/dts/imx8mq-mnt-reform2.dts
arch/arm/dts/imx8mq-nitrogen-som.dtsi
arch/arm/dts/imx8mq-phanbell.dts
arch/arm/dts/imx8mq-pico-pi-u-boot.dtsi
arch/arm/dts/imx8mq-pico-pi.dts
arch/arm/dts/imx8mq.dtsi
include/dt-bindings/clock/imx8mq-clock.h
include/dt-bindings/power/imx8mq-power.h

index 85b045253a0ec3d0d712dea251630b6a3868337e..99fed35168ebc93ba00b785767219d015ec51677 100644 (file)
                clock-frequency = <100000000>;
        };
 
+       reg_pcie1: regulator-pcie {
+               compatible = "regulator-fixed";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_pcie1_reg>;
+               regulator-name = "MPCIE_3V3";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               gpio = <&gpio5 10 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
+
        reg_usdhc2_vmmc: regulator-vsd-3v3 {
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_reg_usdhc2>;
 
 &ddrc {
        operating-points-v2 = <&ddrc_opp_table>;
+       status = "okay";
 
        ddrc_opp_table: opp-table {
                compatible = "operating-points-v2";
                        reg = <0>;
                        reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
                        reset-assert-us = <10000>;
+                       qca,disable-smarteee;
+                       vddio-supply = <&vddh>;
+
+                       vddh: vddh-regulator {
+                       };
                };
        };
 };
                 <&clk IMX8MQ_CLK_PCIE1_PHY>,
                 <&pcie0_refclk>;
        clock-names = "pcie", "pcie_aux", "pcie_phy", "pcie_bus";
+       vph-supply = <&vgen5_reg>;
+       status = "okay";
+};
+
+&pcie1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_pcie1>;
+       reset-gpio = <&gpio5 12 GPIO_ACTIVE_LOW>;
+       clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>,
+                <&clk IMX8MQ_CLK_PCIE2_AUX>,
+                <&clk IMX8MQ_CLK_PCIE2_PHY>,
+                <&pcie0_refclk>;
+       clock-names = "pcie", "pcie_aux", "pcie_phy", "pcie_bus";
+       vpcie-supply = <&reg_pcie1>;
+       vph-supply = <&vgen5_reg>;
        status = "okay";
 };
 
        power-supply = <&sw1a_reg>;
 };
 
+&pgc_vpu {
+       power-supply = <&sw1c_reg>;
+};
+
 &qspi0 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_qspi>;
                #size-cells = <1>;
                compatible = "micron,n25q256a", "jedec,spi-nor";
                spi-max-frequency = <29000000>;
+               spi-tx-bus-width = <1>;
+               spi-rx-bus-width = <4>;
        };
 };
 
        assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>;
        assigned-clock-rates = <200000000>;
        pinctrl-names = "default", "state_100mhz", "state_200mhz";
-       pinctrl-0 = <&pinctrl_usdhc2>;
-       pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
-       pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
+       pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
+       pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
+       pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
        cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
        vmmc-supply = <&reg_usdhc2_vmmc>;
        status = "okay";
                fsl,pins = <
                        MX8MQ_IOMUXC_GPIO1_IO13_GPIO1_IO13              0x19
                >;
-
        };
 
        pinctrl_fec1: fec1grp {
                >;
        };
 
+       pinctrl_pcie1: pcie1grp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_I2C4_SDA_PCIE2_CLKREQ_B            0x76
+                       MX8MQ_IOMUXC_ECSPI2_MISO_GPIO5_IO12             0x16
+               >;
+       };
+
+       pinctrl_pcie1_reg: pcie1reggrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_ECSPI2_SCLK_GPIO5_IO10             0x16
+               >;
+       };
+
        pinctrl_qspi: qspigrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_NAND_ALE_QSPI_A_SCLK       0x82
                        MX8MQ_IOMUXC_NAND_DATA01_QSPI_A_DATA1   0x82
                        MX8MQ_IOMUXC_NAND_DATA02_QSPI_A_DATA2   0x82
                        MX8MQ_IOMUXC_NAND_DATA03_QSPI_A_DATA3   0x82
-
                >;
        };
 
                >;
        };
 
+       pinctrl_usdhc2_gpio: usdhc2gpiogrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12                0x41
+               >;
+       };
+
        pinctrl_usdhc2: usdhc2grp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x83
index e8fbf0ec6d68f576f96273a0966c151a8b39ede0..a91c136797f60d6766fb223bbb2f7cd8374ce417 100644 (file)
@@ -51,6 +51,7 @@
                regulator-min-microvolt = <3300000>;
                regulator-max-microvolt = <3300000>;
                gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
+               off-on-delay-us = <20000>;
                enable-active-high;
        };
 };
 &uart3 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_uart3>;
-       fsl,uart-has-rtscts;
+       uart-has-rtscts;
        assigned-clocks = <&clk IMX8MQ_CLK_UART3>;
        assigned-clock-parents = <&clk IMX8MQ_SYS1_PLL_80M>;
        status = "okay";
index 4f2db6197b392bafc1cfe5eae33d85a6172fb9f4..055031bba8c4b4a0095549081db3e1d3db2de29a 100644 (file)
 / {
        model = "MNT Reform 2";
        compatible = "mntre,reform2", "boundary,imx8mq-nitrogen8m-som", "fsl,imx8mq";
+       chassis-type = "laptop";
+
+       backlight: backlight {
+               compatible = "pwm-backlight";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_backlight>;
+               pwms = <&pwm2 0 10000 0>;
+               power-supply = <&reg_main_usb>;
+               enable-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
+               brightness-levels = <0 32 64 128 160 200 255>;
+               default-brightness-level = <6>;
+       };
+
+       panel {
+               compatible = "innolux,n125hce-gn1", "simple-panel";
+               power-supply = <&reg_main_3v3>;
+               backlight = <&backlight>;
+               no-hpd;
+
+               port {
+                       panel_in: endpoint {
+                               remote-endpoint = <&edp_bridge_out>;
+                       };
+               };
+       };
 
        pcie1_refclk: clock-pcie1-refclk {
                compatible = "fixed-clock";
                vin-supply = <&reg_main_5v>;
        };
 
+       reg_main_1v8: regulator-main-1v8 {
+               compatible = "regulator-fixed";
+               regulator-name = "1V8";
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+               vin-supply = <&reg_main_3v3>;
+       };
+
+       reg_main_1v2: regulator-main-1v2 {
+               compatible = "regulator-fixed";
+               regulator-name = "1V2";
+               regulator-min-microvolt = <1200000>;
+               regulator-max-microvolt = <1200000>;
+               vin-supply = <&reg_main_5v>;
+       };
+
        sound {
                compatible = "fsl,imx-audio-wm8960";
                audio-cpu = <&sai2>;
        };
 };
 
+&dphy {
+       assigned-clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
+       assigned-clock-parents = <&clk IMX8MQ_SYS1_PLL_800M>;
+       assigned-clock-rates = <25000000>;
+       status = "okay";
+};
+
 &fec1 {
        status = "okay";
 };
        };
 };
 
+&i2c4 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_i2c4>;
+       clock-frequency = <400000>;
+       status = "okay";
+
+       edp_bridge: bridge@2c {
+               compatible = "ti,sn65dsi86";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_edp_bridge>;
+               reg = <0x2c>;
+               enable-gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
+               vccio-supply = <&reg_main_1v8>;
+               vpll-supply = <&reg_main_1v8>;
+               vcca-supply = <&reg_main_1v2>;
+               vcc-supply = <&reg_main_1v2>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+
+                               edp_bridge_in: endpoint {
+                                       remote-endpoint = <&mipi_dsi_out>;
+                               };
+                       };
+
+                       port@1 {
+                               reg = <1>;
+
+                               edp_bridge_out: endpoint {
+                                       remote-endpoint = <&panel_in>;
+                               };
+                       };
+               };
+       };
+};
+
+&lcdif {
+       assigned-clocks = <&clk IMX8MQ_CLK_LCDIF_PIXEL>;
+       assigned-clock-parents = <&clk IMX8MQ_SYS1_PLL_800M>;
+       /delete-property/assigned-clock-rates;
+       status = "okay";
+};
+
+&mipi_dsi {
+       status = "okay";
+
+       ports {
+               port@1 {
+                       reg = <1>;
+
+                       mipi_dsi_out: endpoint {
+                               remote-endpoint = <&edp_bridge_in>;
+                       };
+               };
+       };
+};
+
 &pcie1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_pcie1>;
        status = "okay";
 };
 
+&pwm2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_pwm2>;
+       status = "okay";
+};
+
 &reg_1p8v {
        vin-supply = <&reg_main_5v>;
 };
 };
 
 &iomuxc {
+       pinctrl_backlight: backlightgrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_GPIO1_IO10_GPIO1_IO10              0x3
+               >;
+       };
+
+       pinctrl_edp_bridge: edpbridgegrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20                0x1
+               >;
+       };
+
        pinctrl_i2c3: i2c3grp {
                fsl,pins = <
-                       MX8MQ_IOMUXC_I2C3_SCL_I2C3_SCL                  0x4000007f
-                       MX8MQ_IOMUXC_I2C3_SDA_I2C3_SDA                  0x4000007f
+                       MX8MQ_IOMUXC_I2C3_SCL_I2C3_SCL                  0x40000022
+                       MX8MQ_IOMUXC_I2C3_SDA_I2C3_SDA                  0x40000022
+               >;
+       };
+
+       pinctrl_i2c4: i2c4grp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_I2C4_SCL_I2C4_SCL                  0x40000022
+                       MX8MQ_IOMUXC_I2C4_SDA_I2C4_SDA                  0x40000022
                >;
        };
 
                >;
        };
 
+       pinctrl_pwm2: pwm2grp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_SPDIF_RX_PWM2_OUT                  0x3
+               >;
+       };
+
        pinctrl_sai2: sai2grp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0            0xd6
index 36fc428ebe30008727104a4fe6e840a7098a055e..395f77b5aca7c843356b3207699b2c77c4445a52 100644 (file)
@@ -69,6 +69,9 @@
                        reg = <4>;
                        interrupt-parent = <&gpio1>;
                        interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
+                       reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
+                       reset-assert-us = <10000>;
+                       reset-deassert-us = <300>;
                };
        };
 };
                        MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2           0x1f
                        MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3           0x1f
                        MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL     0x91
-                       MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC           0x91
+                       MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC           0xd1
                        MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0           0x91
                        MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1           0x91
                        MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2           0x91
-                       MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3           0x91
-                       MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9               0x19
-                       MX8MQ_IOMUXC_GPIO1_IO11_GPIO1_IO11              0x59
+                       MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3           0xd1
+                       MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9               0x1
+                       MX8MQ_IOMUXC_GPIO1_IO11_GPIO1_IO11              0x41
                >;
        };
 
        pinctrl_i2c1: i2c1grp {
                fsl,pins = <
-                       MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL                  0x4000007f
-                       MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA                  0x4000007f
+                       MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL                  0x40000022
+                       MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA                  0x40000022
                >;
        };
 
index 4892ad5ee1c06a8b9bbfb8063507f9206a9c87a6..a3b9d615a3b4076b8b346af41342d7b8b524d6d8 100644 (file)
@@ -1,11 +1,12 @@
 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
 /*
- * Copyright 2020 NXP
+ * Copyright 2017-2019 NXP
  */
 
 /dts-v1/;
 
 #include "imx8mq.dtsi"
+#include <dt-bindings/interrupt-controller/irq.h>
 
 / {
        model = "Google i.MX8MQ Phanbell";
                gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
                enable-active-high;
        };
+
+       fan: gpio-fan {
+               compatible = "gpio-fan";
+               gpio-fan,speed-map = <0 0 8600 1>;
+               gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
+               #cooling-cells = <2>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_gpio_fan>;
+               status = "okay";
+       };
 };
 
 &A53_0 {
        cpu-supply = <&buck2>;
 };
 
+&cpu_thermal {
+       trips {
+               cpu_alert0: trip0 {
+                       temperature = <75000>;
+                       hysteresis = <2000>;
+                       type = "passive";
+               };
+
+               cpu_alert1: trip1 {
+                       temperature = <80000>;
+                       hysteresis = <2000>;
+                       type = "passive";
+               };
+
+               cpu_crit0: trip3 {
+                       temperature = <90000>;
+                       hysteresis = <2000>;
+                       type = "critical";
+               };
+
+               fan_toggle0: trip4 {
+                       temperature = <65000>;
+                       hysteresis = <10000>;
+                       type = "active";
+               };
+       };
+
+       cooling-maps {
+               map0 {
+                       trip = <&cpu_alert0>;
+                       cooling-device =
+                       <&A53_0 0 1>; /* Exclude highest OPP */
+               };
+
+               map1 {
+                       trip = <&cpu_alert1>;
+                       cooling-device =
+                       <&A53_0 0 2>; /* Exclude two highest OPPs */
+               };
+
+               map4 {
+                       trip = <&fan_toggle0>;
+                       cooling-device = <&fan 0 1>;
+               };
+       };
+};
+
 &i2c1 {
        clock-frequency = <400000>;
        pinctrl-names = "default";
                clocks = <&pmic_osc>;
                clock-output-names = "pmic_clk";
                interrupt-parent = <&gpio1>;
-               interrupts = <3 GPIO_ACTIVE_LOW>;
+               interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
 
                regulators {
                        buck1: BUCK1 {
        pinctrl-0 = <&pinctrl_fec1>;
        phy-mode = "rgmii-id";
        phy-handle = <&ethphy0>;
-       phy-reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
-       phy-reset-duration = <10>;
-       phy-reset-post-delay = <50>;
        fsl,magic-packet;
        status = "okay";
 
                ethphy0: ethernet-phy@0 {
                        compatible = "ethernet-phy-ieee802.3-c22";
                        reg = <0>;
+                       reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
+                       reset-assert-us = <10000>;
+                       reset-deassert-us = <50000>;
                };
        };
 };
                >;
        };
 
+       pinctrl_gpio_fan: gpiofangrp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_NAND_CLE_GPIO3_IO5                 0x16
+               >;
+       };
+
        pinctrl_i2c1: i2c1grp {
                fsl,pins = <
                        MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL                  0x4000007f
                >;
        };
 
-       pinctrl_pmic: pmicirq {
+       pinctrl_pmic: pmicirqgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3       0x41
                >;
                >;
        };
 
-       pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
+       pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x85
                        MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc5
                >;
        };
 
-       pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
+       pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x87
                        MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc7
                >;
        };
 
-       pinctrl_usdhc2_gpio: usdhc2grpgpio {
+       pinctrl_usdhc2_gpio: usdhc2gpiogrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12        0x41
                        MX8MQ_IOMUXC_SD2_RESET_B_GPIO2_IO19     0x41
                >;
        };
 
-       pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
+       pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x85
                        MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc5
                >;
        };
 
-       pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
+       pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x87
                        MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc7
index 9537aedf29eb4107f0a15bf20e50f7d0e76aed3c..7efd82214ddc502bd4a33def8b2100a26482a178 100644 (file)
@@ -1,5 +1,7 @@
 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
 
+#include "imx8mq-u-boot.dtsi"
+
 &pinctrl_uart1 {
        u-boot,dm-spl;
 };
index 8ed6e9166b90b1139576291f26ffc7b0d6d64767..89cbec5c41b2176b80c6f73368f3e445bdd48967 100644 (file)
@@ -9,7 +9,7 @@
 /dts-v1/;
 
 #include "imx8mq.dtsi"
-#include "imx8mq-u-boot.dtsi"
+#include <dt-bindings/interrupt-controller/irq.h>
 
 / {
        model = "TechNexion PICO-PI-8M";
                regulator-max-microvolt = <5000000>;
                gpio = <&gpio3 14 GPIO_ACTIVE_LOW>;
        };
-
-       reg_eth_phy: eth_phy {
-               compatible = "regulator-fixed";
-               regulator-name = "eth_phy_pwr";
-               regulator-min-microvolt = <3300000>;
-               regulator-max-microvolt = <3300000>;
-               gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
-       };
 };
 
 &fec1 {
        pinctrl-names = "default";
-       pinctrl-0 = <&pinctrl_fec1>;
+       pinctrl-0 = <&pinctrl_fec1 &pinctrl_enet_3v3>;
        phy-mode = "rgmii-id";
        phy-handle = <&ethphy0>;
-       phy-supply = <&reg_eth_phy>;
-       phy-reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
-       phy-reset-duration = <100>;
-       phy-reset-post-delay = <100>;
        fsl,magic-packet;
        status = "okay";
 
@@ -83,7 +71,7 @@
                clock-names = "osc";
                clock-output-names = "pmic_clk";
                interrupt-parent = <&gpio1>;
-               interrupts = <3 GPIO_ACTIVE_LOW>;
+               interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
                interrupt-names = "irq";
 
                regulators {
 };
 
 &usdhc1 {
+       assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>;
+       assigned-clock-rates = <400000000>;
        pinctrl-names = "default", "state_100mhz", "state_200mhz";
        pinctrl-0 = <&pinctrl_usdhc1>;
        pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
 };
 
 &usdhc2 {
+       assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>;
+       assigned-clock-rates = <200000000>;
        pinctrl-names = "default", "state_100mhz", "state_200mhz";
        pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
        pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
 };
 
 &iomuxc {
+       pinctrl_enet_3v3: enet3v3grp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_GPIO1_IO00_GPIO1_IO0       0x19
+               >;
+       };
+
        pinctrl_fec1: fec1grp {
                fsl,pins = <
-                       MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC                 0x3
-                       MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO               0x23
-                       MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3           0x1f
-                       MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2           0x1f
-                       MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1           0x1f
-                       MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0           0x1f
-                       MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3           0x91
-                       MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2           0x91
-                       MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1           0x91
-                       MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0           0x91
-                       MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC           0x1f
-                       MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC           0x91
+                       MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC         0x3
+                       MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO       0x23
+                       MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3   0x1f
+                       MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2   0x1f
+                       MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1   0x1f
+                       MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0   0x1f
+                       MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3   0x91
+                       MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2   0x91
+                       MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1   0x91
+                       MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0   0x91
+                       MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC   0x1f
+                       MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC   0x91
                        MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL     0x91
                        MX8MQ_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL     0x1f
-                       MX8MQ_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x19
-                       MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9               0x19
+                       MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9       0x19
                >;
        };
 
                >;
        };
 
-       pinctrl_pmic: pmicirq {
+       pinctrl_pmic: pmicirqgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3       0x41
                >;
                >;
        };
 
-       pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
+       pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x85
                        MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc5
                >;
        };
 
-       pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
+       pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x87
                        MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc7
                >;
        };
 
-       pinctrl_usdhc2_gpio: usdhc2grpgpio {
+       pinctrl_usdhc2_gpio: usdhc2gpiogrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12        0x41
                >;
                >;
        };
 
-       pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
+       pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x85
                        MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc5
                >;
        };
 
-       pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
+       pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x87
                        MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc7
index 71bf497f99c251fcc1723b172c5af47e1b23d3ff..49eadb081b19860eec1d33292c255f37ecf9f48d 100644 (file)
                clock-output-names = "osc_27m";
        };
 
+       hdmi_phy_27m: clock-hdmi-phy-27m {
+               compatible = "fixed-clock";
+               #clock-cells = <0>;
+               clock-frequency = <27000000>;
+               clock-output-names = "hdmi_phy_27m";
+       };
+
        clk_ext1: clock-ext1 {
                compatible = "fixed-clock";
                #clock-cells = <0>;
                        clock-latency = <61036>; /* two CLK32 periods */
                        clocks = <&clk IMX8MQ_CLK_ARM>;
                        enable-method = "psci";
+                       i-cache-size = <0x8000>;
+                       i-cache-line-size = <64>;
+                       i-cache-sets = <256>;
+                       d-cache-size = <0x8000>;
+                       d-cache-line-size = <64>;
+                       d-cache-sets = <128>;
                        next-level-cache = <&A53_L2>;
                        operating-points-v2 = <&a53_opp_table>;
                        #cooling-cells = <2>;
                        clock-latency = <61036>; /* two CLK32 periods */
                        clocks = <&clk IMX8MQ_CLK_ARM>;
                        enable-method = "psci";
+                       i-cache-size = <0x8000>;
+                       i-cache-line-size = <64>;
+                       i-cache-sets = <256>;
+                       d-cache-size = <0x8000>;
+                       d-cache-line-size = <64>;
+                       d-cache-sets = <128>;
                        next-level-cache = <&A53_L2>;
                        operating-points-v2 = <&a53_opp_table>;
                        #cooling-cells = <2>;
                        clock-latency = <61036>; /* two CLK32 periods */
                        clocks = <&clk IMX8MQ_CLK_ARM>;
                        enable-method = "psci";
+                       i-cache-size = <0x8000>;
+                       i-cache-line-size = <64>;
+                       i-cache-sets = <256>;
+                       d-cache-size = <0x8000>;
+                       d-cache-line-size = <64>;
+                       d-cache-sets = <128>;
                        next-level-cache = <&A53_L2>;
                        operating-points-v2 = <&a53_opp_table>;
                        #cooling-cells = <2>;
                        clock-latency = <61036>; /* two CLK32 periods */
                        clocks = <&clk IMX8MQ_CLK_ARM>;
                        enable-method = "psci";
+                       i-cache-size = <0x8000>;
+                       i-cache-line-size = <64>;
+                       i-cache-sets = <256>;
+                       d-cache-size = <0x8000>;
+                       d-cache-line-size = <64>;
+                       d-cache-sets = <128>;
                        next-level-cache = <&A53_L2>;
                        operating-points-v2 = <&a53_opp_table>;
                        #cooling-cells = <2>;
 
                A53_L2: l2-cache0 {
                        compatible = "cache";
+                       cache-level = <2>;
+                       cache-size = <0x100000>;
+                       cache-line-size = <64>;
+                       cache-sets = <1024>;
                };
        };
 
                                clocks = <&clk IMX8MQ_CLK_TMU_ROOT>;
                                little-endian;
                                fsl,tmu-range = <0xb0000 0xa0026 0x80048 0x70061>;
-                               fsl,tmu-calibration = <0x00000000 0x00000023
-                                                      0x00000001 0x00000029
-                                                      0x00000002 0x0000002f
-                                                      0x00000003 0x00000035
-                                                      0x00000004 0x0000003d
-                                                      0x00000005 0x00000043
-                                                      0x00000006 0x0000004b
-                                                      0x00000007 0x00000051
-                                                      0x00000008 0x00000057
-                                                      0x00000009 0x0000005f
-                                                      0x0000000a 0x00000067
-                                                      0x0000000b 0x0000006f
-
-                                                      0x00010000 0x0000001b
-                                                      0x00010001 0x00000023
-                                                      0x00010002 0x0000002b
-                                                      0x00010003 0x00000033
-                                                      0x00010004 0x0000003b
-                                                      0x00010005 0x00000043
-                                                      0x00010006 0x0000004b
-                                                      0x00010007 0x00000055
-                                                      0x00010008 0x0000005d
-                                                      0x00010009 0x00000067
-                                                      0x0001000a 0x00000070
-
-                                                      0x00020000 0x00000017
-                                                      0x00020001 0x00000023
-                                                      0x00020002 0x0000002d
-                                                      0x00020003 0x00000037
-                                                      0x00020004 0x00000041
-                                                      0x00020005 0x0000004b
-                                                      0x00020006 0x00000057
-                                                      0x00020007 0x00000063
-                                                      0x00020008 0x0000006f
-
-                                                      0x00030000 0x00000015
-                                                      0x00030001 0x00000021
-                                                      0x00030002 0x0000002d
-                                                      0x00030003 0x00000039
-                                                      0x00030004 0x00000045
-                                                      0x00030005 0x00000053
-                                                      0x00030006 0x0000005f
-                                                      0x00030007 0x00000071>;
+                               fsl,tmu-calibration = <0x00000000 0x00000023>,
+                                                     <0x00000001 0x00000029>,
+                                                     <0x00000002 0x0000002f>,
+                                                     <0x00000003 0x00000035>,
+                                                     <0x00000004 0x0000003d>,
+                                                     <0x00000005 0x00000043>,
+                                                     <0x00000006 0x0000004b>,
+                                                     <0x00000007 0x00000051>,
+                                                     <0x00000008 0x00000057>,
+                                                     <0x00000009 0x0000005f>,
+                                                     <0x0000000a 0x00000067>,
+                                                     <0x0000000b 0x0000006f>,
+
+                                                     <0x00010000 0x0000001b>,
+                                                     <0x00010001 0x00000023>,
+                                                     <0x00010002 0x0000002b>,
+                                                     <0x00010003 0x00000033>,
+                                                     <0x00010004 0x0000003b>,
+                                                     <0x00010005 0x00000043>,
+                                                     <0x00010006 0x0000004b>,
+                                                     <0x00010007 0x00000055>,
+                                                     <0x00010008 0x0000005d>,
+                                                     <0x00010009 0x00000067>,
+                                                     <0x0001000a 0x00000070>,
+
+                                                     <0x00020000 0x00000017>,
+                                                     <0x00020001 0x00000023>,
+                                                     <0x00020002 0x0000002d>,
+                                                     <0x00020003 0x00000037>,
+                                                     <0x00020004 0x00000041>,
+                                                     <0x00020005 0x0000004b>,
+                                                     <0x00020006 0x00000057>,
+                                                     <0x00020007 0x00000063>,
+                                                     <0x00020008 0x0000006f>,
+
+                                                     <0x00030000 0x00000015>,
+                                                     <0x00030001 0x00000021>,
+                                                     <0x00030002 0x0000002d>,
+                                                     <0x00030003 0x00000039>,
+                                                     <0x00030004 0x00000045>,
+                                                     <0x00030005 0x00000053>,
+                                                     <0x00030006 0x0000005f>,
+                                                     <0x00030007 0x00000071>;
                                #thermal-sensor-cells =  <1>;
                        };
 
                                assigned-clock-rates = <0>, <0>, <0>, <594000000>;
                                status = "disabled";
 
-                               port@0 {
+                               port {
                                        lcdif_mipi_dsi: endpoint {
                                                remote-endpoint = <&mipi_dsi_lcdif_in>;
                                        };
                                        pgc_vpu: power-domain@6 {
                                                #power-domain-cells = <0>;
                                                reg = <IMX8M_POWER_DOMAIN_VPU>;
-                                               clocks = <&clk IMX8MQ_CLK_VPU_DEC_ROOT>;
+                                               clocks = <&clk IMX8MQ_CLK_VPU_DEC_ROOT>,
+                                                        <&clk IMX8MQ_CLK_VPU_G1_ROOT>,
+                                                        <&clk IMX8MQ_CLK_VPU_G2_ROOT>;
+                                               assigned-clocks = <&clk IMX8MQ_CLK_VPU_G1>,
+                                                                 <&clk IMX8MQ_CLK_VPU_G2>,
+                                                                 <&clk IMX8MQ_CLK_VPU_BUS>,
+                                                                 <&clk IMX8MQ_VPU_PLL_BYPASS>;
+                                               assigned-clock-parents = <&clk IMX8MQ_VPU_PLL_OUT>,
+                                                                        <&clk IMX8MQ_VPU_PLL_OUT>,
+                                                                        <&clk IMX8MQ_SYS1_PLL_800M>,
+                                                                        <&clk IMX8MQ_VPU_PLL>;
+                                               assigned-clock-rates = <600000000>,
+                                                                      <600000000>,
+                                                                      <800000000>,
+                                                                      <0>;
                                        };
 
                                        pgc_disp: power-domain@7 {
                                clocks = <&clk IMX8MQ_CLK_PWM1_ROOT>,
                                         <&clk IMX8MQ_CLK_PWM1_ROOT>;
                                clock-names = "ipg", "per";
-                               #pwm-cells = <2>;
+                               #pwm-cells = <3>;
                                status = "disabled";
                        };
 
                                clocks = <&clk IMX8MQ_CLK_PWM2_ROOT>,
                                         <&clk IMX8MQ_CLK_PWM2_ROOT>;
                                clock-names = "ipg", "per";
-                               #pwm-cells = <2>;
+                               #pwm-cells = <3>;
                                status = "disabled";
                        };
 
                                clocks = <&clk IMX8MQ_CLK_PWM3_ROOT>,
                                         <&clk IMX8MQ_CLK_PWM3_ROOT>;
                                clock-names = "ipg", "per";
-                               #pwm-cells = <2>;
+                               #pwm-cells = <3>;
                                status = "disabled";
                        };
 
                                clocks = <&clk IMX8MQ_CLK_PWM4_ROOT>,
                                         <&clk IMX8MQ_CLK_PWM4_ROOT>;
                                clock-names = "ipg", "per";
-                               #pwm-cells = <2>;
+                               #pwm-cells = <3>;
                                status = "disabled";
                        };
 
                                        #address-cells = <1>;
                                        #size-cells = <0>;
 
-                                       port@0 {
-                                               reg = <0>;
+                                       port@1 {
+                                               reg = <1>;
 
                                                csi1_mipi_ep: endpoint {
                                                        remote-endpoint = <&csi1_ep>;
                                        #address-cells = <1>;
                                        #size-cells = <0>;
 
-                                       port@0 {
-                                               reg = <0>;
+                                       port@1 {
+                                               reg = <1>;
 
                                                csi2_mipi_ep: endpoint {
                                                        remote-endpoint = <&csi2_ep>;
                                fsl,num-rx-queues = <3>;
                                nvmem-cells = <&fec_mac_address>;
                                nvmem-cell-names = "mac-address";
-                               nvmem_macaddr_swap;
                                fsl,stop-mode = <&iomuxc_gpr 0x10 3>;
                                status = "disabled";
                        };
                        status = "disabled";
                };
 
-               vpu: video-codec@38300000 {
-                       compatible = "nxp,imx8mq-vpu";
-                       reg = <0x38300000 0x10000>,
-                             <0x38310000 0x10000>,
-                             <0x38320000 0x10000>;
-                       reg-names = "g1", "g2", "ctrl";
-                       interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
-                                    <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
-                       interrupt-names = "g1", "g2";
+               vpu_g1: video-codec@38300000 {
+                       compatible = "nxp,imx8mq-vpu-g1";
+                       reg = <0x38300000 0x10000>;
+                       interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
+                       clocks = <&clk IMX8MQ_CLK_VPU_G1_ROOT>;
+                       power-domains = <&vpu_blk_ctrl IMX8MQ_VPUBLK_PD_G1>;
+               };
+
+               vpu_g2: video-codec@38310000 {
+                       compatible = "nxp,imx8mq-vpu-g2";
+                       reg = <0x38310000 0x10000>;
+                       interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
+                       clocks = <&clk IMX8MQ_CLK_VPU_G2_ROOT>;
+                       power-domains = <&vpu_blk_ctrl IMX8MQ_VPUBLK_PD_G2>;
+               };
+
+               vpu_blk_ctrl: blk-ctrl@38320000 {
+                       compatible = "fsl,imx8mq-vpu-blk-ctrl";
+                       reg = <0x38320000 0x100>;
+                       power-domains = <&pgc_vpu>, <&pgc_vpu>, <&pgc_vpu>;
+                       power-domain-names = "bus", "g1", "g2";
                        clocks = <&clk IMX8MQ_CLK_VPU_G1_ROOT>,
-                                <&clk IMX8MQ_CLK_VPU_G2_ROOT>,
-                                <&clk IMX8MQ_CLK_VPU_DEC_ROOT>;
-                       clock-names = "g1", "g2", "bus";
-                       assigned-clocks = <&clk IMX8MQ_CLK_VPU_G1>,
-                                         <&clk IMX8MQ_CLK_VPU_G2>,
-                                         <&clk IMX8MQ_CLK_VPU_BUS>,
-                                         <&clk IMX8MQ_VPU_PLL_BYPASS>;
-                       assigned-clock-parents = <&clk IMX8MQ_VPU_PLL_OUT>,
-                                                <&clk IMX8MQ_VPU_PLL_OUT>,
-                                                <&clk IMX8MQ_SYS1_PLL_800M>,
-                                                <&clk IMX8MQ_VPU_PLL>;
-                       assigned-clock-rates = <600000000>, <600000000>,
-                                              <800000000>, <0>;
-                       power-domains = <&pgc_vpu>;
+                                <&clk IMX8MQ_CLK_VPU_G2_ROOT>;
+                       clock-names = "g1", "g2";
+                       #power-domain-cells = <1>;
                };
 
                pcie0: pcie@33800000 {
                                 <&clk IMX8MQ_DRAM_PLL_OUT>,
                                 <&clk IMX8MQ_CLK_DRAM_ALT>,
                                 <&clk IMX8MQ_CLK_DRAM_APB>;
+                       status = "disabled";
                };
 
                ddr-pmu@3d800000 {
index 82e907ce7bdd3308e03471018aa498e4699b9871..afa74d7ba1009943f5b66875b448a38cbcde05c6 100644 (file)
 
 #define IMX8MQ_VIDEO2_PLL1_REF_SEL             266
 
-#define IMX8MQ_SYS1_PLL_40M_CG                 267
-#define IMX8MQ_SYS1_PLL_80M_CG                 268
-#define IMX8MQ_SYS1_PLL_100M_CG                        269
-#define IMX8MQ_SYS1_PLL_133M_CG                        270
-#define IMX8MQ_SYS1_PLL_160M_CG                        271
-#define IMX8MQ_SYS1_PLL_200M_CG                        272
-#define IMX8MQ_SYS1_PLL_266M_CG                        273
-#define IMX8MQ_SYS1_PLL_400M_CG                        274
-#define IMX8MQ_SYS1_PLL_800M_CG                        275
-#define IMX8MQ_SYS2_PLL_50M_CG                 276
-#define IMX8MQ_SYS2_PLL_100M_CG                        277
-#define IMX8MQ_SYS2_PLL_125M_CG                        278
-#define IMX8MQ_SYS2_PLL_166M_CG                        279
-#define IMX8MQ_SYS2_PLL_200M_CG                        280
-#define IMX8MQ_SYS2_PLL_250M_CG                        281
-#define IMX8MQ_SYS2_PLL_333M_CG                        282
-#define IMX8MQ_SYS2_PLL_500M_CG                        283
-#define IMX8MQ_SYS2_PLL_1000M_CG               284
-
 #define IMX8MQ_CLK_GPU_CORE                    285
 #define IMX8MQ_CLK_GPU_SHADER                  286
 #define IMX8MQ_CLK_M4_CORE                     287
index 8a513bd9166e61f2838dddead533021609941c2c..9f7d0f1e7c32f37356b631feb09c72bb026e95b4 100755 (executable)
@@ -18,4 +18,7 @@
 #define IMX8M_POWER_DOMAIN_MIPI_CSI2   9
 #define IMX8M_POWER_DOMAIN_PCIE2       10
 
+#define IMX8MQ_VPUBLK_PD_G1            0
+#define IMX8MQ_VPUBLK_PD_G2            1
+
 #endif