summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorMarek Szyprowski <m.szyprowski@samsung.com>2014-05-08 09:43:02 +0200
committerChanho Park <chanho61.park@samsung.com>2014-08-08 15:19:57 +0900
commit677c52dbf1577d5440ac2625ee23d00dcc4a2b28 (patch)
treefb3776f3981c5a6504070a0b7f7e70e71f9c70c0 /arch
parentdf7b859d15451e2c56a1916956a2def7e3e17fa9 (diff)
downloadlinux-3.10-677c52dbf1577d5440ac2625ee23d00dcc4a2b28.tar.gz
linux-3.10-677c52dbf1577d5440ac2625ee23d00dcc4a2b28.tar.bz2
linux-3.10-677c52dbf1577d5440ac2625ee23d00dcc4a2b28.zip
ARM: dts: exynos4x12: refactor common Odroid defs and add OdroidU3 support
Moved most of the common definitions to exynos4412-odroid-common.dtsi and created exynos4412-odroidu3.dts for OdroidU3 board. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Change-Id: I30fcd329aff827e8c0e734ea6047782be03ed242
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/boot/dts/Makefile1
-rw-r--r--arch/arm/boot/dts/exynos4412-odroid-common.dtsi536
-rw-r--r--arch/arm/boot/dts/exynos4412-odroidu3.dts48
-rw-r--r--arch/arm/boot/dts/exynos4412-odroidx2.dts555
4 files changed, 603 insertions, 537 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index ec83818b85c..b04ce1fc835 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -53,6 +53,7 @@ dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
exynos4412-trats2.dtb \
exynos4412-odroidx.dtb \
exynos4412-odroidx2.dtb \
+ exynos4412-odroidu3.dtb \
exynos4412-smdk4412.dtb \
exynos4412-slp_pq.dtb \
exynos4412-origen.dtb \
diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi
new file mode 100644
index 00000000000..b42cdce6294
--- /dev/null
+++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi
@@ -0,0 +1,536 @@
+/*
+ * Common definition for Hardkernel's Exynos4412 based ODROID-X/X2/U2/U3 boards
+ * device tree source
+ *
+ * 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.
+*/
+
+#include "exynos4412.dtsi"
+
+/ {
+ memory {
+ reserved-memory {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ contig_mem: region@0 {
+ compatible = "linux,contiguous-memory-region";
+ reg = <0x0 0x4000000>;
+ linux,default-contiguous-region;
+ };
+
+ mfc_l_mem: mfc_l_region@43000000 {
+ compatible = "linux,contiguous-memory-region", "reserved-memory-region";
+ reg = <0x43000000 0x1000000>;
+ };
+
+ mfc_r_mem: mfc_r_region@51000000 {
+ compatible = "linux,contiguous-memory-region", "reserved-memory-region";
+ reg = <0x51000000 0x1000000>;
+ };
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttySAC1,115200N8 root=/dev/mmcblk0p2 rootwait earlyprintk panic=5";
+ };
+
+ firmware@0204F000 {
+ compatible = "samsung,secure-firmware";
+ reg = <0x0204F000 0x1000>;
+ };
+
+ i2s0: i2s@03830000 {
+ pinctrl-0 = <&i2s0_bus>;
+ pinctrl-names = "default";
+ status = "okay";
+ };
+
+ sound {
+ compatible = "samsung,odroidx2-audio";
+ samsung,i2s-controller = <&i2s0>;
+ samsung,audio-codec = <&max98090>;
+ };
+
+ mshc@12550000 {
+ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
+ pinctrl-names = "default";
+ status = "okay";
+
+ num-slots = <1>;
+ supports-highspeed;
+ broken-cd;
+ fifo-depth = <0x80>;
+ card-detect-delay = <200>;
+ clock-frequency = <400000000>;
+ samsung,dw-mshc-ciu-div = <3>;
+ samsung,dw-mshc-sdr-timing = <2 3 3>;
+ samsung,dw-mshc-ddr-timing = <1 2 3>;
+
+ slot@0 {
+ reg = <0>;
+ bus-width = <8>;
+ };
+ };
+
+ sdhci@12530000 {
+ bus-width = <4>;
+ pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
+ pinctrl-names = "default";
+ status = "okay";
+ };
+
+ serial@13800000 {
+ status = "okay";
+ };
+
+ serial@13810000 {
+ status = "okay";
+ };
+
+ fixed-rate-clocks {
+ xxti {
+ compatible = "samsung,clock-xxti";
+ clock-frequency = <0>;
+ };
+
+ xusbxti {
+ compatible = "samsung,clock-xusbxti";
+ clock-frequency = <24000000>;
+ };
+ };
+
+ i2c@13860000 { // i2c0
+ samsung,i2c-sda-delay = <100>;
+ samsung,i2c-slave-addr = <0x10>; // ?
+ samsung,i2c-max-bus-freq = <100000>;
+ pinctrl-0 = <&i2c0_bus>;
+ pinctrl-names = "default";
+ status = "okay";
+
+ usb3503: usb3503@08 {
+ compatible = "smsc,usb3503";
+ reg = <0x08>;
+
+ connect-gpios = <&gpx3 4 0>;
+ intn-gpios = <&gpx3 0 0>;
+ reset-gpios = <&gpx3 5 0>;
+ initial-mode = <1>;
+
+ };
+
+ max77686_pmic@09 {
+ compatible = "maxim,max77686";
+ reg = <0x09>;
+
+ voltage-regulators {
+ ldo1_reg: ldo@1 {
+ regulator-compatible = "LDO1";
+ regulator-name = "VALIVE_1.0V_AP";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo2_reg: ldo@2 {
+ regulator-compatible = "LDO2";
+ regulator-name = "VDDQ_M1M2_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo3_reg: ldo@3 {
+ regulator-compatible = "LDO3";
+ regulator-name = "VDDQ_M0_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo4_reg: ldo@4 {
+ regulator-compatible = "LDO4";
+ regulator-name = "VDDQ_MMC2_2.8V";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ ldo5_reg: ldo@5 {
+ regulator-compatible = "LDO5";
+ regulator-name = "VDDQ_MMC13_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo6_reg: ldo@6 {
+ regulator-compatible = "LDO6";
+ regulator-name = "VDD_MPLL_1.0V";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo7_reg: ldo@7 {
+ regulator-compatible = "LDO7";
+ regulator-name = "VDD_VPLL_1.0V";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo8_reg: ldo@8 {
+ regulator-compatible = "LDO8";
+ regulator-name = "VDD10_HDMI_1.0V";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo9_reg: ldo@9 {
+ regulator-compatible = "LDO9";
+ regulator-name = "VDD_VTCORE_1.0V";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo10_reg: ldo@10 {
+ regulator-compatible = "LDO10";
+ regulator-name = "VDDQ_MIPIHSI_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo11_reg: ldo@11 {
+ regulator-compatible = "LDO11";
+ regulator-name = "VDD18_ABB1_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo12_reg: ldo@12 {
+ regulator-compatible = "LDO12";
+ regulator-name = "VDD33_UOTG_3.3V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ ldo13_reg: ldo@13 {
+ regulator-compatible = "LDO13";
+ regulator-name = "VDDQ_C2C_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo14_reg: ldo@14 {
+ regulator-compatible = "LDO14";
+ regulator-name = "VDD18_ABB2_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo15_reg: ldo@15 {
+ regulator-compatible = "LDO15";
+ regulator-name = "VDD10_HSIC_1.0V";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+
+ ldo16_reg: ldo@16 {
+ regulator-compatible = "LDO16";
+ regulator-name = "VDD18_HSIC_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo17_reg: ldo@17 {
+ regulator-compatible = "LDO17";
+ regulator-name = "VDDQ_CAM_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo18_reg: ldo@18 {
+ regulator-compatible = "LDO18";
+ regulator-name = "VDD_LDO18_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo19_reg: ldo@19 {
+ regulator-compatible = "LDO19";
+ regulator-name = "VDD_VTCAM_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo20_reg: ldo@20 {
+ regulator-compatible = "LDO20";
+ regulator-name = "VDD_LDO20_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ ldo21_reg: ldo@21 {
+ regulator-compatible = "LDO21";
+ regulator-name = "VDD_SDCARD_3.3V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ ldo22_reg: ldo@22 {
+ regulator-compatible = "LDO22";
+ regulator-name = "VDD_LDO22_2.8V";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ ldo23_reg: ldo@23 {
+ regulator-compatible = "LDO23";
+ regulator-name = "VDD_TOUCH_2.8V";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ ldo24_reg: ldo@24 {
+ regulator-compatible = "LDO24";
+ regulator-name = "VDD_TOUCHLED_3.3V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ ldo25_reg: ldo@25 {
+ regulator-compatible = "LDO25";
+ regulator-name = "VDDQ_LCD_1.8V";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ };
+
+ ldo26_reg: ldo@26 {
+ regulator-compatible = "LDO26";
+ regulator-name = "VDD_MOTOR_3.0V";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ buck1_reg: buck@1 {
+ regulator-compatible = "BUCK1";
+ regulator-name = "VDD_MIF_1.0V";
+ regulator-min-microvolt = <800000>;
+ regulator-max-microvolt = <1100000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ buck2_reg: buck@2 {
+ regulator-compatible = "BUCK2";
+ regulator-name = "VDD_ARM_1.3V";
+ regulator-min-microvolt = <800000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ buck3_reg: buck@3 {
+ regulator-compatible = "BUCK3";
+ regulator-name = "VDD_INT_1.0V";
+ regulator-min-microvolt = <800000>;
+ regulator-max-microvolt = <1150000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ buck4_reg: buck@4 {
+ regulator-compatible = "BUCK4";
+ regulator-name = "VDD_G3D_1.0V";
+ regulator-min-microvolt = <850000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-boot-on;
+ };
+
+ buck5_reg: buck@5 {
+ regulator-compatible = "BUCK5";
+ regulator-name = "VDDQ_CKEM1M2_1.2V";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ };
+
+ buck6_reg: buck@6 {
+ regulator-compatible = "BUCK6";
+ regulator-name = "VDD_INL_1.35V";
+ regulator-min-microvolt = <1350000>;
+ regulator-max-microvolt = <1350000>;
+ regulator-always-on;
+ };
+
+ buck7_reg: buck@7 {
+ regulator-compatible = "BUCK7";
+ regulator-name = "VDD_INL_2.0V";
+ regulator-min-microvolt = <2000000>;
+ regulator-max-microvolt = <2000000>;
+ regulator-always-on;
+ };
+
+ buck8_reg: buck@8 {
+ regulator-compatible = "BUCK8";
+ regulator-name = "VDD_BUCK8_2.8V";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ buck9_reg: buck@9 {
+ regulator-compatible = "BUCK9";
+ regulator-name = "VDD_BUCK9_1.2V";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ };
+
+ };
+
+ };
+ };
+
+ exynos-usbphy@125B0000 {
+ status = "okay";
+ };
+
+ hsotg@12480000 {
+ status = "okay";
+ vusb_d-supply = <&ldo15_reg>;
+ vusb_a-supply = <&ldo12_reg>;
+ };
+
+ ehci: ehci@12580000 {
+ status = "okay";
+ vusb_d-supply = <&ldo15_reg>;
+ vusb_a-supply = <&ldo12_reg>;
+ };
+
+ camera {
+ status = "okay";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&cam_port_a_clk_idle>;
+
+ fimc_0: fimc@11800000 {
+ status = "okay";
+ };
+
+ fimc_1: fimc@11810000 {
+ status = "okay";
+ };
+
+ fimc_2: fimc@11820000 {
+ status = "okay";
+ };
+
+ fimc_3: fimc@11830000 {
+ status = "okay";
+ };
+ };
+
+ mfc: codec@13400000 {
+ status = "okay";
+
+ memport@0 {
+ memory-region = <&mfc_l_mem>;
+ };
+
+ memport@1 {
+ memory-region = <&mfc_r_mem>;
+ };
+ };
+
+ i2c@13870000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_bus>;
+ status = "okay";
+ max98090: max98090@10 {
+ compatible = "maxim,max98090";
+ reg = <0x10>;
+ interrupt-parent = <&gpx0>;
+ interrupts = <1 0>;
+ };
+ };
+
+ i2c@13880000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2_bus>;
+ status = "okay";
+ hdmiddc@37 {
+ compatible = "samsung,exynos5-hdmiddc";
+ reg = <0x37>;
+ };
+ };
+
+ gpu@13000000 {
+ status = "okay";
+ vdd_g3d-supply = <&buck4_reg>;
+ };
+
+ cpufreq {
+ freq_table = <1400000 1300000 1200000 1100000 1000000
+ 900000 800000 700000 600000 500000 400000 300000
+ 200000>;
+ boost_freq = <1500000>;
+ vdd_arm-supply = <&buck2_reg>;
+ status = "okay";
+ };
+
+ hdmi@12D00000 {
+ hpd-gpio = <&gpx3 7 0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&hdmi_hpd>;
+ /*
+ * HDMI_EN is a dummy regulator on Origen.
+ * Therefore LDO8 is used instead because
+ * it is enabled at the same time as hdmi-en
+ */
+ hdmi-en-supply = <&ldo8_reg>;
+ vdd-supply = <&ldo8_reg>;
+ vdd_osc-supply = <&ldo10_reg>;
+ vdd_pll-supply = <&ldo8_reg>;
+ status = "okay";
+ };
+};
+
+&pinctrl_1 {
+ gpio_power_key: power_key {
+ samsung,pins = "gpx1-3";
+ samsung,pin-pud = <0>;
+ };
+
+ gpio_home_key: home_key {
+ samsung,pins = "gpx2-2";
+ samsung,pin-pud = <1>;
+ };
+
+ hdmi_hpd: hdmi-hpd {
+ samsung,pins = "gpx3-7";
+ samsung,pin-pud = <1>;
+ };
+};
diff --git a/arch/arm/boot/dts/exynos4412-odroidu3.dts b/arch/arm/boot/dts/exynos4412-odroidu3.dts
new file mode 100644
index 00000000000..85ac5329cca
--- /dev/null
+++ b/arch/arm/boot/dts/exynos4412-odroidu3.dts
@@ -0,0 +1,48 @@
+/*
+ * Hardkernel's Exynos4412 based ODROID-U3 board device tree source
+ *
+ * Copyright (c) 2014 Marek Szyprowski <m.szyprowski@samsung.com>
+ *
+ * Device tree source file for Hardkernel's ODROID-U3 board which is based
+ * on Samsung's Exynos4412 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 "exynos4412-odroid-common.dtsi"
+
+/ {
+ model = "Hardkernel ODROID-U3 board based on Exynos4412";
+ compatible = "hardkernel,odroid-u3", "samsung,exynos4412", "samsung,exynos4";
+
+ memory {
+ reg = <0x40000000 0x40000000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ led1 {
+ label = "led1:heart";
+ gpios = <&gpc1 0 1>;
+ default-state = "on";
+ linux,default-trigger = "heartbeat";
+ };
+ };
+};
+
+&usb3503 {
+ clock-names = "refclk";
+ clocks = <&clock 21>;
+};
+
+&ehci {
+ port@1 {
+ status = "okay";
+ };
+ port@2 {
+ status = "okay";
+ };
+};
diff --git a/arch/arm/boot/dts/exynos4412-odroidx2.dts b/arch/arm/boot/dts/exynos4412-odroidx2.dts
index 2fcebd04ddc..98166e5365f 100644
--- a/arch/arm/boot/dts/exynos4412-odroidx2.dts
+++ b/arch/arm/boot/dts/exynos4412-odroidx2.dts
@@ -3,8 +3,8 @@
*
* Copyright (c) 2012 Dongjin Kim <tobetter@gmail.com>
*
- * Device tree source file for Hardkernel's ODROID-X2 board which is based on
- * Samsung's Exynos4412 SoC.
+ * Device tree source file for Hardkernel's ODROID-X2 board which is based
+ * on Samsung's Exynos4412 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
@@ -12,59 +12,14 @@
*/
/dts-v1/;
-#include "exynos4412.dtsi"
+#include "exynos4412-odroid-common.dtsi"
/ {
model = "Hardkernel ODROID-X2 board based on Exynos4412";
- compatible = "hardkernel,odroid-x2", "samsung,exynos4412";
+ compatible = "hardkernel,odroid-x2", "samsung,exynos4412", "samsung,exynos4";
memory {
- reg = <0x40000000 0x10000000
- 0x50000000 0x10000000
- 0x60000000 0x10000000
- 0x70000000 0x10000000>;
-
- reserved-memory {
- #address-cells = <1>;
- #size-cells = <1>;
-
- contig_mem: region@0 {
- compatible = "linux,contiguous-memory-region";
- reg = <0x0 0x4000000>;
- linux,default-contiguous-region;
- };
-
- mfc_l_mem: mfc_l_region@43000000 {
- compatible = "linux,contiguous-memory-region", "reserved-memory-region";
- reg = <0x43000000 0x1000000>;
- };
-
- mfc_r_mem: mfc_r_region@51000000 {
- compatible = "linux,contiguous-memory-region", "reserved-memory-region";
- reg = <0x51000000 0x1000000>;
- };
- };
- };
-
- chosen {
- bootargs = "console=ttySAC1,115200N8 root=/dev/mmcblk0p2 rootwait earlyprintk panic=5";
- };
-
- firmware@0204F000 {
- compatible = "samsung,secure-firmware";
- reg = <0x0204F000 0x1000>;
- };
-
- i2s0: i2s@03830000 {
- pinctrl-0 = <&i2s0_bus>;
- pinctrl-names = "default";
- status = "okay";
- };
-
- sound {
- compatible = "samsung,odroidx2-audio";
- samsung,i2s-controller = <&i2s0>;
- samsung,audio-codec = <&max98090>;
+ reg = <0x40000000 0x40000000>;
};
leds {
@@ -109,28 +64,7 @@
};
};
- mshc@12550000 {
- pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
- pinctrl-names = "default";
- status = "okay";
-
- num-slots = <1>;
- supports-highspeed;
- broken-cd;
- fifo-depth = <0x80>;
- card-detect-delay = <200>;
- clock-frequency = <400000000>;
- samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <2 3 3>;
- samsung,dw-mshc-ddr-timing = <1 2 3>;
-
- slot@0 {
- reg = <0>;
- bus-width = <8>;
- };
- };
-
- regulator_p3v3: fixed-regulator-0 {
+ regulator_p3v3 {
compatible = "regulator-fixed";
regulator-name = "p3v3_en";
regulator-min-microvolt = <3300000>;
@@ -141,474 +75,21 @@
regulator-boot-on;
};
- sdhci@12530000 {
- bus-width = <4>;
- pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
- pinctrl-names = "default";
- status = "okay";
- };
-
- serial@13800000 {
- status = "okay";
- };
-
- serial@13810000 {
- status = "okay";
- };
-
- serial@13820000 {
- status = "okay";
- };
-
- serial@13830000 {
- status = "okay";
- };
-
- fixed-rate-clocks {
- xxti {
- compatible = "samsung,clock-xxti";
- clock-frequency = <0>;
- };
-
- xusbxti {
- compatible = "samsung,clock-xusbxti";
- clock-frequency = <24000000>;
- };
- };
-
- i2c@13860000 { // i2c0
- samsung,i2c-sda-delay = <100>;
- samsung,i2c-slave-addr = <0x10>; // ?
- samsung,i2c-max-bus-freq = <100000>;
- pinctrl-0 = <&i2c0_bus>;
- pinctrl-names = "default";
- status = "okay";
-
- usb3503@08 {
- compatible = "smsc,usb3503";
- reg = <0x08>;
-
- connect-gpios = <&gpx3 4 0>;
- intn-gpios = <&gpx3 0 0>;
- reset-gpios = <&gpx3 5 0>;
- initial-mode = <1>;
-
- };
-
- max77686_pmic@09 {
- compatible = "maxim,max77686";
- reg = <0x09>;
-
- voltage-regulators {
- ldo1_reg: ldo@1 {
- regulator-compatible = "LDO1";
- regulator-name = "VALIVE_1.0V_AP";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo2_reg: ldo@2 {
- regulator-compatible = "LDO2";
- regulator-name = "VDDQ_M1M2_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo3_reg: ldo@3 {
- regulator-compatible = "LDO3";
- regulator-name = "VDDQ_M0_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo4_reg: ldo@4 {
- regulator-compatible = "LDO4";
- regulator-name = "VDDQ_MMC2_2.8V";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- };
-
- ldo5_reg: ldo@5 {
- regulator-compatible = "LDO5";
- regulator-name = "VDDQ_MMC13_1V8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo6_reg: ldo@6 {
- regulator-compatible = "LDO6";
- regulator-name = "VDD_MPLL_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo7_reg: ldo@7 {
- regulator-compatible = "LDO7";
- regulator-name = "VDD_VPLL_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo8_reg: ldo@8 {
- regulator-compatible = "LDO8";
- regulator-name = "VDD10_HDMI_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo9_reg: ldo@9 {
- regulator-compatible = "LDO9";
- regulator-name = "VDD_VTCORE_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo10_reg: ldo@10 {
- regulator-compatible = "LDO10";
- regulator-name = "VDDQ_MIPIHSI_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo11_reg: ldo@11 {
- regulator-compatible = "LDO11";
- regulator-name = "VDD18_ABB1_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo12_reg: ldo@12 {
- regulator-compatible = "LDO12";
- regulator-name = "VDD33_UOTG_3.3V";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- ldo13_reg: ldo@13 {
- regulator-compatible = "LDO13";
- regulator-name = "VDDQ_C2C_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo14_reg: ldo@14 {
- regulator-compatible = "LDO14";
- regulator-name = "VDD18_ABB2_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo15_reg: ldo@15 {
- regulator-compatible = "LDO15";
- regulator-name = "VDD10_HSIC_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- };
-
- ldo16_reg: ldo@16 {
- regulator-compatible = "LDO16";
- regulator-name = "VDD18_HSIC_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo17_reg: ldo@17 {
- regulator-compatible = "LDO17";
- regulator-name = "VDDQ_CAM_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo18_reg: ldo@18 {
- regulator-compatible = "LDO18";
- regulator-name = "VDD_LDO18_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo19_reg: ldo@19 {
- regulator-compatible = "LDO19";
- regulator-name = "VDD_VTCAM_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo20_reg: ldo@20 {
- regulator-compatible = "LDO20";
- regulator-name = "VDD_LDO20_1V8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo21_reg: ldo@21 {
- regulator-compatible = "LDO21";
- regulator-name = "VDD_SDCARD_3.3V";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- ldo22_reg: ldo@22 {
- regulator-compatible = "LDO22";
- regulator-name = "VDD_LDO22_2.8V";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- };
-
- ldo23_reg: ldo@23 {
- regulator-compatible = "LDO23";
- regulator-name = "VDD_TOUCH_2.8V";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- };
-
- ldo24_reg: ldo@24 {
- regulator-compatible = "LDO24";
- regulator-name = "VDD_TOUCHLED_3.3V";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- ldo25_reg: ldo@25 {
- regulator-compatible = "LDO25";
- regulator-name = "VDDQ_LCD_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-boot-on;
- };
-
- ldo26_reg: ldo@26 {
- regulator-compatible = "LDO26";
- regulator-name = "VDD_MOTOR_3.0V";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- buck1_reg: buck@1 {
- regulator-compatible = "BUCK1";
- regulator-name = "VDD_MIF_1.0V";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1100000>;
- regulator-always-on;
- regulator-boot-on;
- };
-
- buck2_reg: buck@2 {
- regulator-compatible = "BUCK2";
- regulator-name = "VDD_ARM_1.3V";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- regulator-boot-on;
- };
-
- buck3_reg: buck@3 {
- regulator-compatible = "BUCK3";
- regulator-name = "VDD_INT_1.0V";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1150000>;
- regulator-always-on;
- regulator-boot-on;
- };
-
- buck4_reg: buck@4 {
- regulator-compatible = "BUCK4";
- regulator-name = "VDD_G3D_1.0V";
- regulator-min-microvolt = <850000>;
- regulator-max-microvolt = <1200000>;
- regulator-boot-on;
- };
-
- buck5_reg: buck@5 {
- regulator-compatible = "BUCK5";
- regulator-name = "VDDQ_CKEM1M2_1.2V";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- };
-
- buck6_reg: buck@6 {
- regulator-compatible = "BUCK6";
- regulator-name = "VDD_INL_1.35V";
- regulator-min-microvolt = <1350000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- };
-
- buck7_reg: buck@7 {
- regulator-compatible = "BUCK7";
- regulator-name = "VDD_INL_2.0V";
- regulator-min-microvolt = <2000000>;
- regulator-max-microvolt = <2000000>;
- regulator-always-on;
- };
-
- buck8_reg: buck@8 {
- regulator-compatible = "BUCK8";
- regulator-name = "VDD_BUCK8_2.8V";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- };
-
- buck9_reg: buck@9 {
- regulator-compatible = "BUCK9";
- regulator-name = "VDD_BUCK9_1.2V";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- };
-
- };
-
- };
- };
-
- hsotg@12480000 {
- status = "okay";
- vusb_d-supply = <&ldo15_reg>;
- vusb_a-supply = <&ldo12_reg>;
- };
-
- ehci@12580000 {
- status = "okay";
- vusb_d-supply = <&ldo15_reg>;
- vusb_a-supply = <&ldo12_reg>;
- port@1 {
- status = "okay";
- };
- };
-
- exynos-usbphy@125B0000 {
- status = "okay";
- };
-
- camera {
- status = "okay";
-
- pinctrl-names = "default";
- pinctrl-0 = <&cam_port_a_clk_idle>;
-
- fimc_0: fimc@11800000 {
- status = "okay";
- };
-
- fimc_1: fimc@11810000 {
- status = "okay";
- };
-
- fimc_2: fimc@11820000 {
- status = "okay";
- };
-
- fimc_3: fimc@11830000 {
- status = "okay";
- };
- };
-
- mfc: codec@13400000 {
- status = "okay";
-
- memport@0 {
- memory-region = <&mfc_l_mem>;
- };
-
- memport@1 {
- memory-region = <&mfc_r_mem>;
- };
- };
-
- i2c@13870000 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c1_bus>;
- status = "okay";
- max98090: max98090@10 {
- compatible = "maxim,max98090";
- reg = <0x10>;
- interrupt-parent = <&gpx0>;
- interrupts = <1 0>;
- };
- };
-
- i2c@13880000 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c2_bus>;
- status = "okay";
- hdmiddc@37 {
- compatible = "samsung,exynos5-hdmiddc";
- reg = <0x37>;
- };
- };
-
- gpu@13000000 {
- status = "okay";
- vdd_g3d-supply = <&buck4_reg>;
- };
-
- cpufreq {
- freq_table = <1400000 1300000 1200000 1100000 1000000
- 900000 800000 700000 600000 500000 400000 300000
- 200000>;
- boost_freq = <1500000>;
- vdd_arm-supply = <&buck2_reg>;
- status = "okay";
- };
-
- hdmi@12D00000 {
- hpd-gpio = <&gpx3 7 0>;
- pinctrl-names = "default";
- pinctrl-0 = <&hdmi_hpd>;
- /*
- * HDMI_EN is a dummy regulator on Origen.
- * Therefore LDO8 is used instead because
- * it is enabled at the same time as hdmi-en
- */
- hdmi-en-supply = <&ldo8_reg>;
- vdd-supply = <&ldo8_reg>;
- vdd_osc-supply = <&ldo10_reg>;
- vdd_pll-supply = <&ldo8_reg>;
- status = "okay";
+ usbhubxti: oscillator@1 {
+ compatible = "fixed-clock";
+ clock-output-names = "usbhubxti";
+ clock-frequency = <26000000>;
+ #clock-cells = <0>;
};
};
-&pinctrl_1 {
- gpio_power_key: power_key {
- samsung,pins = "gpx1-3";
- samsung,pin-pud = <0>;
- };
-
- gpio_home_key: home_key {
- samsung,pins = "gpx2-2";
- samsung,pin-pud = <1>;
- };
+&usb3503 {
+ clock-names = "refclk";
+ clocks = <&usbhubxti>;
+};
- hdmi_hpd: hdmi-hpd {
- samsung,pins = "gpx3-7";
- samsung,pin-pud = <1>;
+&ehci {
+ port@1 {
+ status = "okay";
};
};
-