blob: 35282c0105c6a1de01b80371b77e98aa82cfadf1 [file] [log] [blame]
Linus Walleijf8635ab2013-01-05 00:29:31 +01001/*
2 * Device Tree for the ST-Ericsson Nomadik S8815 board
3 * Produced by Calao Systems
4 */
5
6/dts-v1/;
Linus Walleij98ba16b2014-10-01 23:44:17 +02007#include <dt-bindings/interrupt-controller/irq.h>
Linus Walleij31817882014-07-25 12:18:42 +02008#include "ste-nomadik-stn8815.dtsi"
Linus Walleijf8635ab2013-01-05 00:29:31 +01009
10/ {
11 model = "Calao Systems USB-S8815";
12 compatible = "calaosystems,usb-s8815";
13
14 chosen {
15 bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk";
16 };
17
Linus Walleija1537902015-07-25 11:22:03 +020018 aliases {
Linus Walleij1cb33752015-07-23 23:14:20 +020019 serial0 = &uart0;
Linus Walleija1537902015-07-25 11:22:03 +020020 serial1 = &uart1;
21 };
22
Linus Walleij4cec8cd2015-05-30 17:30:26 +020023 gpio3: gpio@101e7000 {
24 /* This hog will bias the MMC/SD card detect line */
25 mmcsd-gpio {
26 gpio-hog;
27 gpios = <16 0x0>;
28 output-low;
29 line-name = "card detect bias";
30 };
31 };
32
Linus Walleijc641d4d2013-06-05 01:18:40 +020033 src@101e0000 {
34 /* These chrystal drivers are not used on this board */
35 disable-sxtalo;
36 disable-mxtalo;
37 };
38
Linus Walleij49932f52013-05-24 21:56:38 +020039 pinctrl {
40 /* Hog CD pins */
41 pinctrl-names = "default";
42 pinctrl-0 = <&cd_default_mode>;
43
Linus Walleij1cb33752015-07-23 23:14:20 +020044 uart0 {
45 /* Only use RX/TX pins */
46 uart0_s8815_mode: uart0_mux {
47 u0_default_mux {
48 function = "u0";
49 groups = "u0txrx_a_1";
50 };
51 };
52 };
Linus Walleij49932f52013-05-24 21:56:38 +020053 mmcsd-cd {
54 cd_default_mode: cd_default {
55 cd_default_cfg1 {
56 /* CD input GPIO */
Linus Walleij1637d482014-09-30 12:16:25 +020057 pins = "GPIO111_H21";
Linus Walleij49932f52013-05-24 21:56:38 +020058 ste,input = <0>;
59 };
60 cd_default_cfg2 {
61 /* CD GPIO biasing */
Linus Walleij1637d482014-09-30 12:16:25 +020062 pins = "GPIO112_J21";
Linus Walleij49932f52013-05-24 21:56:38 +020063 ste,output = <0>;
64 };
65 };
66 };
Linus Walleij2096eb82014-09-27 15:40:42 +020067 gpioi2c {
68 gpioi2c_default_mode: gpioi2c_default {
69 gpioi2c_default_cfg {
Linus Torvaldsc1b30e42014-12-11 10:43:14 -080070 pins = "GPIO73_C21", "GPIO74_C20";
Linus Walleij2096eb82014-09-27 15:40:42 +020071 ste,input = <0>;
72 };
73 };
74 };
Linus Walleij49932f52013-05-24 21:56:38 +020075 user-led {
76 user_led_default_mode: user_led_default {
77 user_led_default_cfg {
Linus Walleij1637d482014-09-30 12:16:25 +020078 pins = "GPIO2_C5";
Linus Walleij49932f52013-05-24 21:56:38 +020079 ste,output = <1>;
80 };
81 };
82 };
83 user-button {
84 user_button_default_mode: user_button_default {
85 user_button_default_cfg {
Linus Walleij1637d482014-09-30 12:16:25 +020086 pins = "GPIO3_A4";
Linus Walleij49932f52013-05-24 21:56:38 +020087 ste,input = <0>;
88 };
89 };
90 };
91 };
92
Linus Walleij98ba16b2014-10-01 23:44:17 +020093 /* Ethernet */
94 external-bus@34000000 {
95 compatible = "simple-bus";
96 reg = <0x34000000 0x1000000>;
97 #address-cells = <1>;
98 #size-cells = <1>;
99 ranges = <0 0x34000000 0x1000000>;
100 ethernet@300 {
101 compatible = "smsc,lan91c111";
102 reg = <0x300 0x0fd00>;
103 interrupt-parent = <&gpio3>;
104 interrupts = <8 IRQ_TYPE_EDGE_RISING>;
105 };
106 };
107
Linus Walleij4f2f1f72015-07-28 02:11:36 +0200108 i2c1 {
109 lis3lv02dl@1d {
110 /* Accelerometer */
111 compatible = "st,lis3lv02dl-accel";
112 reg = <0x1d>;
113 };
114 };
115
Linus Walleij2096eb82014-09-27 15:40:42 +0200116 /* GPIO I2C connected to the USB portions of the STw4811 only */
117 gpio-i2c {
118 compatible = "i2c-gpio";
119 gpios = <&gpio2 10 0>, /* sda */
120 <&gpio2 9 0>; /* scl */
121 #address-cells = <1>;
122 #size-cells = <0>;
123 pinctrl-names = "default";
124 pinctrl-0 = <&gpioi2c_default_mode>;
125
126 stw4811@2d {
127 compatible = "st,stw4811-usb";
128 reg = <0x2d>;
129 };
130 };
131
132
Linus Walleij6bd5e872014-09-11 18:56:33 +0200133 amba {
Linus Walleij1cb33752015-07-23 23:14:20 +0200134 /* Activate RXTX on UART 0 */
135 uart0: uart@101fd000 {
136 pinctrl-names = "default";
137 pinctrl-0 = <&uart0_s8815_mode>;
138 status = "okay";
139 };
140 /* Configure card detect for the uSD slot */
Linus Walleij6bd5e872014-09-11 18:56:33 +0200141 mmcsd: sdi@101f6000 {
142 cd-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>;
143 };
144 };
145
Linus Walleij175210a2013-05-18 23:55:13 +0200146 /* The user LED on the board is set up to be used for heartbeat */
147 leds {
148 compatible = "gpio-leds";
149 user-led {
150 label = "user_led";
151 gpios = <&gpio0 2 0x1>;
152 default-state = "off";
153 linux,default-trigger = "heartbeat";
Linus Walleij49932f52013-05-24 21:56:38 +0200154 pinctrl-names = "default";
155 pinctrl-0 = <&user_led_default_mode>;
Linus Walleij175210a2013-05-18 23:55:13 +0200156 };
157 };
158
159 /* User key mapped in as "escape" */
160 gpio-keys {
161 compatible = "gpio-keys";
162 user-button {
163 label = "user_button";
164 gpios = <&gpio0 3 0x1>;
165 linux,code = <1>; /* KEY_ESC */
166 gpio-key,wakeup;
Linus Walleij49932f52013-05-24 21:56:38 +0200167 pinctrl-names = "default";
168 pinctrl-0 = <&user_button_default_mode>;
Linus Walleij175210a2013-05-18 23:55:13 +0200169 };
170 };
Linus Walleijf8635ab2013-01-05 00:29:31 +0100171};