1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's Exynos4210 based Origen board device tree source 4 * 5 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 * Copyright (c) 2010-2011 Linaro Ltd. 8 * www.linaro.org 9 * 10 * Device tree source file for Insignal's Origen board which is based on 11 * Samsung's Exynos4210 SoC. 12 */ 13 14/dts-v1/; 15#include "exynos4210.dtsi" 16#include <dt-bindings/gpio/gpio.h> 17#include <dt-bindings/input/input.h> 18#include <dt-bindings/leds/common.h> 19#include "exynos-mfc-reserved-memory.dtsi" 20 21/ { 22 model = "Insignal Origen evaluation board based on Exynos4210"; 23 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4"; 24 25 memory@40000000 { 26 device_type = "memory"; 27 reg = <0x40000000 0x10000000 28 0x50000000 0x10000000 29 0x60000000 0x10000000 30 0x70000000 0x10000000>; 31 }; 32 33 aliases { 34 mmc0 = &sdhci_0; 35 mmc1 = &sdhci_2; 36 }; 37 38 chosen { 39 bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc"; 40 stdout-path = "serial2:115200n8"; 41 }; 42 43 mmc_reg: voltage-regulator { 44 compatible = "regulator-fixed"; 45 regulator-name = "VMEM_VDD_2.8V"; 46 regulator-min-microvolt = <2800000>; 47 regulator-max-microvolt = <2800000>; 48 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 49 enable-active-high; 50 }; 51 52 gpio-keys { 53 compatible = "gpio-keys"; 54 55 key-up { 56 label = "Up"; 57 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 58 linux,code = <KEY_UP>; 59 wakeup-source; 60 }; 61 62 key-down { 63 label = "Down"; 64 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 65 linux,code = <KEY_DOWN>; 66 wakeup-source; 67 }; 68 69 key-back { 70 label = "Back"; 71 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; 72 linux,code = <KEY_BACK>; 73 wakeup-source; 74 }; 75 76 key-home { 77 label = "Home"; 78 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; 79 linux,code = <KEY_HOME>; 80 wakeup-source; 81 }; 82 83 key-menu { 84 label = "Menu"; 85 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; 86 linux,code = <KEY_MENU>; 87 wakeup-source; 88 }; 89 }; 90 91 leds { 92 compatible = "gpio-leds"; 93 led-status { 94 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; 95 function = LED_FUNCTION_HEARTBEAT; 96 linux,default-trigger = "heartbeat"; 97 }; 98 }; 99 100 fixed-rate-clocks { 101 xxti { 102 compatible = "samsung,clock-xxti"; 103 clock-frequency = <0>; 104 }; 105 106 xusbxti { 107 compatible = "samsung,clock-xusbxti"; 108 clock-frequency = <24000000>; 109 }; 110 111 pmic_ap_clk: pmic-ap-clk { 112 /* Workaround for missing clock on max8997 PMIC */ 113 compatible = "fixed-clock"; 114 #clock-cells = <0>; 115 clock-frequency = <32768>; 116 }; 117 }; 118 119 display-timings { 120 native-mode = <&timing0>; 121 timing0: timing { 122 clock-frequency = <47500000>; 123 hactive = <1024>; 124 vactive = <600>; 125 hfront-porch = <64>; 126 hback-porch = <16>; 127 hsync-len = <48>; 128 vback-porch = <64>; 129 vfront-porch = <16>; 130 vsync-len = <3>; 131 }; 132 }; 133}; 134 135&cpu0 { 136 cpu0-supply = <&buck1_reg>; 137}; 138 139&cpu_thermal { 140 cooling-maps { 141 map0 { 142 /* Corresponds to 800MHz */ 143 cooling-device = <&cpu0 2 2>; 144 }; 145 map1 { 146 /* Corresponds to 200MHz */ 147 cooling-device = <&cpu0 4 4>; 148 }; 149 }; 150}; 151 152&exynos_usbphy { 153 status = "okay"; 154}; 155 156&fimd { 157 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; 158 pinctrl-names = "default"; 159 status = "okay"; 160}; 161 162&gpu { 163 mali-supply = <&buck3_reg>; 164 status = "okay"; 165}; 166 167&hsotg { 168 vusb_d-supply = <&ldo3_reg>; 169 vusb_a-supply = <&ldo8_reg>; 170 dr_mode = "peripheral"; 171 status = "okay"; 172}; 173 174&i2c_0 { 175 status = "okay"; 176 samsung,i2c-sda-delay = <100>; 177 samsung,i2c-max-bus-freq = <20000>; 178 pinctrl-0 = <&i2c0_bus>; 179 pinctrl-names = "default"; 180 181 pmic@66 { 182 compatible = "maxim,max8997-pmic"; 183 reg = <0x66>; 184 interrupt-parent = <&gpx0>; 185 interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>; 186 pinctrl-names = "default"; 187 pinctrl-0 = <&max8997_irq>; 188 189 max8997,pmic-buck1-dvs-voltage = <1350000>; 190 max8997,pmic-buck2-dvs-voltage = <1100000>; 191 max8997,pmic-buck5-dvs-voltage = <1200000>; 192 193 regulators { 194 ldo1_reg: LDO1 { 195 regulator-name = "VDD_ABB_3.3V"; 196 regulator-min-microvolt = <3300000>; 197 regulator-max-microvolt = <3300000>; 198 }; 199 200 ldo2_reg: LDO2 { 201 regulator-name = "VDD_ALIVE_1.1V"; 202 regulator-min-microvolt = <1100000>; 203 regulator-max-microvolt = <1100000>; 204 regulator-always-on; 205 }; 206 207 ldo3_reg: LDO3 { 208 regulator-name = "VMIPI_1.1V"; 209 regulator-min-microvolt = <1100000>; 210 regulator-max-microvolt = <1100000>; 211 }; 212 213 ldo4_reg: LDO4 { 214 regulator-name = "VDD_RTC_1.8V"; 215 regulator-min-microvolt = <1800000>; 216 regulator-max-microvolt = <1800000>; 217 regulator-always-on; 218 }; 219 220 ldo6_reg: LDO6 { 221 regulator-name = "VMIPI_1.8V"; 222 regulator-min-microvolt = <1800000>; 223 regulator-max-microvolt = <1800000>; 224 regulator-always-on; 225 }; 226 227 ldo7_reg: LDO7 { 228 regulator-name = "VDD_AUD_1.8V"; 229 regulator-min-microvolt = <1800000>; 230 regulator-max-microvolt = <1800000>; 231 }; 232 233 ldo8_reg: LDO8 { 234 regulator-name = "VADC_3.3V"; 235 regulator-min-microvolt = <3300000>; 236 regulator-max-microvolt = <3300000>; 237 }; 238 239 ldo9_reg: LDO9 { 240 regulator-name = "DVDD_SWB_2.8V"; 241 regulator-min-microvolt = <2800000>; 242 regulator-max-microvolt = <2800000>; 243 regulator-always-on; 244 }; 245 246 ldo10_reg: LDO10 { 247 regulator-name = "VDD_PLL_1.1V"; 248 regulator-min-microvolt = <1100000>; 249 regulator-max-microvolt = <1100000>; 250 regulator-always-on; 251 }; 252 253 ldo11_reg: LDO11 { 254 regulator-name = "VDD_AUD_3V"; 255 regulator-min-microvolt = <3000000>; 256 regulator-max-microvolt = <3000000>; 257 }; 258 259 ldo14_reg: LDO14 { 260 regulator-name = "AVDD18_SWB_1.8V"; 261 regulator-min-microvolt = <1800000>; 262 regulator-max-microvolt = <1800000>; 263 regulator-always-on; 264 }; 265 266 ldo17_reg: LDO17 { 267 regulator-name = "VDD_SWB_3.3V"; 268 regulator-min-microvolt = <3300000>; 269 regulator-max-microvolt = <3300000>; 270 regulator-always-on; 271 }; 272 273 ldo21_reg: LDO21 { 274 regulator-name = "VDD_MIF_1.2V"; 275 regulator-min-microvolt = <1200000>; 276 regulator-max-microvolt = <1200000>; 277 regulator-always-on; 278 }; 279 280 buck1_reg: BUCK1 { 281 regulator-name = "VDD_ARM_1.2V"; 282 regulator-min-microvolt = <950000>; 283 regulator-max-microvolt = <1350000>; 284 regulator-always-on; 285 regulator-boot-on; 286 }; 287 288 buck2_reg: BUCK2 { 289 regulator-name = "VDD_INT_1.1V"; 290 regulator-min-microvolt = <900000>; 291 regulator-max-microvolt = <1100000>; 292 regulator-always-on; 293 regulator-boot-on; 294 }; 295 296 buck3_reg: BUCK3 { 297 regulator-name = "VDD_G3D_1.1V"; 298 regulator-min-microvolt = <900000>; 299 regulator-max-microvolt = <1100000>; 300 }; 301 302 buck5_reg: BUCK5 { 303 regulator-name = "VDDQ_M1M2_1.2V"; 304 regulator-min-microvolt = <1200000>; 305 regulator-max-microvolt = <1200000>; 306 regulator-always-on; 307 }; 308 309 buck7_reg: BUCK7 { 310 regulator-name = "VDD_LCD_3.3V"; 311 regulator-min-microvolt = <3300000>; 312 regulator-max-microvolt = <3300000>; 313 regulator-boot-on; 314 regulator-always-on; 315 }; 316 317 EN32KHZ_AP { 318 regulator-name = "EN32KHZ_AP"; 319 regulator-always-on; 320 }; 321 }; 322 }; 323}; 324 325&pinctrl_1 { 326 max8997_irq: max8997-irq-pins { 327 samsung,pins = "gpx0-3", "gpx0-4"; 328 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 329 }; 330}; 331 332&sdhci_0 { 333 bus-width = <4>; 334 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>; 335 pinctrl-names = "default"; 336 vmmc-supply = <&mmc_reg>; 337 status = "okay"; 338}; 339 340&sdhci_2 { 341 bus-width = <4>; 342 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; 343 pinctrl-names = "default"; 344 vmmc-supply = <&mmc_reg>; 345 status = "okay"; 346}; 347 348&serial_0 { 349 status = "okay"; 350}; 351 352&serial_1 { 353 status = "okay"; 354}; 355 356&serial_2 { 357 status = "okay"; 358}; 359 360&serial_3 { 361 status = "okay"; 362}; 363 364&rtc { 365 status = "okay"; 366 clocks = <&clock CLK_RTC>, <&pmic_ap_clk>; 367 clock-names = "rtc", "rtc_src"; 368}; 369 370&tmu { 371 status = "okay"; 372}; 373