1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Hardkernel's Exynos4412 based ODROID-U3 board device tree source
4 *
5 * Copyright (c) 2014 Marek Szyprowski <m.szyprowski@samsung.com>
6 *
7 * Device tree source file for Hardkernel's ODROID-U3 board which is based
8 * on Samsung's Exynos4412 SoC.
9 */
10
11/dts-v1/;
12#include <dt-bindings/leds/common.h>
13#include "exynos4412-odroid-common.dtsi"
14#include "exynos4412-prime.dtsi"
15
16/ {
17	model = "Hardkernel ODROID-U3 board based on Exynos4412";
18	compatible = "hardkernel,odroid-u3", "samsung,exynos4412", "samsung,exynos4";
19
20	aliases {
21		ethernet = &ethernet;
22	};
23
24	memory@40000000 {
25		device_type = "memory";
26		reg = <0x40000000 0x7ff00000>;
27	};
28
29	vbus_otg_reg: regulator-1 {
30		compatible = "regulator-fixed";
31		regulator-name = "VBUS_VDD_5.0V";
32		regulator-min-microvolt = <5000000>;
33		regulator-max-microvolt = <5000000>;
34		gpio = <&gpl2 0 GPIO_ACTIVE_HIGH>;
35		enable-active-high;
36	};
37
38	leds {
39		compatible = "gpio-leds";
40		led1 {
41			function = LED_FUNCTION_HEARTBEAT;
42			color = <LED_COLOR_ID_BLUE>;
43			gpios = <&gpc1 0 GPIO_ACTIVE_LOW>;
44			default-state = "on";
45			linux,default-trigger = "heartbeat";
46		};
47	};
48
49	fan0: pwm-fan {
50		compatible = "pwm-fan";
51		pwms = <&pwm 0 10000 0>;
52		#cooling-cells = <2>;
53		cooling-levels = <0 102 170 230>;
54	};
55};
56
57&adc {
58	vdd-supply = <&ldo10_reg>;
59	/* Nothing connected to ADC inputs, keep it disabled */
60};
61
62/* Supply for LAN9730/SMSC95xx */
63&buck8_reg {
64	regulator-name = "BUCK8_P3V3";
65	regulator-min-microvolt = <3300000>;
66	regulator-max-microvolt = <3300000>;
67};
68
69&cpu_thermal {
70	cooling-maps {
71		map0 {
72			trip = <&cpu_alert1>;
73			cooling-device = <&cpu0 9 9>, <&cpu1 9 9>,
74					 <&cpu2 9 9>, <&cpu3 9 9>,
75					 <&fan0 1 2>;
76		};
77		map1 {
78			trip = <&cpu_alert2>;
79			cooling-device = <&cpu0 15 15>, <&cpu1 15 15>,
80					 <&cpu2 15 15>, <&cpu3 15 15>,
81					 <&fan0 2 3>;
82		};
83		map2 {
84			trip = <&cpu_alert0>;
85			cooling-device = <&fan0 0 1>;
86		};
87	};
88};
89
90&hdmicec {
91	needs-hpd;
92};
93
94/* VDDQ for MSHC (eMMC card) */
95&ldo22_reg {
96	regulator-name = "LDO22_VDDQ_MMC4_2.8V";
97	regulator-min-microvolt = <2800000>;
98	regulator-max-microvolt = <2800000>;
99};
100
101&mshc_0 {
102	vqmmc-supply = <&ldo22_reg>;
103};
104
105&pwm {
106	pinctrl-0 = <&pwm0_out>;
107	pinctrl-names = "default";
108	samsung,pwm-outputs = <0>;
109	status = "okay";
110};
111
112&usb3503 {
113	clock-names = "refclk";
114	clocks = <&pmu_system_controller 0>;
115	refclk-frequency = <24000000>;
116};
117
118&ehci {
119	#address-cells = <1>;
120	#size-cells = <0>;
121	phys = <&exynos_usbphy 2>, <&exynos_usbphy 3>;
122	phy-names = "hsic0", "hsic1";
123
124	ethernet: ethernet@2 {
125		compatible = "usb424,9730";
126		reg = <2>;
127		local-mac-address = [00 00 00 00 00 00]; /* Filled in by a bootloader */
128	};
129};
130
131&hsotg {
132	dr_mode = "otg";
133	vbus-supply = <&vbus_otg_reg>;
134};
135
136&sound {
137	model = "Odroid-U3";
138	samsung,audio-widgets =
139		"Headphone", "Headphone Jack",
140		"Speakers", "Speakers";
141	samsung,audio-routing =
142		"Headphone Jack", "HPL",
143		"Headphone Jack", "HPR",
144		"Headphone Jack", "MICBIAS",
145		"IN1", "Headphone Jack",
146		"Speakers", "SPKL",
147		"Speakers", "SPKR";
148};
149
150&spi_1 {
151	pinctrl-names = "default";
152	pinctrl-0 = <&spi1_bus>;
153	cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
154	status = "okay";
155};
156