GNU Linux-libre 4.14.290-gnu1
[releases.git] / arch / arm / boot / dts / gemini-sq201.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Device Tree file for ITian Square One SQ201 NAS
4  */
5
6 /dts-v1/;
7
8 #include "gemini.dtsi"
9 #include <dt-bindings/input/input.h>
10
11 / {
12         model = "ITian Square One SQ201";
13         compatible = "itian,sq201", "cortina,gemini";
14         #address-cells = <1>;
15         #size-cells = <1>;
16
17         memory { /* 128 MB */
18                 device_type = "memory";
19                 reg = <0x00000000 0x8000000>;
20         };
21
22         chosen {
23                 bootargs = "console=ttyS0,115200n8 root=/dev/mtdblock2 rw rootfstype=squashfs,jffs2 rootwait";
24                 stdout-path = &uart0;
25         };
26
27         gpio_keys {
28                 compatible = "gpio-keys";
29                 #address-cells = <1>;
30                 #size-cells = <0>;
31
32                 button@18 {
33                         debounce_interval = <50>;
34                         wakeup-source;
35                         linux,code = <KEY_SETUP>;
36                         label = "factory reset";
37                         /* Conflict with NAND flash */
38                         gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
39                 };
40         };
41
42         leds {
43                 compatible = "gpio-leds";
44                 led@20 {
45                         label = "sq201:green:info";
46                         /* Conflict with parallel flash */
47                         gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
48                         default-state = "on";
49                         linux,default-trigger = "heartbeat";
50                 };
51                 led@31 {
52                         label = "sq201:green:usb";
53                         /* Conflict with parallel and NAND flash */
54                         gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>;
55                         default-state = "off";
56                         linux,default-trigger = "usb-host";
57                 };
58         };
59
60         soc {
61                 flash@30000000 {
62                         /*
63                          * Flash access can be enabled, with the side effect
64                          * of disabling access to GPIO LED on GPIO0[20] which
65                          * reuse one of the parallel flash chip select lines.
66                          * Also the default firmware on the machine has the
67                          * problem that since it uses the flash, the two LEDS
68                          * on the right become numb.
69                          */
70                         /* status = "okay"; */
71                         /* 16MB of flash */
72                         reg = <0x30000000 0x01000000>;
73
74                         partitions {
75                                 compatible = "redboot-fis";
76                                 /* Eraseblock at 0xfe0000 */
77                                 fis-index-block = <0x1fc>;
78                         };
79                 };
80
81                 syscon: syscon@40000000 {
82                         pinctrl {
83                                 /*
84                                  * gpio0fgrp cover line 18 used by reset button
85                                  * gpio0ggrp cover line 20 used by info LED
86                                  * gpio0kgrp cover line 31 used by USB LED
87                                  */
88                                 gpio0_default_pins: pinctrl-gpio0 {
89                                         mux {
90                                                 function = "gpio0";
91                                                 groups = "gpio0fgrp",
92                                                 "gpio0ggrp",
93                                                 "gpio0kgrp";
94                                         };
95                                 };
96                         };
97                 };
98
99                 sata: sata@46000000 {
100                         cortina,gemini-ata-muxmode = <0>;
101                         cortina,gemini-enable-sata-bridge;
102                         status = "okay";
103                 };
104
105                 gpio0: gpio@4d000000 {
106                         pinctrl-names = "default";
107                         pinctrl-0 = <&gpio0_default_pins>;
108                 };
109
110                 pci@50000000 {
111                         status = "okay";
112                         interrupt-map-mask = <0xf800 0 0 7>;
113                         interrupt-map =
114                                 <0x4800 0 0 1 &pci_intc 0>, /* Slot 9 */
115                                 <0x4800 0 0 2 &pci_intc 1>,
116                                 <0x4800 0 0 3 &pci_intc 2>,
117                                 <0x4800 0 0 4 &pci_intc 3>,
118                                 <0x5000 0 0 1 &pci_intc 1>, /* Slot 10 */
119                                 <0x5000 0 0 2 &pci_intc 2>,
120                                 <0x5000 0 0 3 &pci_intc 3>,
121                                 <0x5000 0 0 4 &pci_intc 0>,
122                                 <0x5800 0 0 1 &pci_intc 2>, /* Slot 11 */
123                                 <0x5800 0 0 2 &pci_intc 3>,
124                                 <0x5800 0 0 3 &pci_intc 0>,
125                                 <0x5800 0 0 4 &pci_intc 1>,
126                                 <0x6000 0 0 1 &pci_intc 3>, /* Slot 12 */
127                                 <0x6000 0 0 2 &pci_intc 0>,
128                                 <0x6000 0 0 3 &pci_intc 1>,
129                                 <0x6000 0 0 4 &pci_intc 2>;
130                 };
131
132                 ata@63000000 {
133                         status = "okay";
134                 };
135         };
136 };