xref: /freebsd-src/sys/contrib/device-tree/src/arm/samsung/exynos4412-tiny4412.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * FriendlyARM's Exynos4412 based TINY4412 board device tree source
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (c) 2013 Alex Ling <kasimling@gmail.com>
6*f126890aSEmmanuel Vadot *
7*f126890aSEmmanuel Vadot * Device tree source file for FriendlyARM's TINY4412 board which is based on
8*f126890aSEmmanuel Vadot * Samsung's Exynos4412 SoC.
9*f126890aSEmmanuel Vadot */
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/dts-v1/;
12*f126890aSEmmanuel Vadot#include "exynos4412.dtsi"
13*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
14*f126890aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
15*f126890aSEmmanuel Vadot
16*f126890aSEmmanuel Vadot/ {
17*f126890aSEmmanuel Vadot	model = "FriendlyARM TINY4412 board based on Exynos4412";
18*f126890aSEmmanuel Vadot	compatible = "friendlyarm,tiny4412", "samsung,exynos4412", "samsung,exynos4";
19*f126890aSEmmanuel Vadot
20*f126890aSEmmanuel Vadot	aliases {
21*f126890aSEmmanuel Vadot		mmc0 = &sdhci_2;
22*f126890aSEmmanuel Vadot	};
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot	chosen {
25*f126890aSEmmanuel Vadot		stdout-path = &serial_0;
26*f126890aSEmmanuel Vadot	};
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot	memory@40000000 {
29*f126890aSEmmanuel Vadot		device_type = "memory";
30*f126890aSEmmanuel Vadot		reg = <0x40000000 0x40000000>;
31*f126890aSEmmanuel Vadot	};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot	leds {
34*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
35*f126890aSEmmanuel Vadot
36*f126890aSEmmanuel Vadot		led1 {
37*f126890aSEmmanuel Vadot			label = "led1";
38*f126890aSEmmanuel Vadot			function = LED_FUNCTION_HEARTBEAT;
39*f126890aSEmmanuel Vadot			gpios = <&gpm4 0 GPIO_ACTIVE_LOW>;
40*f126890aSEmmanuel Vadot			default-state = "off";
41*f126890aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
42*f126890aSEmmanuel Vadot		};
43*f126890aSEmmanuel Vadot
44*f126890aSEmmanuel Vadot		led2 {
45*f126890aSEmmanuel Vadot			label = "led2";
46*f126890aSEmmanuel Vadot			gpios = <&gpm4 1 GPIO_ACTIVE_LOW>;
47*f126890aSEmmanuel Vadot			default-state = "off";
48*f126890aSEmmanuel Vadot		};
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot		led3 {
51*f126890aSEmmanuel Vadot			label = "led3";
52*f126890aSEmmanuel Vadot			gpios = <&gpm4 2 GPIO_ACTIVE_LOW>;
53*f126890aSEmmanuel Vadot			default-state = "off";
54*f126890aSEmmanuel Vadot		};
55*f126890aSEmmanuel Vadot
56*f126890aSEmmanuel Vadot		led4 {
57*f126890aSEmmanuel Vadot			label = "led4";
58*f126890aSEmmanuel Vadot			function = LED_FUNCTION_DISK_ACTIVITY;
59*f126890aSEmmanuel Vadot			gpios = <&gpm4 3 GPIO_ACTIVE_LOW>;
60*f126890aSEmmanuel Vadot			default-state = "off";
61*f126890aSEmmanuel Vadot			linux,default-trigger = "mmc0";
62*f126890aSEmmanuel Vadot		};
63*f126890aSEmmanuel Vadot	};
64*f126890aSEmmanuel Vadot
65*f126890aSEmmanuel Vadot	fixed-rate-clocks {
66*f126890aSEmmanuel Vadot		xxti {
67*f126890aSEmmanuel Vadot			compatible = "samsung,clock-xxti";
68*f126890aSEmmanuel Vadot			clock-frequency = <0>;
69*f126890aSEmmanuel Vadot		};
70*f126890aSEmmanuel Vadot
71*f126890aSEmmanuel Vadot		xusbxti {
72*f126890aSEmmanuel Vadot			compatible = "samsung,clock-xusbxti";
73*f126890aSEmmanuel Vadot			clock-frequency = <24000000>;
74*f126890aSEmmanuel Vadot		};
75*f126890aSEmmanuel Vadot
76*f126890aSEmmanuel Vadot		pmic_ap_clk: pmic-ap-clk {
77*f126890aSEmmanuel Vadot			/* Workaround for missing clock on PMIC */
78*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
79*f126890aSEmmanuel Vadot			#clock-cells = <0>;
80*f126890aSEmmanuel Vadot			clock-frequency = <32768>;
81*f126890aSEmmanuel Vadot		};
82*f126890aSEmmanuel Vadot	};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot	panel {
85*f126890aSEmmanuel Vadot		compatible = "innolux,at070tn92";
86*f126890aSEmmanuel Vadot		power-supply = <&vddq_lcd>;
87*f126890aSEmmanuel Vadot
88*f126890aSEmmanuel Vadot		port {
89*f126890aSEmmanuel Vadot			panel_input: endpoint {
90*f126890aSEmmanuel Vadot				remote-endpoint = <&lcdc_output>;
91*f126890aSEmmanuel Vadot			};
92*f126890aSEmmanuel Vadot		};
93*f126890aSEmmanuel Vadot	};
94*f126890aSEmmanuel Vadot
95*f126890aSEmmanuel Vadot	vddq_lcd: regulator-vddq-lcd {
96*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
97*f126890aSEmmanuel Vadot		regulator-name = "vddq-lcd";
98*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
99*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
100*f126890aSEmmanuel Vadot	};
101*f126890aSEmmanuel Vadot};
102*f126890aSEmmanuel Vadot
103*f126890aSEmmanuel Vadot&cpu_thermal {
104*f126890aSEmmanuel Vadot	cooling-maps {
105*f126890aSEmmanuel Vadot		cooling_map0: map0 {
106*f126890aSEmmanuel Vadot			/* Corresponds to 800MHz at freq_table */
107*f126890aSEmmanuel Vadot			cooling-device = <&cpu0 7 7>, <&cpu1 7 7>,
108*f126890aSEmmanuel Vadot					 <&cpu2 7 7>, <&cpu3 7 7>;
109*f126890aSEmmanuel Vadot		};
110*f126890aSEmmanuel Vadot		cooling_map1: map1 {
111*f126890aSEmmanuel Vadot			/* Corresponds to 200MHz at freq_table */
112*f126890aSEmmanuel Vadot			cooling-device = <&cpu0 13 13>, <&cpu1 13 13>,
113*f126890aSEmmanuel Vadot					 <&cpu2 13 13>, <&cpu3 13 13>;
114*f126890aSEmmanuel Vadot		};
115*f126890aSEmmanuel Vadot	};
116*f126890aSEmmanuel Vadot};
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot&fimd {
119*f126890aSEmmanuel Vadot	pinctrl-0 = <&lcd_clk>, <&lcd_data24>;
120*f126890aSEmmanuel Vadot	pinctrl-names = "default";
121*f126890aSEmmanuel Vadot	#address-cells = <1>;
122*f126890aSEmmanuel Vadot	#size-cells = <0>;
123*f126890aSEmmanuel Vadot	status = "okay";
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot	port@3 {
126*f126890aSEmmanuel Vadot		reg = <3>;
127*f126890aSEmmanuel Vadot		lcdc_output: endpoint {
128*f126890aSEmmanuel Vadot			remote-endpoint = <&panel_input>;
129*f126890aSEmmanuel Vadot		};
130*f126890aSEmmanuel Vadot	};
131*f126890aSEmmanuel Vadot};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot&rtc {
134*f126890aSEmmanuel Vadot	status = "okay";
135*f126890aSEmmanuel Vadot	clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
136*f126890aSEmmanuel Vadot	clock-names = "rtc", "rtc_src";
137*f126890aSEmmanuel Vadot};
138*f126890aSEmmanuel Vadot
139*f126890aSEmmanuel Vadot&sdhci_2 {
140*f126890aSEmmanuel Vadot	bus-width = <4>;
141*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
142*f126890aSEmmanuel Vadot	pinctrl-names = "default";
143*f126890aSEmmanuel Vadot	status = "okay";
144*f126890aSEmmanuel Vadot};
145*f126890aSEmmanuel Vadot
146*f126890aSEmmanuel Vadot&serial_0 {
147*f126890aSEmmanuel Vadot	status = "okay";
148*f126890aSEmmanuel Vadot};
149*f126890aSEmmanuel Vadot
150*f126890aSEmmanuel Vadot&serial_1 {
151*f126890aSEmmanuel Vadot	status = "okay";
152*f126890aSEmmanuel Vadot};
153*f126890aSEmmanuel Vadot
154*f126890aSEmmanuel Vadot&serial_2 {
155*f126890aSEmmanuel Vadot	status = "okay";
156*f126890aSEmmanuel Vadot};
157*f126890aSEmmanuel Vadot
158*f126890aSEmmanuel Vadot&serial_3 {
159*f126890aSEmmanuel Vadot	status = "okay";
160*f126890aSEmmanuel Vadot};
161