0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Samsung's Exynos4210 based Origen board device tree source
0004 *
0005 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
0006 * http://www.samsung.com
0007 * Copyright (c) 2010-2011 Linaro Ltd.
0008 * www.linaro.org
0009 *
0010 * Device tree source file for Insignal's Origen board which is based on
0011 * Samsung's Exynos4210 SoC.
0012 */
0013
0014 /dts-v1/;
0015 #include "exynos4210.dtsi"
0016 #include <dt-bindings/gpio/gpio.h>
0017 #include <dt-bindings/input/input.h>
0018 #include <dt-bindings/leds/common.h>
0019 #include "exynos-mfc-reserved-memory.dtsi"
0020
0021 / {
0022 model = "Insignal Origen evaluation board based on Exynos4210";
0023 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
0024
0025 memory@40000000 {
0026 device_type = "memory";
0027 reg = <0x40000000 0x10000000
0028 0x50000000 0x10000000
0029 0x60000000 0x10000000
0030 0x70000000 0x10000000>;
0031 };
0032
0033 chosen {
0034 bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc";
0035 stdout-path = "serial2:115200n8";
0036 };
0037
0038 mmc_reg: voltage-regulator {
0039 compatible = "regulator-fixed";
0040 regulator-name = "VMEM_VDD_2.8V";
0041 regulator-min-microvolt = <2800000>;
0042 regulator-max-microvolt = <2800000>;
0043 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
0044 enable-active-high;
0045 };
0046
0047 gpio-keys {
0048 compatible = "gpio-keys";
0049
0050 key-up {
0051 label = "Up";
0052 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
0053 linux,code = <KEY_UP>;
0054 wakeup-source;
0055 };
0056
0057 key-down {
0058 label = "Down";
0059 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
0060 linux,code = <KEY_DOWN>;
0061 wakeup-source;
0062 };
0063
0064 key-back {
0065 label = "Back";
0066 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
0067 linux,code = <KEY_BACK>;
0068 wakeup-source;
0069 };
0070
0071 key-home {
0072 label = "Home";
0073 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
0074 linux,code = <KEY_HOME>;
0075 wakeup-source;
0076 };
0077
0078 key-menu {
0079 label = "Menu";
0080 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
0081 linux,code = <KEY_MENU>;
0082 wakeup-source;
0083 };
0084 };
0085
0086 leds {
0087 compatible = "gpio-leds";
0088 status {
0089 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
0090 function = LED_FUNCTION_HEARTBEAT;
0091 linux,default-trigger = "heartbeat";
0092 };
0093 };
0094
0095 fixed-rate-clocks {
0096 xxti {
0097 compatible = "samsung,clock-xxti";
0098 clock-frequency = <0>;
0099 };
0100
0101 xusbxti {
0102 compatible = "samsung,clock-xusbxti";
0103 clock-frequency = <24000000>;
0104 };
0105
0106 pmic_ap_clk: pmic-ap-clk {
0107 /* Workaround for missing clock on max8997 PMIC */
0108 compatible = "fixed-clock";
0109 #clock-cells = <0>;
0110 clock-frequency = <32768>;
0111 };
0112 };
0113
0114 display-timings {
0115 native-mode = <&timing0>;
0116 timing0: timing {
0117 clock-frequency = <47500000>;
0118 hactive = <1024>;
0119 vactive = <600>;
0120 hfront-porch = <64>;
0121 hback-porch = <16>;
0122 hsync-len = <48>;
0123 vback-porch = <64>;
0124 vfront-porch = <16>;
0125 vsync-len = <3>;
0126 };
0127 };
0128 };
0129
0130 &cpu0 {
0131 cpu0-supply = <&buck1_reg>;
0132 };
0133
0134 &cpu_thermal {
0135 cooling-maps {
0136 map0 {
0137 /* Corresponds to 800MHz */
0138 cooling-device = <&cpu0 2 2>;
0139 };
0140 map1 {
0141 /* Corresponds to 200MHz */
0142 cooling-device = <&cpu0 4 4>;
0143 };
0144 };
0145 };
0146
0147 &exynos_usbphy {
0148 status = "okay";
0149 };
0150
0151 &fimd {
0152 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
0153 pinctrl-names = "default";
0154 status = "okay";
0155 };
0156
0157 &gpu {
0158 mali-supply = <&buck3_reg>;
0159 status = "okay";
0160 };
0161
0162 &hsotg {
0163 vusb_d-supply = <&ldo3_reg>;
0164 vusb_a-supply = <&ldo8_reg>;
0165 dr_mode = "peripheral";
0166 status = "okay";
0167 };
0168
0169 &i2c_0 {
0170 status = "okay";
0171 samsung,i2c-sda-delay = <100>;
0172 samsung,i2c-max-bus-freq = <20000>;
0173 pinctrl-0 = <&i2c0_bus>;
0174 pinctrl-names = "default";
0175
0176 pmic@66 {
0177 compatible = "maxim,max8997-pmic";
0178 reg = <0x66>;
0179 interrupt-parent = <&gpx0>;
0180 interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>;
0181 pinctrl-names = "default";
0182 pinctrl-0 = <&max8997_irq>;
0183
0184 max8997,pmic-buck1-dvs-voltage = <1350000>;
0185 max8997,pmic-buck2-dvs-voltage = <1100000>;
0186 max8997,pmic-buck5-dvs-voltage = <1200000>;
0187
0188 regulators {
0189 ldo1_reg: LDO1 {
0190 regulator-name = "VDD_ABB_3.3V";
0191 regulator-min-microvolt = <3300000>;
0192 regulator-max-microvolt = <3300000>;
0193 };
0194
0195 ldo2_reg: LDO2 {
0196 regulator-name = "VDD_ALIVE_1.1V";
0197 regulator-min-microvolt = <1100000>;
0198 regulator-max-microvolt = <1100000>;
0199 regulator-always-on;
0200 };
0201
0202 ldo3_reg: LDO3 {
0203 regulator-name = "VMIPI_1.1V";
0204 regulator-min-microvolt = <1100000>;
0205 regulator-max-microvolt = <1100000>;
0206 };
0207
0208 ldo4_reg: LDO4 {
0209 regulator-name = "VDD_RTC_1.8V";
0210 regulator-min-microvolt = <1800000>;
0211 regulator-max-microvolt = <1800000>;
0212 regulator-always-on;
0213 };
0214
0215 ldo6_reg: LDO6 {
0216 regulator-name = "VMIPI_1.8V";
0217 regulator-min-microvolt = <1800000>;
0218 regulator-max-microvolt = <1800000>;
0219 regulator-always-on;
0220 };
0221
0222 ldo7_reg: LDO7 {
0223 regulator-name = "VDD_AUD_1.8V";
0224 regulator-min-microvolt = <1800000>;
0225 regulator-max-microvolt = <1800000>;
0226 };
0227
0228 ldo8_reg: LDO8 {
0229 regulator-name = "VADC_3.3V";
0230 regulator-min-microvolt = <3300000>;
0231 regulator-max-microvolt = <3300000>;
0232 };
0233
0234 ldo9_reg: LDO9 {
0235 regulator-name = "DVDD_SWB_2.8V";
0236 regulator-min-microvolt = <2800000>;
0237 regulator-max-microvolt = <2800000>;
0238 regulator-always-on;
0239 };
0240
0241 ldo10_reg: LDO10 {
0242 regulator-name = "VDD_PLL_1.1V";
0243 regulator-min-microvolt = <1100000>;
0244 regulator-max-microvolt = <1100000>;
0245 regulator-always-on;
0246 };
0247
0248 ldo11_reg: LDO11 {
0249 regulator-name = "VDD_AUD_3V";
0250 regulator-min-microvolt = <3000000>;
0251 regulator-max-microvolt = <3000000>;
0252 };
0253
0254 ldo14_reg: LDO14 {
0255 regulator-name = "AVDD18_SWB_1.8V";
0256 regulator-min-microvolt = <1800000>;
0257 regulator-max-microvolt = <1800000>;
0258 regulator-always-on;
0259 };
0260
0261 ldo17_reg: LDO17 {
0262 regulator-name = "VDD_SWB_3.3V";
0263 regulator-min-microvolt = <3300000>;
0264 regulator-max-microvolt = <3300000>;
0265 regulator-always-on;
0266 };
0267
0268 ldo21_reg: LDO21 {
0269 regulator-name = "VDD_MIF_1.2V";
0270 regulator-min-microvolt = <1200000>;
0271 regulator-max-microvolt = <1200000>;
0272 regulator-always-on;
0273 };
0274
0275 buck1_reg: BUCK1 {
0276 regulator-name = "VDD_ARM_1.2V";
0277 regulator-min-microvolt = <950000>;
0278 regulator-max-microvolt = <1350000>;
0279 regulator-always-on;
0280 regulator-boot-on;
0281 };
0282
0283 buck2_reg: BUCK2 {
0284 regulator-name = "VDD_INT_1.1V";
0285 regulator-min-microvolt = <900000>;
0286 regulator-max-microvolt = <1100000>;
0287 regulator-always-on;
0288 regulator-boot-on;
0289 };
0290
0291 buck3_reg: BUCK3 {
0292 regulator-name = "VDD_G3D_1.1V";
0293 regulator-min-microvolt = <900000>;
0294 regulator-max-microvolt = <1100000>;
0295 };
0296
0297 buck5_reg: BUCK5 {
0298 regulator-name = "VDDQ_M1M2_1.2V";
0299 regulator-min-microvolt = <1200000>;
0300 regulator-max-microvolt = <1200000>;
0301 regulator-always-on;
0302 };
0303
0304 buck7_reg: BUCK7 {
0305 regulator-name = "VDD_LCD_3.3V";
0306 regulator-min-microvolt = <3300000>;
0307 regulator-max-microvolt = <3300000>;
0308 regulator-boot-on;
0309 regulator-always-on;
0310 };
0311
0312 EN32KHZ_AP {
0313 regulator-name = "EN32KHZ_AP";
0314 regulator-always-on;
0315 };
0316 };
0317 };
0318 };
0319
0320 &pinctrl_1 {
0321 max8997_irq: max8997-irq-pins {
0322 samsung,pins = "gpx0-3", "gpx0-4";
0323 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
0324 };
0325 };
0326
0327 &sdhci_0 {
0328 bus-width = <4>;
0329 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
0330 pinctrl-names = "default";
0331 vmmc-supply = <&mmc_reg>;
0332 status = "okay";
0333 };
0334
0335 &sdhci_2 {
0336 bus-width = <4>;
0337 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
0338 pinctrl-names = "default";
0339 vmmc-supply = <&mmc_reg>;
0340 status = "okay";
0341 };
0342
0343 &serial_0 {
0344 status = "okay";
0345 };
0346
0347 &serial_1 {
0348 status = "okay";
0349 };
0350
0351 &serial_2 {
0352 status = "okay";
0353 };
0354
0355 &serial_3 {
0356 status = "okay";
0357 };
0358
0359 &rtc {
0360 status = "okay";
0361 clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
0362 clock-names = "rtc", "rtc_src";
0363 };
0364
0365 &tmu {
0366 status = "okay";
0367 };