0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd
0004 */
0005
0006 /dts-v1/;
0007 #include "rk3328.dtsi"
0008
0009 / {
0010 model = "Rockchip RK3328 EVB";
0011 compatible = "rockchip,rk3328-evb", "rockchip,rk3328";
0012
0013 aliases {
0014 mmc0 = &sdmmc;
0015 mmc1 = &sdio;
0016 mmc2 = &emmc;
0017 };
0018
0019 chosen {
0020 stdout-path = "serial2:1500000n8";
0021 };
0022
0023 dc_12v: dc-12v {
0024 compatible = "regulator-fixed";
0025 regulator-name = "dc_12v";
0026 regulator-always-on;
0027 regulator-boot-on;
0028 regulator-min-microvolt = <12000000>;
0029 regulator-max-microvolt = <12000000>;
0030 };
0031
0032 sdio_pwrseq: sdio-pwrseq {
0033 compatible = "mmc-pwrseq-simple";
0034 pinctrl-names = "default";
0035 pinctrl-0 = <&wifi_enable_h>;
0036
0037 /*
0038 * On the module itself this is one of these (depending
0039 * on the actual card populated):
0040 * - SDIO_RESET_L_WL_REG_ON
0041 * - PDN (power down when low)
0042 */
0043 reset-gpios = <&gpio1 18 GPIO_ACTIVE_LOW>;
0044 };
0045
0046 vcc_sd: sdmmc-regulator {
0047 compatible = "regulator-fixed";
0048 gpio = <&gpio0 30 GPIO_ACTIVE_LOW>;
0049 pinctrl-names = "default";
0050 pinctrl-0 = <&sdmmc0m1_pin>;
0051 regulator-name = "vcc_sd";
0052 regulator-min-microvolt = <3300000>;
0053 regulator-max-microvolt = <3300000>;
0054 vin-supply = <&vcc_io>;
0055 };
0056
0057 vcc_sys: vcc-sys {
0058 compatible = "regulator-fixed";
0059 regulator-name = "vcc_sys";
0060 regulator-always-on;
0061 regulator-boot-on;
0062 regulator-min-microvolt = <5000000>;
0063 regulator-max-microvolt = <5000000>;
0064 vin-supply = <&dc_12v>;
0065 };
0066
0067 vcc_phy: vcc-phy-regulator {
0068 compatible = "regulator-fixed";
0069 regulator-name = "vcc_phy";
0070 regulator-always-on;
0071 regulator-boot-on;
0072 };
0073 };
0074
0075 &cpu0 {
0076 cpu-supply = <&vdd_arm>;
0077 };
0078
0079 &cpu1 {
0080 cpu-supply = <&vdd_arm>;
0081 };
0082
0083 &cpu2 {
0084 cpu-supply = <&vdd_arm>;
0085 };
0086
0087 &cpu3 {
0088 cpu-supply = <&vdd_arm>;
0089 };
0090
0091 &emmc {
0092 bus-width = <8>;
0093 cap-mmc-highspeed;
0094 non-removable;
0095 pinctrl-names = "default";
0096 pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
0097 status = "okay";
0098 };
0099
0100 &gmac2phy {
0101 phy-supply = <&vcc_phy>;
0102 clock_in_out = "output";
0103 assigned-clock-rate = <50000000>;
0104 assigned-clocks = <&cru SCLK_MAC2PHY>;
0105 assigned-clock-parents = <&cru SCLK_MAC2PHY_SRC>;
0106 status = "okay";
0107 };
0108
0109 &i2c1 {
0110 status = "okay";
0111
0112 rk805: pmic@18 {
0113 compatible = "rockchip,rk805";
0114 reg = <0x18>;
0115 interrupt-parent = <&gpio2>;
0116 interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
0117 #clock-cells = <1>;
0118 clock-output-names = "xin32k", "rk805-clkout2";
0119 gpio-controller;
0120 #gpio-cells = <2>;
0121 pinctrl-names = "default";
0122 pinctrl-0 = <&pmic_int_l>;
0123 rockchip,system-power-controller;
0124 wakeup-source;
0125
0126 vcc1-supply = <&vcc_sys>;
0127 vcc2-supply = <&vcc_sys>;
0128 vcc3-supply = <&vcc_sys>;
0129 vcc4-supply = <&vcc_sys>;
0130 vcc5-supply = <&vcc_io>;
0131 vcc6-supply = <&vcc_io>;
0132
0133 regulators {
0134 vdd_logic: DCDC_REG1 {
0135 regulator-name = "vdd_logic";
0136 regulator-min-microvolt = <712500>;
0137 regulator-max-microvolt = <1450000>;
0138 regulator-always-on;
0139 regulator-boot-on;
0140 regulator-state-mem {
0141 regulator-on-in-suspend;
0142 regulator-suspend-microvolt = <1000000>;
0143 };
0144 };
0145
0146 vdd_arm: DCDC_REG2 {
0147 regulator-name = "vdd_arm";
0148 regulator-min-microvolt = <712500>;
0149 regulator-max-microvolt = <1450000>;
0150 regulator-always-on;
0151 regulator-boot-on;
0152 regulator-state-mem {
0153 regulator-on-in-suspend;
0154 regulator-suspend-microvolt = <950000>;
0155 };
0156 };
0157
0158 vcc_ddr: DCDC_REG3 {
0159 regulator-name = "vcc_ddr";
0160 regulator-always-on;
0161 regulator-boot-on;
0162 regulator-state-mem {
0163 regulator-on-in-suspend;
0164 };
0165 };
0166
0167 vcc_io: DCDC_REG4 {
0168 regulator-name = "vcc_io";
0169 regulator-min-microvolt = <3300000>;
0170 regulator-max-microvolt = <3300000>;
0171 regulator-always-on;
0172 regulator-boot-on;
0173 regulator-state-mem {
0174 regulator-on-in-suspend;
0175 regulator-suspend-microvolt = <3300000>;
0176 };
0177 };
0178
0179 vcc_18: LDO_REG1 {
0180 regulator-name = "vcc_18";
0181 regulator-min-microvolt = <1800000>;
0182 regulator-max-microvolt = <1800000>;
0183 regulator-always-on;
0184 regulator-boot-on;
0185 regulator-state-mem {
0186 regulator-on-in-suspend;
0187 regulator-suspend-microvolt = <1800000>;
0188 };
0189 };
0190
0191 vcc18_emmc: LDO_REG2 {
0192 regulator-name = "vcc18_emmc";
0193 regulator-min-microvolt = <1800000>;
0194 regulator-max-microvolt = <1800000>;
0195 regulator-always-on;
0196 regulator-boot-on;
0197 regulator-state-mem {
0198 regulator-on-in-suspend;
0199 regulator-suspend-microvolt = <1800000>;
0200 };
0201 };
0202
0203 vdd_10: LDO_REG3 {
0204 regulator-name = "vdd_10";
0205 regulator-min-microvolt = <1000000>;
0206 regulator-max-microvolt = <1000000>;
0207 regulator-always-on;
0208 regulator-boot-on;
0209 regulator-state-mem {
0210 regulator-on-in-suspend;
0211 regulator-suspend-microvolt = <1000000>;
0212 };
0213 };
0214 };
0215 };
0216 };
0217
0218 &pinctrl {
0219 pmic {
0220 pmic_int_l: pmic-int-l {
0221 rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
0222 };
0223 };
0224
0225 sdio-pwrseq {
0226 wifi_enable_h: wifi-enable-h {
0227 rockchip,pins =
0228 <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
0229 };
0230 };
0231 };
0232
0233 &sdio {
0234 bus-width = <4>;
0235 cap-sd-highspeed;
0236 cap-sdio-irq;
0237 keep-power-in-suspend;
0238 max-frequency = <150000000>;
0239 mmc-pwrseq = <&sdio_pwrseq>;
0240 non-removable;
0241 pinctrl-names = "default";
0242 pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
0243 status = "okay";
0244 };
0245
0246 &sdmmc {
0247 bus-width = <4>;
0248 cap-mmc-highspeed;
0249 cap-sd-highspeed;
0250 disable-wp;
0251 max-frequency = <150000000>;
0252 pinctrl-names = "default";
0253 pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
0254 vmmc-supply = <&vcc_sd>;
0255 status = "okay";
0256 };
0257
0258 &tsadc {
0259 status = "okay";
0260 };
0261
0262 &uart2 {
0263 status = "okay";
0264 };
0265
0266 &u2phy {
0267 status = "okay";
0268 };
0269
0270 &u2phy_host {
0271 status = "okay";
0272 };
0273
0274 &u2phy_otg {
0275 status = "okay";
0276 };
0277
0278 &usb20_otg {
0279 status = "okay";
0280 };
0281
0282 &usb_host0_ehci {
0283 status = "okay";
0284 };
0285
0286 &usb_host0_ohci {
0287 status = "okay";
0288 };