451 lines
		
	
	
		
			9.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			451 lines
		
	
	
		
			9.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| /*
 | |
|  * (C) Copyright 2017 Rockchip Electronics Co., Ltd
 | |
|  *
 | |
|  * SPDX-License-Identifier:     GPL-2.0+
 | |
|  */
 | |
| 
 | |
| /dts-v1/;
 | |
| #include "px30.dtsi"
 | |
| #include "px30-u-boot.dtsi"
 | |
| #include <dt-bindings/input/input.h>
 | |
| 
 | |
| / {
 | |
| 	model = "Rockchip PX30 EVB";
 | |
| 	compatible = "rockchip,px30-evb", "rockchip,px30";
 | |
| 
 | |
| 	adc-keys {
 | |
| 		u-boot,dm-pre-reloc;
 | |
| 		compatible = "adc-keys";
 | |
| 		io-channels = <&saradc 2>;
 | |
| 		io-channel-names = "buttons";
 | |
| 		keyup-threshold-microvolt = <1800000>;
 | |
| 
 | |
| 		vol-up-key {
 | |
| 			u-boot,dm-pre-reloc;
 | |
| 			linux,code = <KEY_VOLUMEUP>;
 | |
| 			label = "volume up";
 | |
| 			press-threshold-microvolt = <10000>;
 | |
| 		};
 | |
| 
 | |
| 		vol-down-key {
 | |
| 			linux,code = <KEY_VOLUMEDOWN>;
 | |
| 			label = "volume down";
 | |
| 			press-threshold-microvolt = <170000>;
 | |
| 		};
 | |
| 
 | |
| 		home-key {
 | |
| 			linux,code = <KEY_HOME>;
 | |
| 			label = "home";
 | |
| 			press-threshold-microvolt = <254000>;
 | |
| 		};
 | |
| 
 | |
| 		menu-key {
 | |
| 			linux,code = <KEY_MENU>;
 | |
| 			label = "menu";
 | |
| 			press-threshold-microvolt = <414000>;
 | |
| 		};
 | |
| 
 | |
| 		esc-key {
 | |
| 			linux,code = <KEY_ESC>;
 | |
| 			label = "esc";
 | |
| 			press-threshold-microvolt = <614000>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	backlight: backlight {
 | |
| 		compatible = "pwm-backlight";
 | |
| 		pwms = <&pwm1 0 25000 0>;
 | |
| 		brightness-levels = <
 | |
| 			  0   1   2   3   4   5   6   7
 | |
| 			  8   9  10  11  12  13  14  15
 | |
| 			 16  17  18  19  20  21  22  23
 | |
| 			 24  25  26  27  28  29  30  31
 | |
| 			 32  33  34  35  36  37  38  39
 | |
| 			 40  41  42  43  44  45  46  47
 | |
| 			 48  49  50  51  52  53  54  55
 | |
| 			 56  57  58  59  60  61  62  63
 | |
| 			 64  65  66  67  68  69  70  71
 | |
| 			 72  73  74  75  76  77  78  79
 | |
| 			 80  81  82  83  84  85  86  87
 | |
| 			 88  89  90  91  92  93  94  95
 | |
| 			 96  97  98  99 100 101 102 103
 | |
| 			104 105 106 107 108 109 110 111
 | |
| 			112 113 114 115 116 117 118 119
 | |
| 			120 121 122 123 124 125 126 127
 | |
| 			128 129 130 131 132 133 134 135
 | |
| 			136 137 138 139 140 141 142 143
 | |
| 			144 145 146 147 148 149 150 151
 | |
| 			152 153 154 155 156 157 158 159
 | |
| 			160 161 162 163 164 165 166 167
 | |
| 			168 169 170 171 172 173 174 175
 | |
| 			176 177 178 179 180 181 182 183
 | |
| 			184 185 186 187 188 189 190 191
 | |
| 			192 193 194 195 196 197 198 199
 | |
| 			200 201 202 203 204 205 206 207
 | |
| 			208 209 210 211 212 213 214 215
 | |
| 			216 217 218 219 220 221 222 223
 | |
| 			224 225 226 227 228 229 230 231
 | |
| 			232 233 234 235 236 237 238 239
 | |
| 			240 241 242 243 244 245 246 247
 | |
| 			248 249 250 251 252 253 254 255>;
 | |
| 		default-brightness-level = <200>;
 | |
| 	};
 | |
| 
 | |
| 	vcc_phy: vcc-phy-regulator {
 | |
| 		compatible = "regulator-fixed";
 | |
| 		regulator-name = "vcc_phy";
 | |
| 		regulator-always-on;
 | |
| 		regulator-boot-on;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &gmac {
 | |
| 	phy-supply = <&vcc_phy>;
 | |
| 	clock_in_out = "output";
 | |
| 	snps,reset-gpio = <&gpio2 13 GPIO_ACTIVE_LOW>;
 | |
| 	snps,reset-active-low;
 | |
| 	snps,reset-delays-us = <0 50000 50000>;
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &i2c0 {
 | |
| 	status = "okay";
 | |
| 
 | |
| 	rk817: pmic@20 {
 | |
| 		compatible = "rockchip,rk817";
 | |
| 		reg = <0x20>;
 | |
| 		interrupt-parent = <&gpio0>;
 | |
| 		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
 | |
| 		pinctrl-names = "default";
 | |
| 		pinctrl-0 = <&pmic_int>;
 | |
| 		rockchip,system-power-controller;
 | |
| 		wakeup-source;
 | |
| 		#clock-cells = <1>;
 | |
| 		clock-output-names = "xin32k", "rk808-clkout2";
 | |
| 
 | |
| 		vcc1-supply = <&vccsys>;
 | |
| 		vcc2-supply = <&vccsys>;
 | |
| 		vcc3-supply = <&vccsys>;
 | |
| 		vcc4-supply = <&vccsys>;
 | |
| 		vcc5-supply = <&vccsys>;
 | |
| 		vcc6-supply = <&vccsys>;
 | |
| 		vcc7-supply = <&vcc_3v0>;
 | |
| 		vcc8-supply = <&vccsys>;
 | |
| 		vcc9-supply = <&dcdc_boost>;
 | |
| 
 | |
| 		vccsys: vccsys{
 | |
| 			compatible = "regulator-fixed";
 | |
| 			regulator-name = "vcc3v8_sys";
 | |
| 			regulator-always-on;
 | |
| 			regulator-boot-on;
 | |
| 			regulator-min-microvolt = <3800000>;
 | |
| 			regulator-max-microvolt = <3800000>;
 | |
| 		};
 | |
| 
 | |
| 		rk817_pin0_ts: rk817_pin0_ts {
 | |
| 			pins = "gpio0";
 | |
| 			function = "pin_fun0";
 | |
| 		};
 | |
| 
 | |
| 		rk817_pin0_gpio: rk817_pin0_gpio {
 | |
| 			pins = "gpio0";
 | |
| 			function = "gpio";
 | |
| 		};
 | |
| 
 | |
| 		rk817_pin1_gt: rk817_pin1_gt {
 | |
| 			pins = "gpio1";
 | |
| 			function = "pin_fun0";
 | |
| 		};
 | |
| 
 | |
| 		rk817_pin1_gpio: rk817_pin1_gpio {
 | |
| 			pins = "gpio1";
 | |
| 			function = "gpio";
 | |
| 		};
 | |
| 
 | |
| 		pwrkey {
 | |
| 			status = "okay";
 | |
| 		};
 | |
| 
 | |
| 		regulators {
 | |
| 			vdd_arm: DCDC_REG1 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <950000>;
 | |
| 				regulator-max-microvolt = <1350000>;
 | |
| 				regulator-ramp-delay = <6001>;
 | |
| 				regulator-initial-mode = <0x1>;
 | |
| 				regulator-name = "vdd_arm";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <700000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vdd_logic: DCDC_REG2 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <950000>;
 | |
| 				regulator-max-microvolt = <1350000>;
 | |
| 				regulator-ramp-delay = <6001>;
 | |
| 				regulator-initial-mode = <0x1>;
 | |
| 				regulator-name = "vdd_logic";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <800000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc_ddr: DCDC_REG3 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-initial-mode = <0x1>;
 | |
| 				regulator-name = "vcc_ddr";
 | |
| 					regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc_3v0: DCDC_REG4 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <3000000>;
 | |
| 				regulator-max-microvolt = <3000000>;
 | |
| 				regulator-initial-mode = <0x1>;
 | |
| 				regulator-name = "vcc_3v0";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <3000000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc2v5_ddr: LDO_REG1 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <2500000>;
 | |
| 				regulator-max-microvolt = <2500000>;
 | |
| 				regulator-name = "vcc2v5_ddr";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <2500000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc1v8_soc: LDO_REG2 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <1800000>;
 | |
| 				regulator-max-microvolt = <1800000>;
 | |
| 
 | |
| 				regulator-name = "vcc1v8_soc";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <1800000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vdd1v0_soc: LDO_REG3 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <1000000>;
 | |
| 				regulator-max-microvolt = <1000000>;
 | |
| 
 | |
| 				regulator-name = "vcc1v0_soc";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <1000000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc3v0_pmu: LDO_REG4 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <3000000>;
 | |
| 				regulator-max-microvolt = <3000000>;
 | |
| 
 | |
| 				regulator-name = "vcc3v0_pmu";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <3000000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vccio_sd: LDO_REG5 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <1800000>;
 | |
| 				regulator-max-microvolt = <3300000>;
 | |
| 
 | |
| 				regulator-name = "vccio_sd";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <3300000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc_sd: LDO_REG6 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <3300000>;
 | |
| 				regulator-max-microvolt = <3300000>;
 | |
| 
 | |
| 				regulator-name = "vcc_sd";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <3300000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc2v8_dvp: LDO_REG7 {
 | |
| 			regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <2800000>;
 | |
| 				regulator-max-microvolt = <2800000>;
 | |
| 
 | |
| 				regulator-name = "vcc2v8_dvp";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <2800000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vcc1v8_dvp: LDO_REG8 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <1800000>;
 | |
| 				regulator-max-microvolt = <1800000>;
 | |
| 
 | |
| 				regulator-name = "vcc1v8_dvp";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-on-in-suspend;
 | |
| 					regulator-suspend-microvolt = <1800000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			vdd1v5_dvp: LDO_REG9 {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <1500000>;
 | |
| 				regulator-max-microvolt = <1500000>;
 | |
| 
 | |
| 				regulator-name = "vdd1v5_dvp";
 | |
| 				regulator-state-mem {
 | |
| 					regulator-off-in-suspend;
 | |
| 					regulator-suspend-microvolt = <1500000>;
 | |
| 				};
 | |
| 			};
 | |
| 
 | |
| 			dcdc_boost: BOOST {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-min-microvolt = <4700000>;
 | |
| 				regulator-max-microvolt = <5400000>;
 | |
| 				regulator-name = "boost";
 | |
| 			};
 | |
| 
 | |
| 			otg_switch: OTG_SWITCH {
 | |
| 				regulator-always-on;
 | |
| 				regulator-boot-on;
 | |
| 				regulator-name = "otg_switch";
 | |
| 			};
 | |
| 		};
 | |
| 
 | |
| 		battery {
 | |
| 			compatible = "rk817,battery";
 | |
| 			ocv_table = <3500 3625 3685 3697 3718 3735 3748
 | |
| 						3760 3774 3788 3802 3816 3834 3853
 | |
| 						3877 3908 3946 3975 4018 4071 4106>;
 | |
| 			design_capacity = <2500>;
 | |
| 			design_qmax = <2750>;
 | |
| 			bat_res = <100>;
 | |
| 			sleep_enter_current = <300>;
 | |
| 			sleep_exit_current = <300>;
 | |
| 			sleep_filter_current = <100>;
 | |
| 			power_off_thresd = <3500>;
 | |
| 			zero_algorithm_vol = <3850>;
 | |
| 			max_soc_offset = <60>;
 | |
| 			monitor_sec = <5>;
 | |
| 			sample_res = <10>;
 | |
| 			virtual_power = <1>;
 | |
| 		};
 | |
| 
 | |
| 		charger {
 | |
| 			compatible = "rk817,charger";
 | |
| 			min_input_voltage = <4500>;
 | |
| 			max_input_current = <1500>;
 | |
| 			max_chrg_current = <1300>;
 | |
| 			max_chrg_voltage = <4200>;
 | |
| 			chrg_term_mode = <1>;
 | |
| 			chrg_finish_cur = <300>;
 | |
| 			virtual_power = <0>;
 | |
| 			dc_det_adc = <0>;
 | |
| 		};
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &sdmmc {
 | |
| 	bus-width = <4>;
 | |
| 	cap-mmc-highspeed;
 | |
| 	cap-sd-highspeed;
 | |
| 	supports-sd;
 | |
| 	card-detect-delay = <800>;
 | |
| 	ignore-pm-notify;
 | |
| 	/*cd-gpios = <&gpio2 4 GPIO_ACTIVE_HIGH>; [> CD GPIO <]*/
 | |
| 	sd-uhs-sdr12;
 | |
| 	sd-uhs-sdr25;
 | |
| 	sd-uhs-sdr50;
 | |
| 	sd-uhs-sdr104;
 | |
| 	vqmmc-supply = <&vccio_sd>;
 | |
| 	vmmc-supply = <&vcc_sd>;
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &crypto {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &emmc {
 | |
| 	bus-width = <8>;
 | |
| 	cap-mmc-highspeed;
 | |
| 	mmc-hs200-1_8v;
 | |
| 	supports-emmc;
 | |
| 	disable-wp;
 | |
| 	non-removable;
 | |
| 	num-slots = <1>;
 | |
| 	pinctrl-names = "default";
 | |
| 	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &pwm1 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &uart5 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &uart2 {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &pinctrl {
 | |
| 	pmic {
 | |
| 	pmic_int: pmic_int {
 | |
| 		rockchip,pins =
 | |
| 			<0 7 RK_FUNC_GPIO &pcfg_pull_up>;
 | |
| 		};
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &u2phy {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &u2phy_otg {
 | |
| 	status = "okay";
 | |
| };
 | |
| 
 | |
| &u2phy_host {
 | |
| 	status = "okay";
 | |
| };
 |