0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Samsung's S5PV210 SoC device tree source
0004 *
0005 * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd.
0006 *
0007 * Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
0008 * Tomasz Figa <t.figa@samsung.com>
0009 *
0010 * Board device tree source for Samsung Aquila board.
0011 */
0012
0013 /dts-v1/;
0014 #include <dt-bindings/gpio/gpio.h>
0015 #include <dt-bindings/input/input.h>
0016 #include "s5pv210.dtsi"
0017
0018 / {
0019 model = "Samsung Aquila based on S5PC110";
0020 compatible = "samsung,aquila", "samsung,s5pv210";
0021
0022 aliases {
0023 i2c3 = &i2c_pmic;
0024 };
0025
0026 chosen {
0027 bootargs = "console=ttySAC2,115200n8 root=/dev/mmcblk1p5 rw rootwait ignore_loglevel earlyprintk";
0028 };
0029
0030 memory@30000000 {
0031 device_type = "memory";
0032 reg = <0x30000000 0x05000000>, <0x40000000 0x18000000>;
0033 };
0034
0035 pmic_ap_clk: clock-0 {
0036 /* Workaround for missing clock on PMIC */
0037 compatible = "fixed-clock";
0038 #clock-cells = <0>;
0039 clock-frequency = <32768>;
0040 };
0041
0042 vtf_reg: regulator-0 {
0043 compatible = "regulator-fixed";
0044 regulator-name = "V_TF_2.8V";
0045 regulator-min-microvolt = <2800000>;
0046 regulator-max-microvolt = <2800000>;
0047 gpio = <&mp05 4 GPIO_ACTIVE_HIGH>;
0048 enable-active-high;
0049 };
0050
0051 pda_reg: regulator-1 {
0052 compatible = "regulator-fixed";
0053 regulator-name = "VCC_1.8V_PDA";
0054 regulator-min-microvolt = <1800000>;
0055 regulator-max-microvolt = <1800000>;
0056 };
0057
0058 bat_reg: regulator-2 {
0059 compatible = "regulator-fixed";
0060 regulator-name = "V_BAT";
0061 regulator-min-microvolt = <3700000>;
0062 regulator-max-microvolt = <3700000>;
0063 };
0064
0065 i2c_pmic: i2c-pmic {
0066 compatible = "i2c-gpio";
0067 sda-gpios = <&gpj4 0 GPIO_ACTIVE_HIGH>;
0068 scl-gpios = <&gpj4 3 GPIO_ACTIVE_HIGH>;
0069 i2c-gpio,delay-us = <2>; /* ~100 kHz */
0070 #address-cells = <1>;
0071 #size-cells = <0>;
0072
0073 pmic@66 {
0074 compatible = "national,lp3974";
0075 reg = <0x66>;
0076
0077 max8998,pmic-buck1-default-dvs-idx = <0>;
0078 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>,
0079 <&gph0 4 GPIO_ACTIVE_HIGH>;
0080 max8998,pmic-buck1-dvs-voltage = <1200000>, <1200000>,
0081 <1200000>, <1200000>;
0082
0083 max8998,pmic-buck2-default-dvs-idx = <0>;
0084 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>;
0085 max8998,pmic-buck2-dvs-voltage = <1200000>, <1200000>;
0086
0087 regulators {
0088 ldo2_reg: LDO2 {
0089 regulator-name = "VALIVE_1.1V";
0090 regulator-min-microvolt = <1100000>;
0091 regulator-max-microvolt = <1100000>;
0092 regulator-always-on;
0093 };
0094
0095 ldo3_reg: LDO3 {
0096 regulator-name = "VUSB+MIPI_1.1V";
0097 regulator-min-microvolt = <1100000>;
0098 regulator-max-microvolt = <1100000>;
0099 regulator-always-on;
0100 };
0101
0102 ldo4_reg: LDO4 {
0103 regulator-name = "VADC_3.3V";
0104 regulator-min-microvolt = <3300000>;
0105 regulator-max-microvolt = <3300000>;
0106 };
0107
0108 ldo5_reg: LDO5 {
0109 regulator-name = "VTF_2.8V";
0110 regulator-min-microvolt = <2800000>;
0111 regulator-max-microvolt = <2800000>;
0112 regulator-always-on;
0113 };
0114
0115 ldo6_reg: LDO6 {
0116 regulator-name = "VCC_3.3V";
0117 regulator-min-microvolt = <3300000>;
0118 regulator-max-microvolt = <3300000>;
0119 regulator-always-on;
0120 };
0121
0122 ldo7_reg: LDO7 {
0123 regulator-name = "VCC_3.0V";
0124 regulator-min-microvolt = <3000000>;
0125 regulator-max-microvolt = <3000000>;
0126 regulator-always-on;
0127 regulator-boot-on;
0128 };
0129
0130 ldo8_reg: LDO8 {
0131 regulator-name = "VUSB+VDAC_3.3V";
0132 regulator-min-microvolt = <3300000>;
0133 regulator-max-microvolt = <3300000>;
0134 regulator-always-on;
0135 };
0136
0137 ldo9_reg: LDO9 {
0138 regulator-name = "VCC+VCAM_2.8V";
0139 regulator-min-microvolt = <2800000>;
0140 regulator-max-microvolt = <2800000>;
0141 regulator-always-on;
0142 };
0143
0144 ldo10_reg: LDO10 {
0145 regulator-name = "VPLL_1.1V";
0146 regulator-min-microvolt = <1100000>;
0147 regulator-max-microvolt = <1100000>;
0148 regulator-always-on;
0149 regulator-boot-on;
0150 };
0151
0152 ldo11_reg: LDO11 {
0153 regulator-name = "CAM_IO_2.8V";
0154 regulator-min-microvolt = <2800000>;
0155 regulator-max-microvolt = <2800000>;
0156 regulator-always-on;
0157 };
0158
0159 ldo12_reg: LDO12 {
0160 regulator-name = "CAM_ISP_1.2V";
0161 regulator-min-microvolt = <1200000>;
0162 regulator-max-microvolt = <1200000>;
0163 regulator-always-on;
0164 };
0165
0166 ldo13_reg: LDO13 {
0167 regulator-name = "CAM_A_2.8V";
0168 regulator-min-microvolt = <2800000>;
0169 regulator-max-microvolt = <2800000>;
0170 regulator-always-on;
0171 };
0172
0173 ldo14_reg: LDO14 {
0174 regulator-name = "CAM_CIF_1.8V";
0175 regulator-min-microvolt = <1800000>;
0176 regulator-max-microvolt = <1800000>;
0177 regulator-always-on;
0178 };
0179
0180 ldo15_reg: LDO15 {
0181 regulator-name = "CAM_AF_3.3V";
0182 regulator-min-microvolt = <3300000>;
0183 regulator-max-microvolt = <3300000>;
0184 regulator-always-on;
0185 };
0186
0187 ldo16_reg: LDO16 {
0188 regulator-name = "VMIPI_1.8V";
0189 regulator-min-microvolt = <1800000>;
0190 regulator-max-microvolt = <1800000>;
0191 regulator-always-on;
0192 };
0193
0194 ldo17_reg: LDO17 {
0195 regulator-name = "CAM_8M_1.8V";
0196 regulator-min-microvolt = <1800000>;
0197 regulator-max-microvolt = <1800000>;
0198 regulator-always-on;
0199 };
0200
0201 buck1_reg: BUCK1 {
0202 regulator-name = "VARM_1.2V";
0203 regulator-min-microvolt = <1200000>;
0204 regulator-max-microvolt = <1200000>;
0205 regulator-always-on;
0206 };
0207
0208 buck2_reg: BUCK2 {
0209 regulator-name = "VINT_1.2V";
0210 regulator-min-microvolt = <1200000>;
0211 regulator-max-microvolt = <1200000>;
0212 regulator-always-on;
0213 };
0214
0215 buck3_reg: BUCK3 {
0216 regulator-name = "VCC_1.8V";
0217 regulator-min-microvolt = <1800000>;
0218 regulator-max-microvolt = <1800000>;
0219 regulator-always-on;
0220 };
0221
0222 buck4_reg: BUCK4 {
0223 regulator-name = "CAM_CORE_1.2V";
0224 regulator-min-microvolt = <1200000>;
0225 regulator-max-microvolt = <1200000>;
0226 regulator-always-on;
0227 };
0228
0229 ap32khz_reg: EN32KHz-AP {
0230 regulator-name = "32KHz AP";
0231 regulator-always-on;
0232 };
0233
0234 vichg_reg: ENVICHG {
0235 regulator-name = "VICHG";
0236 };
0237
0238 safeout1_reg: ESAFEOUT1 {
0239 regulator-name = "SAFEOUT1";
0240 regulator-always-on;
0241 };
0242
0243 safeout2_reg: ESAFEOUT2 {
0244 regulator-name = "SAFEOUT2";
0245 regulator-boot-on;
0246 };
0247 };
0248 };
0249
0250 };
0251
0252 gpio-keys {
0253 compatible = "gpio-keys";
0254
0255 power-key {
0256 gpios = <&gph2 6 1>;
0257 linux,code = <KEY_POWER>;
0258 label = "power";
0259 debounce-interval = <1>;
0260 wakeup-source;
0261 };
0262 };
0263 };
0264
0265 &xusbxti {
0266 clock-frequency = <24000000>;
0267 };
0268
0269 &keypad {
0270 linux,input-no-autorepeat;
0271 wakeup-source;
0272 samsung,keypad-num-rows = <3>;
0273 samsung,keypad-num-columns = <3>;
0274 pinctrl-names = "default";
0275 pinctrl-0 = <&keypad_row0>, <&keypad_row1>, <&keypad_row2>,
0276 <&keypad_col0>, <&keypad_col1>, <&keypad_col2>;
0277 status = "okay";
0278
0279 key-1 {
0280 keypad,row = <0>;
0281 keypad,column = <1>;
0282 linux,code = <KEY_CONNECT>;
0283 };
0284
0285 key-2 {
0286 keypad,row = <0>;
0287 keypad,column = <2>;
0288 linux,code = <KEY_BACK>;
0289 };
0290
0291 key-3 {
0292 keypad,row = <1>;
0293 keypad,column = <1>;
0294 linux,code = <KEY_CAMERA_FOCUS>;
0295 };
0296
0297 key-4 {
0298 keypad,row = <1>;
0299 keypad,column = <2>;
0300 linux,code = <KEY_VOLUMEUP>;
0301 };
0302
0303 key-5 {
0304 keypad,row = <2>;
0305 keypad,column = <1>;
0306 linux,code = <KEY_CAMERA>;
0307 };
0308
0309 key-6 {
0310 keypad,row = <2>;
0311 keypad,column = <2>;
0312 linux,code = <KEY_VOLUMEDOWN>;
0313 };
0314 };
0315
0316 &uart0 {
0317 status = "okay";
0318 };
0319
0320 &uart1 {
0321 status = "okay";
0322 };
0323
0324 &uart2 {
0325 status = "okay";
0326 };
0327
0328 &uart3 {
0329 status = "okay";
0330 };
0331
0332 &rtc {
0333 clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
0334 clock-names = "rtc", "rtc_src";
0335 };
0336
0337 &sdhci0 {
0338 bus-width = <4>;
0339 non-removable;
0340 status = "okay";
0341 vmmc-supply = <&ldo5_reg>;
0342 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
0343 pinctrl-names = "default";
0344 };
0345
0346 &sdhci2 {
0347 bus-width = <4>;
0348 cd-gpios = <&gph3 4 1>;
0349 vmmc-supply = <&vtf_reg>;
0350 cd-inverted;
0351 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &t_flash_detect>;
0352 pinctrl-names = "default";
0353 status = "okay";
0354 };
0355
0356 &onenand {
0357 status = "okay";
0358 };
0359
0360 &hsotg {
0361 vusb_a-supply = <&ldo3_reg>;
0362 vusb_d-supply = <&ldo8_reg>;
0363 dr_mode = "peripheral";
0364 status = "okay";
0365 };
0366
0367 &usbphy {
0368 status = "okay";
0369 };
0370
0371 &fimd {
0372 pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
0373 pinctrl-names = "default";
0374 status = "okay";
0375
0376 display-timings {
0377 native-mode = <&timing0>;
0378 timing0: timing {
0379 clock-frequency = <0>;
0380 hactive = <800>;
0381 vactive = <480>;
0382 hfront-porch = <16>;
0383 hback-porch = <16>;
0384 hsync-len = <2>;
0385 vback-porch = <3>;
0386 vfront-porch = <28>;
0387 vsync-len = <1>;
0388 };
0389 };
0390 };
0391
0392 &pinctrl0 {
0393 t_flash_detect: t-flash-detect-pins {
0394 samsung,pins = "gph3-4";
0395 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0396 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0397 };
0398 };