|  | /* | 
|  | * Samsung's Exynos4210 based Origen board device tree source | 
|  | * | 
|  | * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. | 
|  | *		http://www.samsung.com | 
|  | * Copyright (c) 2010-2011 Linaro Ltd. | 
|  | *		www.linaro.org | 
|  | * | 
|  | * Device tree source file for Insignal's Origen board which is based on | 
|  | * Samsung's Exynos4210 SoC. | 
|  | * | 
|  | * This program is free software; you can redistribute it and/or modify | 
|  | * it under the terms of the GNU General Public License version 2 as | 
|  | * published by the Free Software Foundation. | 
|  | */ | 
|  |  | 
|  | /dts-v1/; | 
|  | #include "exynos4210.dtsi" | 
|  | #include <dt-bindings/gpio/gpio.h> | 
|  | #include <dt-bindings/input/input.h> | 
|  |  | 
|  | / { | 
|  | model = "Insignal Origen evaluation board based on Exynos4210"; | 
|  | compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4"; | 
|  |  | 
|  | memory { | 
|  | reg = <0x40000000 0x10000000 | 
|  | 0x50000000 0x10000000 | 
|  | 0x60000000 0x10000000 | 
|  | 0x70000000 0x10000000>; | 
|  | }; | 
|  |  | 
|  | chosen { | 
|  | bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc"; | 
|  | stdout-path = &serial_2; | 
|  | }; | 
|  |  | 
|  | regulators { | 
|  | compatible = "simple-bus"; | 
|  | #address-cells = <1>; | 
|  | #size-cells = <0>; | 
|  |  | 
|  | mmc_reg: regulator@0 { | 
|  | compatible = "regulator-fixed"; | 
|  | reg = <0>; | 
|  | regulator-name = "VMEM_VDD_2.8V"; | 
|  | regulator-min-microvolt = <2800000>; | 
|  | regulator-max-microvolt = <2800000>; | 
|  | gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; | 
|  | enable-active-high; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | gpio_keys { | 
|  | compatible = "gpio-keys"; | 
|  | #address-cells = <1>; | 
|  | #size-cells = <0>; | 
|  |  | 
|  | up { | 
|  | label = "Up"; | 
|  | gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <KEY_UP>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | down { | 
|  | label = "Down"; | 
|  | gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <KEY_DOWN>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | back { | 
|  | label = "Back"; | 
|  | gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <KEY_BACK>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | home { | 
|  | label = "Home"; | 
|  | gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <KEY_HOME>; | 
|  | wakeup-source; | 
|  | }; | 
|  |  | 
|  | menu { | 
|  | label = "Menu"; | 
|  | gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; | 
|  | linux,code = <KEY_MENU>; | 
|  | wakeup-source; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | leds { | 
|  | compatible = "gpio-leds"; | 
|  | status { | 
|  | gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; | 
|  | linux,default-trigger = "heartbeat"; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | fixed-rate-clocks { | 
|  | xxti { | 
|  | compatible = "samsung,clock-xxti"; | 
|  | clock-frequency = <0>; | 
|  | }; | 
|  |  | 
|  | xusbxti { | 
|  | compatible = "samsung,clock-xusbxti"; | 
|  | clock-frequency = <24000000>; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | display-timings { | 
|  | native-mode = <&timing0>; | 
|  | timing0: timing { | 
|  | clock-frequency = <47500000>; | 
|  | hactive = <1024>; | 
|  | vactive = <600>; | 
|  | hfront-porch = <64>; | 
|  | hback-porch = <16>; | 
|  | hsync-len = <48>; | 
|  | vback-porch = <64>; | 
|  | vfront-porch = <16>; | 
|  | vsync-len = <3>; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | &cpu0 { | 
|  | cpu0-supply = <&buck1_reg>; | 
|  | }; | 
|  |  | 
|  | &fimd { | 
|  | pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; | 
|  | pinctrl-names = "default"; | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &i2c_0 { | 
|  | status = "okay"; | 
|  | samsung,i2c-sda-delay = <100>; | 
|  | samsung,i2c-max-bus-freq = <20000>; | 
|  | pinctrl-0 = <&i2c0_bus>; | 
|  | pinctrl-names = "default"; | 
|  |  | 
|  | max8997_pmic@66 { | 
|  | compatible = "maxim,max8997-pmic"; | 
|  | reg = <0x66>; | 
|  | interrupt-parent = <&gpx0>; | 
|  | interrupts = <4 0>, <3 0>; | 
|  |  | 
|  | max8997,pmic-buck1-dvs-voltage = <1350000>; | 
|  | max8997,pmic-buck2-dvs-voltage = <1100000>; | 
|  | max8997,pmic-buck5-dvs-voltage = <1200000>; | 
|  |  | 
|  | regulators { | 
|  | ldo1_reg: LDO1 { | 
|  | regulator-name = "VDD_ABB_3.3V"; | 
|  | regulator-min-microvolt = <3300000>; | 
|  | regulator-max-microvolt = <3300000>; | 
|  | }; | 
|  |  | 
|  | ldo2_reg: LDO2 { | 
|  | regulator-name = "VDD_ALIVE_1.1V"; | 
|  | regulator-min-microvolt = <1100000>; | 
|  | regulator-max-microvolt = <1100000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo3_reg: LDO3 { | 
|  | regulator-name = "VMIPI_1.1V"; | 
|  | regulator-min-microvolt = <1100000>; | 
|  | regulator-max-microvolt = <1100000>; | 
|  | }; | 
|  |  | 
|  | ldo4_reg: LDO4 { | 
|  | regulator-name = "VDD_RTC_1.8V"; | 
|  | regulator-min-microvolt = <1800000>; | 
|  | regulator-max-microvolt	= <1800000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo6_reg: LDO6 { | 
|  | regulator-name = "VMIPI_1.8V"; | 
|  | regulator-min-microvolt = <1800000>; | 
|  | regulator-max-microvolt	= <1800000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo7_reg: LDO7 { | 
|  | regulator-name = "VDD_AUD_1.8V"; | 
|  | regulator-min-microvolt = <1800000>; | 
|  | regulator-max-microvolt	= <1800000>; | 
|  | }; | 
|  |  | 
|  | ldo8_reg: LDO8 { | 
|  | regulator-name = "VADC_3.3V"; | 
|  | regulator-min-microvolt = <3300000>; | 
|  | regulator-max-microvolt	= <3300000>; | 
|  | }; | 
|  |  | 
|  | ldo9_reg: LDO9 { | 
|  | regulator-name = "DVDD_SWB_2.8V"; | 
|  | regulator-min-microvolt = <2800000>; | 
|  | regulator-max-microvolt	= <2800000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo10_reg: LDO10 { | 
|  | regulator-name = "VDD_PLL_1.1V"; | 
|  | regulator-min-microvolt = <1100000>; | 
|  | regulator-max-microvolt	= <1100000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo11_reg: LDO11 { | 
|  | regulator-name = "VDD_AUD_3V"; | 
|  | regulator-min-microvolt = <3000000>; | 
|  | regulator-max-microvolt	= <3000000>; | 
|  | }; | 
|  |  | 
|  | ldo14_reg: LDO14 { | 
|  | regulator-name = "AVDD18_SWB_1.8V"; | 
|  | regulator-min-microvolt = <1800000>; | 
|  | regulator-max-microvolt	= <1800000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo17_reg: LDO17 { | 
|  | regulator-name = "VDD_SWB_3.3V"; | 
|  | regulator-min-microvolt = <3300000>; | 
|  | regulator-max-microvolt	= <3300000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | ldo21_reg: LDO21 { | 
|  | regulator-name = "VDD_MIF_1.2V"; | 
|  | regulator-min-microvolt = <1200000>; | 
|  | regulator-max-microvolt	= <1200000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | buck1_reg: BUCK1 { | 
|  | /* | 
|  | * HACK: The real name is VDD_ARM_1.2V, | 
|  | * but exynos-cpufreq does not support | 
|  | * DT-based regulator lookup yet. | 
|  | */ | 
|  | regulator-name = "vdd_arm"; | 
|  | regulator-min-microvolt = <950000>; | 
|  | regulator-max-microvolt	= <1350000>; | 
|  | regulator-always-on; | 
|  | regulator-boot-on; | 
|  | }; | 
|  |  | 
|  | buck2_reg: BUCK2 { | 
|  | regulator-name = "VDD_INT_1.1V"; | 
|  | regulator-min-microvolt = <900000>; | 
|  | regulator-max-microvolt	= <1100000>; | 
|  | regulator-always-on; | 
|  | regulator-boot-on; | 
|  | }; | 
|  |  | 
|  | buck3_reg: BUCK3 { | 
|  | regulator-name = "VDD_G3D_1.1V"; | 
|  | regulator-min-microvolt = <900000>; | 
|  | regulator-max-microvolt = <1100000>; | 
|  | }; | 
|  |  | 
|  | buck5_reg: BUCK5 { | 
|  | regulator-name = "VDDQ_M1M2_1.2V"; | 
|  | regulator-min-microvolt = <1200000>; | 
|  | regulator-max-microvolt = <1200000>; | 
|  | regulator-always-on; | 
|  | }; | 
|  |  | 
|  | buck7_reg: BUCK7 { | 
|  | regulator-name = "VDD_LCD_3.3V"; | 
|  | regulator-min-microvolt = <3300000>; | 
|  | regulator-max-microvolt = <3300000>; | 
|  | regulator-boot-on; | 
|  | regulator-always-on; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  | }; | 
|  |  | 
|  | &mfc { | 
|  | samsung,mfc-r = <0x43000000 0x800000>; | 
|  | samsung,mfc-l = <0x51000000 0x800000>; | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &sdhci_0 { | 
|  | bus-width = <4>; | 
|  | pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>; | 
|  | pinctrl-names = "default"; | 
|  | vmmc-supply = <&mmc_reg>; | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &sdhci_2 { | 
|  | bus-width = <4>; | 
|  | pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; | 
|  | pinctrl-names = "default"; | 
|  | vmmc-supply = <&mmc_reg>; | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &serial_0 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &serial_1 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &serial_2 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &serial_3 { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &rtc { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &tmu { | 
|  | status = "okay"; | 
|  | }; | 
|  |  | 
|  | &watchdog { | 
|  | status = "okay"; | 
|  | }; |