forked from Minki/linux
9f7d27fa1b
MFC device can be used without any external hardware dependencies (when IOMMU is enabled), so it can be enabled by default (like it has been already done for Exynos 542x platforms). This unifies handling of this device for Exynos3250, Exynos4 and Exynos542x platforms. Board can still include exynos-mfc-reserved-memory.dtsi to enable using this device without IOMMU being enabled. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
334 lines
6.9 KiB
Plaintext
334 lines
6.9 KiB
Plaintext
/*
|
|
* 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>
|
|
#include "exynos-mfc-reserved-memory.dtsi"
|
|
|
|
/ {
|
|
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;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&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";
|
|
};
|