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