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 { |
| 19 | serial1 = &uart1; |
| 20 | }; |
| 21 | |
Linus Walleij | c641d4d | 2013-06-05 01:18:40 +0200 | [diff] [blame] | 22 | src@101e0000 { |
| 23 | /* These chrystal drivers are not used on this board */ |
| 24 | disable-sxtalo; |
| 25 | disable-mxtalo; |
| 26 | }; |
| 27 | |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 28 | pinctrl { |
| 29 | /* Hog CD pins */ |
| 30 | pinctrl-names = "default"; |
| 31 | pinctrl-0 = <&cd_default_mode>; |
| 32 | |
| 33 | mmcsd-cd { |
| 34 | cd_default_mode: cd_default { |
| 35 | cd_default_cfg1 { |
| 36 | /* CD input GPIO */ |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 37 | pins = "GPIO111_H21"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 38 | ste,input = <0>; |
| 39 | }; |
| 40 | cd_default_cfg2 { |
| 41 | /* CD GPIO biasing */ |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 42 | pins = "GPIO112_J21"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 43 | ste,output = <0>; |
| 44 | }; |
| 45 | }; |
| 46 | }; |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 47 | gpioi2c { |
| 48 | gpioi2c_default_mode: gpioi2c_default { |
| 49 | gpioi2c_default_cfg { |
Linus Torvalds | c1b30e4 | 2014-12-11 10:43:14 -0800 | [diff] [blame] | 50 | pins = "GPIO73_C21", "GPIO74_C20"; |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 51 | ste,input = <0>; |
| 52 | }; |
| 53 | }; |
| 54 | }; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 55 | user-led { |
| 56 | user_led_default_mode: user_led_default { |
| 57 | user_led_default_cfg { |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 58 | pins = "GPIO2_C5"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 59 | ste,output = <1>; |
| 60 | }; |
| 61 | }; |
| 62 | }; |
| 63 | user-button { |
| 64 | user_button_default_mode: user_button_default { |
| 65 | user_button_default_cfg { |
Linus Walleij | 1637d48 | 2014-09-30 12:16:25 +0200 | [diff] [blame] | 66 | pins = "GPIO3_A4"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 67 | ste,input = <0>; |
| 68 | }; |
| 69 | }; |
| 70 | }; |
| 71 | }; |
| 72 | |
Linus Walleij | 98ba16b | 2014-10-01 23:44:17 +0200 | [diff] [blame] | 73 | /* Ethernet */ |
| 74 | external-bus@34000000 { |
| 75 | compatible = "simple-bus"; |
| 76 | reg = <0x34000000 0x1000000>; |
| 77 | #address-cells = <1>; |
| 78 | #size-cells = <1>; |
| 79 | ranges = <0 0x34000000 0x1000000>; |
| 80 | ethernet@300 { |
| 81 | compatible = "smsc,lan91c111"; |
| 82 | reg = <0x300 0x0fd00>; |
| 83 | interrupt-parent = <&gpio3>; |
| 84 | interrupts = <8 IRQ_TYPE_EDGE_RISING>; |
| 85 | }; |
| 86 | }; |
| 87 | |
Linus Walleij | 2096eb8 | 2014-09-27 15:40:42 +0200 | [diff] [blame] | 88 | /* GPIO I2C connected to the USB portions of the STw4811 only */ |
| 89 | gpio-i2c { |
| 90 | compatible = "i2c-gpio"; |
| 91 | gpios = <&gpio2 10 0>, /* sda */ |
| 92 | <&gpio2 9 0>; /* scl */ |
| 93 | #address-cells = <1>; |
| 94 | #size-cells = <0>; |
| 95 | pinctrl-names = "default"; |
| 96 | pinctrl-0 = <&gpioi2c_default_mode>; |
| 97 | |
| 98 | stw4811@2d { |
| 99 | compatible = "st,stw4811-usb"; |
| 100 | reg = <0x2d>; |
| 101 | }; |
| 102 | }; |
| 103 | |
| 104 | |
Linus Walleij | 6bd5e87 | 2014-09-11 18:56:33 +0200 | [diff] [blame] | 105 | /* Configure card detect for the uSD slot */ |
| 106 | amba { |
| 107 | mmcsd: sdi@101f6000 { |
| 108 | cd-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; |
| 109 | }; |
| 110 | }; |
| 111 | |
Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 112 | /* Custom board node with GPIO pins to active etc */ |
| 113 | usb-s8815 { |
Linus Walleij | 4fd243c | 2013-01-06 01:47:29 +0100 | [diff] [blame] | 114 | /* This will bias the MMC/SD card detect line */ |
| 115 | mmcsd-gpio { |
| 116 | gpios = <&gpio3 16 0x1>; |
| 117 | }; |
Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 118 | }; |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 119 | |
| 120 | /* The user LED on the board is set up to be used for heartbeat */ |
| 121 | leds { |
| 122 | compatible = "gpio-leds"; |
| 123 | user-led { |
| 124 | label = "user_led"; |
| 125 | gpios = <&gpio0 2 0x1>; |
| 126 | default-state = "off"; |
| 127 | linux,default-trigger = "heartbeat"; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 128 | pinctrl-names = "default"; |
| 129 | pinctrl-0 = <&user_led_default_mode>; |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 130 | }; |
| 131 | }; |
| 132 | |
| 133 | /* User key mapped in as "escape" */ |
| 134 | gpio-keys { |
| 135 | compatible = "gpio-keys"; |
| 136 | user-button { |
| 137 | label = "user_button"; |
| 138 | gpios = <&gpio0 3 0x1>; |
| 139 | linux,code = <1>; /* KEY_ESC */ |
| 140 | gpio-key,wakeup; |
Linus Walleij | 49932f5 | 2013-05-24 21:56:38 +0200 | [diff] [blame] | 141 | pinctrl-names = "default"; |
| 142 | pinctrl-0 = <&user_button_default_mode>; |
Linus Walleij | 175210a | 2013-05-18 23:55:13 +0200 | [diff] [blame] | 143 | }; |
| 144 | }; |
Linus Walleij | f8635ab | 2013-01-05 00:29:31 +0100 | [diff] [blame] | 145 | }; |