]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - arch/arm/dts/rk3399-puma.dtsi
rockchip: dts: rk3399-puma: add /config/sysreset-gpio property
[people/ms/u-boot.git] / arch / arm / dts / rk3399-puma.dtsi
index a04878e223c007c1749e659a70f0be79fa6b281b..d2c961e31784d8bd8bb320407d3b84464a7e8ebd 100644 (file)
                u-boot,mmc-env-offset = <0x4000>;      /* @  16KB */
                u-boot,efi-partition-entries-offset = <0x200000>; /* 2MB */
                u-boot,boot-led = "module_led";
+               sysreset-gpio = <&gpio1 RK_PA6 GPIO_ACTIVE_HIGH>;
        };
 
        chosen {
                stdout-path = "serial0:115200n8";
-               u-boot,spl-boot-order = &spiflash, &sdhci, &sdmmc;
+               u-boot,spl-boot-order = \
+                       "same-as-spl", &spiflash, &sdhci, &sdmmc;
        };
 
        aliases {
 
                module_led {
                        label = "module_led";
-                       gpios = <&gpio2 25 GPIO_ACTIVE_HIGH>;
+                       gpios = <&gpio2 RK_PD1 GPIO_ACTIVE_HIGH>;
                        linux,default-trigger = "heartbeat";
                };
 
                sd_card_led {
                        label = "sd_card_led";
-                       gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
+                       gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>;
                        linux,default-trigger = "mmc0";
                };
        };
                compatible = "regulator-fixed";
                regulator-name = "usbhub_enable";
                enable-active-low;
-               gpio = <&gpio4 3 GPIO_ACTIVE_HIGH>;
-               regulator-always-on;
+               gpio = <&gpio4 RK_PA3 GPIO_ACTIVE_LOW>;
                regulator-boot-on;
                regulator-min-microvolt = <3300000>;
                regulator-max-microvolt = <3300000>;
        };
 
+       /*
+        * The Qseven BIOS_DISABLE signal on the RK3399-Q7 keeps the on-module
+        * eMMC and SPI flash powered-down initially (in fact it keeps the
+        * reset signal asserted).  Even though it is an enable signal, we
+        * model this as a regulator.
+        */
+       bios_enable: bios_enable {
+               compatible = "regulator-fixed";
+               u-boot,dm-pre-reloc;
+               regulator-name = "bios_enable";
+               enable-active-high;
+               gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>;
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+       };
+
        vccadc_ref: vccadc-ref {
                compatible = "regulator-fixed";
                regulator-name = "vcc1v8_sys";
        vcc5v0_otg: vcc5v0-otg-regulator {
                compatible = "regulator-fixed";
                enable-active-high;
-               gpio = <&gpio0 2 GPIO_ACTIVE_HIGH>;
+               gpio = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
                pinctrl-names = "default";
                pinctrl-0 = <&otg_vbus_drv>;
                regulator-name = "vcc5v0_otg";
        vcc5v0_host: vcc5v0-host-regulator {
                compatible = "regulator-fixed";
                enable-active-low;
-               gpio = <&gpio4 3 GPIO_ACTIVE_HIGH>;
+               gpio = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>;
                pinctrl-names = "default";
                pinctrl-0 = <&host_vbus_drv>;
                regulator-name = "vcc5v0_host";
        phy-supply = <&vcc_phy>;
        phy-mode = "rgmii";
        clock_in_out = "input";
-       snps,reset-gpio = <&gpio3 16 GPIO_ACTIVE_LOW>;
+       snps,reset-gpio = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>;
        snps,reset-active-low;
        snps,reset-delays-us = <2 10000 50000>;
        assigned-clocks = <&cru SCLK_RMII_SRC>;
        vdd_gpu: fan535555@60 {
                compatible = "fcs,fan53555";
                reg = <0x60>;
-               vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
+               vsel-gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_HIGH>;
                vin-supply = <&vcc5v0_sys>;
                regulator-compatible = "fan53555-reg";
                regulator-name = "vdd_gpu";
                                regulator-always-on;
                                regulator-boot-on;
                                regulator-min-microvolt = <1800000>;
-                               regulator-max-microvolt = <3300000>;
+                               regulator-max-microvolt = <3000000>;
                                regulator-name = "vcc_sd";
                                regulator-state-mem {
                                        regulator-on-in-suspend;
-                                       regulator-suspend-microvolt = <3300000>;
+                                       regulator-suspend-microvolt = <3000000>;
                                };
                        };
 
        vdd_cpu_b: fan53555@60 {
                compatible = "fcs,fan53555";
                reg = <0x60>;
-               vsel-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
+               vsel-gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
                vin-supply = <&vcc5v0_sys>;
                regulator-compatible = "fan53555-reg";
                regulator-name = "vdd_cpu_b";
        assigned-clocks = <&cru SCLK_PCIEPHY_REF>;
        assigned-clock-parents = <&cru SCLK_PCIEPHY_REF100M>;
        assigned-clock-rates = <100000000>;
-       ep-gpios = <&gpio4 22 GPIO_ACTIVE_HIGH>;
+       ep-gpios = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
        num-lanes = <4>;
        pinctrl-names = "default";
        pinctrl-0 = <&pcie_clkreqn>;
 };
 
 &pcie_phy {
-               status = "okay";
+               status = "okay";
 };
 
 &pmu_io_domains {
 };
 
 &sdmmc {
-        u-boot,dm-pre-reloc;
+       u-boot,dm-pre-reloc;
        clock-frequency = <150000000>;
        clock-freq-min-max = <100000 150000000>;
        supports-sd;
 };
 
 &usb_host0_ehci {
-       status = "okay";
+       status = "disabled";
 };
 
 &usb_host0_ohci {
-       status = "okay";
+       status = "disabled";
 };
 
 &dwc3_typec0 {
-       status = "disabled";
+       status = "okay";
 };
 
 &usb_host1_ehci {
-       status = "okay";
+       status = "disabled";
 };
 
 &usb_host1_ohci {
-       status = "okay";
+       status = "disabled";
 };
 
 &dwc3_typec1 {
        status = "okay";
+       tsd,usb-port-power = "usbhub_enable";
 };
 
 &vopb {
        status = "okay";
 };
 
+&gpio1 {
+       u-boot,dm-pre-reloc;
+};
+
+&gpio3 {
+       u-boot,dm-pre-reloc;
+};
+
 &pinctrl {
        /* Pins that are not explicitely used by any devices */
        pinctrl-names = "default";
        pinctrl-0 = <&puma_pin_hog>;
+
        hog {
                puma_pin_hog: puma_pin_hog {
                        rockchip,pins =
                                /* We need pull-ups on Q7 buttons */
-                               <0  4 RK_FUNC_GPIO &pcfg_pull_up>, /* LID_BTN# */
-                               <0 10 RK_FUNC_GPIO &pcfg_pull_up>, /* BATLOW# */
-                               <0 11 RK_FUNC_GPIO &pcfg_pull_up>, /* SLP_BTN# */
-                               <0  9 RK_FUNC_GPIO &pcfg_pull_up>; /* BIOS_DISABLE# */
+                               <RK_GPIO0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, /* LID_BTN# */
+                               <RK_GPIO0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>, /* BATLOW# */
+                               <RK_GPIO0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>, /* SLP_BTN# */
+                               <RK_GPIO0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>; /* BIOS_DISABLE# */
                };
        };
 
        pmic {
                pmic_int_l: pmic-int-l {
                        rockchip,pins =
-                               <1 22 RK_FUNC_GPIO &pcfg_pull_up>;
+                               <RK_GPIO1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
                };
        };
 
        leds_pins_puma: led_pins@0 {
                        rockchip,pins =
-                               <2 25 RK_FUNC_GPIO &pcfg_pull_none>,
-                               <2 RK_FUNC_GPIO &pcfg_pull_none>;
+                               <RK_GPIO2 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>,
+                               <RK_GPIO1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
        };
 
        usb2 {
                otg_vbus_drv: otg-vbus-drv {
                        rockchip,pins =
-                               <2 RK_FUNC_GPIO &pcfg_pull_none>;
+                               <RK_GPIO0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
                };
 
                host_vbus_drv: host-vbus-drv {
                        rockchip,pins =
-                               <0 2 RK_FUNC_GPIO &pcfg_pull_none>;
+                               <RK_GPIO4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
                };
        };
 
        i2c8 {
                i2c8_xfer_a: i2c8-xfer {
-                       rockchip,pins = <1 21 RK_FUNC_1 &pcfg_pull_up>,
-                                       <1 20 RK_FUNC_1 &pcfg_pull_up>;
+                       rockchip,pins =
+                               <RK_GPIO1 RK_PC5 RK_FUNC_1 &pcfg_pull_up>,
+                               <RK_GPIO1 RK_PC4 RK_FUNC_1 &pcfg_pull_up>;
                };
        };
 };
 &i2c6_xfer {
        /* Enable pull-ups, the pins would float otherwise. */
        rockchip,pins =
-               <2 10 RK_FUNC_2 &pcfg_pull_up>,
-               <2 9 RK_FUNC_2 &pcfg_pull_up>;
+               <RK_GPIO2 RK_PB2 RK_FUNC_2 &pcfg_pull_up>,
+               <RK_GPIO2 RK_PB1 RK_FUNC_2 &pcfg_pull_up>;
 };
 
 &i2c7 {
 &spi5 {
        status = "okay";
 };
-