Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 1 | /* |
| 2 | * Device Tree for the ST-Ericsson Nomadik S8815 board |
| 3 | * Produced by Calao Systems |
| 4 | */ |
| 5 | |
| 6 | /dts-v1/; |
Linus Walleij | 98ba16b | 2014-10-01 23:44:17 +0200 | [diff] [blame] | 7 | #include <dt-bindings/interrupt-controller/irq.h> |
Linus Walleij | 3181788 | 2014-07-25 12:18:42 +0200 | [diff] [blame] | 8 | #include "ste-nomadik-stn8815.dtsi" |
Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 9 | |
| 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 Walleij | a153790 | 2015-07-25 11:22:03 +0200 | [diff] [blame] | 18 | aliases { |
Linus Walleij | 1cb3375 | 2015-07-23 23:14:20 +0200 | [diff] [blame] | 19 | serial0 = &uart0; |
Linus Walleij | a153790 | 2015-07-25 11:22:03 +0200 | [diff] [blame] | 20 | serial1 = &uart1; |
| 21 | }; |
| 22 | |
Linus Walleij | 4cec8cd | 2015-05-30 17:30:26 +0200 | [diff] [blame] | 23 | 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 Walleij | c641d4d | 2013-06-05 01:18:40 +0200 | [diff] [blame] | 33 | src@101e0000 { |
| 34 | /* These chrystal drivers are not used on this board */ |
| 35 | disable-sxtalo; |
| 36 | disable-mxtalo; |
| 37 | }; |
| 38 | |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 39 | pinctrl { |
| 40 | /* Hog CD pins */ |
| 41 | pinctrl-names = "default"; |
| 42 | pinctrl-0 = <&cd_default_mode>; |
| 43 | |
Linus Walleij | 1cb3375 | 2015-07-23 23:14:20 +0200 | [diff] [blame] | 44 | 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 Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 53 | mmcsd-cd { |
| 54 | cd_default_mode: cd_default { |
| 55 | cd_default_cfg1 { |
| 56 | /* CD input GPIO */ |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 57 | pins = "GPIO111_H21"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 58 | ste,input = <0>; |
| 59 | }; |
| 60 | cd_default_cfg2 { |
| 61 | /* CD GPIO biasing */ |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 62 | pins = "GPIO112_J21"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 63 | ste,output = <0>; |
| 64 | }; |
| 65 | }; |
| 66 | }; |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 67 | gpioi2c { |
| 68 | gpioi2c_default_mode: gpioi2c_default { |
| 69 | gpioi2c_default_cfg { |
Linus Torvalds | c1b30e4 | 2014-12-11 10:43:14 -0800 | [diff] [blame] | 70 | pins = "GPIO73_C21", "GPIO74_C20"; |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 71 | ste,input = <0>; |
| 72 | }; |
| 73 | }; |
| 74 | }; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 75 | user-led { |
| 76 | user_led_default_mode: user_led_default { |
| 77 | user_led_default_cfg { |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 78 | pins = "GPIO2_C5"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 79 | ste,output = <1>; |
| 80 | }; |
| 81 | }; |
| 82 | }; |
| 83 | user-button { |
| 84 | user_button_default_mode: user_button_default { |
| 85 | user_button_default_cfg { |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 86 | pins = "GPIO3_A4"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 87 | ste,input = <0>; |
| 88 | }; |
| 89 | }; |
| 90 | }; |
| 91 | }; |
| 92 | |
Linus Walleij | 98ba16b | 2014-10-01 23:44:17 +0200 | [diff] [blame] | 93 | /* 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 Walleij | 4f2f1f7 | 2015-07-28 02:11:36 +0200 | [diff] [blame^] | 108 | i2c1 { |
| 109 | lis3lv02dl@1d { |
| 110 | /* Accelerometer */ |
| 111 | compatible = "st,lis3lv02dl-accel"; |
| 112 | reg = <0x1d>; |
| 113 | }; |
| 114 | }; |
| 115 | |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 116 | /* 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 Walleij | 6bd5e87 | 2014-09-11 18:56:33 +0200 | [diff] [blame] | 133 | amba { |
Linus Walleij | 1cb3375 | 2015-07-23 23:14:20 +0200 | [diff] [blame] | 134 | /* 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 Walleij | 6bd5e87 | 2014-09-11 18:56:33 +0200 | [diff] [blame] | 141 | mmcsd: sdi@101f6000 { |
| 142 | cd-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; |
| 143 | }; |
| 144 | }; |
| 145 | |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 146 | /* 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 Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 154 | pinctrl-names = "default"; |
| 155 | pinctrl-0 = <&user_led_default_mode>; |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 156 | }; |
| 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 Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 167 | pinctrl-names = "default"; |
| 168 | pinctrl-0 = <&user_button_default_mode>; |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 169 | }; |
| 170 | }; |
Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 171 | }; |