blob: 490b8c6c9fcca95c54903b2673d6006d78364efd [file] [log] [blame]
Jan Kundrát90bd7a02017-11-14 17:40:37 +01001#include "armada-388-clearfog-base.dts"
Jan Kundrát800fcf02017-11-14 13:27:44 +01002
3&w25q32 {
4 status = "okay";
Jan Kundrát23339622017-12-22 20:05:35 +01005 /* The chip itself is rated up to 50MHz for regular reads, 60MHz for
6 * all other transactions, but somehow the mere presence of the
7 * MAX14830 EV board breaks these transfers. Changing the speed all the
8 * way down to 100kHz doesn't help. */
Jan Kundrát800fcf02017-11-14 13:27:44 +01009};
Jan Kundrát28658c92017-11-13 19:32:04 +010010
11/ {
12 clocks {
13 spi_uart_clk: osc_max14830 {
14 compatible = "fixed-clock";
15 #clock-cells = <0>;
16 clock-frequency = <3686400>;
17 };
18 };
Jan Kundrát8fd3c5d2017-12-16 00:45:57 +010019
20 soc {
Jan Kundrát5f75ea72018-01-15 16:22:32 +010021 internal-regs {
22 sdhci@d8000 {
23 /delete-property/ cd-gpios;
24 broken-cd;
25 };
26 };
Jan Kundrát8fd3c5d2017-12-16 00:45:57 +010027 };
Jan Kundrát7f2ff832018-01-23 19:21:56 +010028
29 gpio_i2c {
30 compatible = "i2c-gpio";
31 sda-gpios = <&gpio0 25 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
32 scl-gpios = <&gpio0 24 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
33 i2c-gpio.delay-us = <1>;
34 #address-cells = <1>;
35 #size-cells = <0>;
36 };
37};
38
39&uart1_pins {
40 status = "disabled";
41};
42
43&uart1 {
44 status = "disabled";
Jan Kundrát28658c92017-11-13 19:32:04 +010045};
46
Jan Kundrátebb7a0c2018-01-30 14:38:49 +010047&gpio0 {
48 spi_reset {
49 /* MPP29: defaults to 0 at boot time */
50 gpio-hog;
51 gpios = <29 GPIO_ACTIVE_LOW>;
52 output-low;
53 line-name = "SPI-reset";
54 };
55};
56
Jan Kundrát23b16292017-11-28 08:56:48 +010057&gpio1 {
Jan Kundrátda5d2332018-01-29 11:11:21 +010058 spi_int {
Jan Kundrát23b16292017-11-28 08:56:48 +010059 /* MPP54: this needs an external pull-up */
Jan Kundrát28658c92017-11-13 19:32:04 +010060 gpio-hog;
Jan Kundrát23b16292017-11-28 08:56:48 +010061 gpios = <22 GPIO_ACTIVE_HIGH>;
Jan Kundrát28658c92017-11-13 19:32:04 +010062 input;
Jan Kundrátda5d2332018-01-29 11:11:21 +010063 line-name = "SPI-INT";
Jan Kundrát4e36c342018-01-25 16:29:24 +010064 };
65};
66
Jan Kundrát28658c92017-11-13 19:32:04 +010067&spi1 {
Jan Kundrát4e36c342018-01-25 16:29:24 +010068 cs-gpios = <0>, <&gpio0 22 GPIO_ACTIVE_HIGH>, <0>;
69
Jan Kundrát28658c92017-11-13 19:32:04 +010070 max14830: max14830@2 {
71 compatible = "maxim,max14830";
72 reg = <2>;
73 clocks = <&spi_uart_clk>;
74 clock-names = "xtal";
Jan Kundrát23b16292017-11-28 08:56:48 +010075 interrupt-parent = <&gpio1>;
76 interrupts = <22 IRQ_TYPE_LEVEL_LOW>;
Jan Kundrát28658c92017-11-13 19:32:04 +010077 gpio-controller;
78 #gpio-cells = <2>;
79 spi-max-frequency = <26000000>;
Jan Kundrátddc9a752018-02-08 15:16:15 +010080
81 gpio-line-names =
82 "EVM-GPIO0",
83 "",
84 "",
85 "EVM-LED1",
86 "EVM-GPIO4",
87 "",
88 "",
89 "EVM-LED2",
90 "EVM-GPIO8",
91 "",
92 "",
93 "EVM-LED3",
94 "EVM-GPIO12",
95 "",
96 "",
97 "EVM-LED4"
98 ;
Jan Kundrát28658c92017-11-13 19:32:04 +010099 };
Jan Kundrát4e36c342018-01-25 16:29:24 +0100100
101 gpio_spi_chips: gpio@1 {
102 compatible = "microchip,mcp23s17";
103 reg = <1>;
104 interrupt-parent = <&gpio1>;
105 interrupts = <22 IRQ_TYPE_LEVEL_LOW>;
106 interrupt-controller;
107 #interrupt-cells = <2>;
108 gpio-controller;
109 #gpio-cells = <2>;
110 microchip,spi-present-mask = <0x06>; /* extra addresses 1 and 2 */
111 microchip,irq-mirror;
112 microchip,irq-open-drain;
113 spi-max-frequency = <10000000>;
Jan Kundrát889f5492018-02-08 15:18:38 +0100114
115 gpio-line-names =
116 "1-A0",
117 "1-A1",
118 "1-A2",
119 "1-A3",
120 "1-A4",
121 "1-A5",
122 "1-A6",
123 "1-A7",
124
125 "1-B0",
126 "1-B1",
127 "1-B2",
128 "1-B3",
129 "1-B4",
130 "1-B5",
131 "1-B6",
132 "1-B7",
133
134 "2-A0",
135 "2-A1",
136 "2-A2",
137 "2-A3",
138 "2-A4",
139 "2-A5",
140 "2-A6",
141 "2-A7",
142
143 "2-B0",
144 "2-B1",
145 "2-B2",
146 "2-B3",
147 "2-B4",
148 "2-B5",
149 "2-B6",
150 "2-B7"
151 ;
Jan Kundrát4e36c342018-01-25 16:29:24 +0100152 };
Jan Kundrát28658c92017-11-13 19:32:04 +0100153};