0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002
0003 #include <dt-bindings/pwm/pwm.h>
0004 #include "rk3288.dtsi"
0005
0006 / {
0007 memory@0 {
0008 reg = <0x0 0x0 0x0 0x80000000>;
0009 device_type = "memory";
0010 };
0011
0012 emmc_pwrseq: emmc-pwrseq {
0013 compatible = "mmc-pwrseq-emmc";
0014 pinctrl-0 = <&emmc_reset>;
0015 pinctrl-names = "default";
0016 reset-gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>;
0017 };
0018
0019 ext_gmac: external-gmac-clock {
0020 compatible = "fixed-clock";
0021 #clock-cells = <0>;
0022 clock-frequency = <125000000>;
0023 clock-output-names = "ext_gmac";
0024 };
0025
0026 vcc_flash: flash-regulator {
0027 compatible = "regulator-fixed";
0028 regulator-name = "vcc_flash";
0029 regulator-min-microvolt = <1800000>;
0030 regulator-max-microvolt = <1800000>;
0031 startup-delay-us = <150>;
0032 vin-supply = <&vcc_io>;
0033 };
0034
0035 vcc_sys: vsys-regulator {
0036 compatible = "regulator-fixed";
0037 regulator-name = "vcc_sys";
0038 regulator-min-microvolt = <5000000>;
0039 regulator-max-microvolt = <5000000>;
0040 regulator-always-on;
0041 regulator-boot-on;
0042 };
0043 };
0044
0045 &cpu0 {
0046 cpu0-supply = <&vdd_cpu>;
0047 };
0048
0049 &emmc {
0050 bus-width = <8>;
0051 cap-mmc-highspeed;
0052 disable-wp;
0053 non-removable;
0054 mmc-pwrseq = <&emmc_pwrseq>;
0055 pinctrl-names = "default";
0056 pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
0057 vmmc-supply = <&vcc_io>;
0058 vqmmc-supply = <&vcc_flash>;
0059 status = "okay";
0060 };
0061
0062 &gmac {
0063 assigned-clocks = <&cru SCLK_MAC>;
0064 assigned-clock-parents = <&ext_gmac>;
0065 clock_in_out = "input";
0066 phy-mode = "rgmii";
0067 phy-supply = <&vccio_pmu>;
0068 pinctrl-names = "default";
0069 pinctrl-0 = <&rgmii_pins &phy_rst>;
0070 snps,reset-gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_LOW>;
0071 snps,reset-active-low;
0072 snps,reset-delays-us = <0 10000 30000>;
0073 rx_delay = <0x10>;
0074 tx_delay = <0x30>;
0075 };
0076
0077 &gpu {
0078 mali-supply = <&vdd_gpu>;
0079 status = "okay";
0080 };
0081
0082 &i2c0 {
0083 status = "okay";
0084
0085 act8846: act8846@5a {
0086 compatible = "active-semi,act8846";
0087 reg = <0x5a>;
0088 system-power-controller;
0089 inl1-supply = <&vcc_io>;
0090 inl2-supply = <&vcc_sys>;
0091 inl3-supply = <&vcc_20>;
0092 vp1-supply = <&vcc_sys>;
0093 vp2-supply = <&vcc_sys>;
0094 vp3-supply = <&vcc_sys>;
0095 vp4-supply = <&vcc_sys>;
0096
0097 regulators {
0098 vcc_ddr: REG1 {
0099 regulator-name = "VCC_DDR";
0100 regulator-min-microvolt = <1200000>;
0101 regulator-max-microvolt = <1200000>;
0102 regulator-always-on;
0103 };
0104
0105 vcc_io: vccio_codec: REG2 {
0106 regulator-name = "VCC_IO";
0107 regulator-min-microvolt = <3300000>;
0108 regulator-max-microvolt = <3300000>;
0109 regulator-always-on;
0110 };
0111
0112 vdd_log: REG3 {
0113 regulator-name = "VDD_LOG";
0114 regulator-min-microvolt = <1000000>;
0115 regulator-max-microvolt = <1000000>;
0116 regulator-always-on;
0117 };
0118
0119 vcc_20: REG4 {
0120 regulator-name = "VCC_20";
0121 regulator-min-microvolt = <2000000>;
0122 regulator-max-microvolt = <2000000>;
0123 regulator-always-on;
0124 };
0125
0126 vccio_sd: REG5 {
0127 regulator-name = "VCCIO_SD";
0128 regulator-min-microvolt = <3300000>;
0129 regulator-max-microvolt = <3300000>;
0130 regulator-always-on;
0131 };
0132
0133 vdd10_lcd: REG6 {
0134 regulator-name = "VDD10_LCD";
0135 regulator-min-microvolt = <1000000>;
0136 regulator-max-microvolt = <1000000>;
0137 regulator-always-on;
0138 };
0139
0140 vcca_codec: REG7 {
0141 regulator-name = "VCCA_CODEC";
0142 regulator-min-microvolt = <3300000>;
0143 regulator-max-microvolt = <3300000>;
0144 regulator-always-on;
0145 };
0146
0147 vcca_tp: REG8 {
0148 regulator-name = "VCCA_TP";
0149 regulator-min-microvolt = <3300000>;
0150 regulator-max-microvolt = <3300000>;
0151 regulator-always-on;
0152 };
0153
0154 vccio_pmu: REG9 {
0155 regulator-name = "VCCIO_PMU";
0156 regulator-min-microvolt = <3300000>;
0157 regulator-max-microvolt = <3300000>;
0158 regulator-always-on;
0159 };
0160
0161 vdd_10: REG10 {
0162 regulator-name = "VDD_10";
0163 regulator-min-microvolt = <1000000>;
0164 regulator-max-microvolt = <1000000>;
0165 regulator-always-on;
0166 };
0167
0168 vcc_18: REG11 {
0169 regulator-name = "VCC_18";
0170 regulator-min-microvolt = <1800000>;
0171 regulator-max-microvolt = <1800000>;
0172 regulator-always-on;
0173 };
0174
0175 vcc18_lcd: REG12 {
0176 regulator-name = "VCC18_LCD";
0177 regulator-min-microvolt = <1800000>;
0178 regulator-max-microvolt = <1800000>;
0179 regulator-always-on;
0180 };
0181 };
0182 };
0183
0184 vdd_cpu: syr827@40 {
0185 compatible = "silergy,syr827";
0186 reg = <0x40>;
0187 fcs,suspend-voltage-selector = <1>;
0188 regulator-always-on;
0189 regulator-boot-on;
0190 regulator-enable-ramp-delay = <300>;
0191 regulator-name = "vdd_cpu";
0192 regulator-min-microvolt = <850000>;
0193 regulator-max-microvolt = <1350000>;
0194 regulator-ramp-delay = <8000>;
0195 vin-supply = <&vcc_sys>;
0196 };
0197
0198 vdd_gpu: syr828@41 {
0199 compatible = "silergy,syr828";
0200 reg = <0x41>;
0201 fcs,suspend-voltage-selector = <1>;
0202 regulator-always-on;
0203 regulator-enable-ramp-delay = <300>;
0204 regulator-min-microvolt = <850000>;
0205 regulator-max-microvolt = <1350000>;
0206 regulator-name = "vdd_gpu";
0207 regulator-ramp-delay = <8000>;
0208 vin-supply = <&vcc_sys>;
0209 };
0210 };
0211
0212 &io_domains {
0213 status = "okay";
0214
0215 audio-supply = <&vcc_io>;
0216 bb-supply = <&vcc_io>;
0217 dvp-supply = <&vcc_18>;
0218 flash0-supply = <&vcc_flash>;
0219 flash1-supply = <&vccio_pmu>;
0220 gpio30-supply = <&vccio_pmu>;
0221 gpio1830-supply = <&vcc_io>;
0222 lcdc-supply = <&vcc_io>;
0223 sdcard-supply = <&vccio_sd>;
0224 wifi-supply = <&vcc_18>;
0225 };
0226
0227 &pinctrl {
0228 pcfg_output_high: pcfg-output-high {
0229 output-high;
0230 };
0231
0232 emmc {
0233 emmc_reset: emmc-reset {
0234 rockchip,pins = <3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
0235 };
0236 };
0237
0238 gmac {
0239 phy_rst: phy-rst {
0240 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_output_high>;
0241 };
0242 };
0243 };
0244
0245 &saradc {
0246 vref-supply = <&vcc_18>;
0247 };
0248
0249 &tsadc {
0250 rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */
0251 rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */
0252 status = "okay";
0253 };
0254
0255 &vopb {
0256 status = "okay";
0257 };
0258
0259 &vopb_mmu {
0260 status = "okay";
0261 };
0262
0263 &vopl {
0264 status = "okay";
0265 };
0266
0267 &vopl_mmu {
0268 status = "okay";
0269 };
0270
0271 &wdt {
0272 status = "okay";
0273 };