Merge tag 'selinux-pr-20181115' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / pxa2xx.dtsi
1 /*
2  * pxa2xx.dtsi - Device Tree Include file for Marvell PXA2xx family SoC
3  *
4  * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
5  *
6  * Licensed under GPLv2 or later.
7  */
8
9 #include "skeleton.dtsi"
10 #include "dt-bindings/clock/pxa-clock.h"
11
12 #define PMGROUP(pin) #pin
13 #define PMMUX(func, pin, af)                    \
14         mux- ## func {                          \
15                 groups = PMGROUP(P ## pin);     \
16                 function = #af;                 \
17         }
18 #define PMMUX_LPM_LOW(func, pin, af)            \
19         mux- ## func {                          \
20                 groups = PMGROUP(P ## pin);     \
21                 function = #af;                 \
22                 low-power-disable;              \
23         }
24 #define PMMUX_LPM_HIGH(func, pin, af)           \
25         mux- ## func {                          \
26                 groups = PMGROUP(P ## pin);     \
27                 function = #af;                 \
28                 low-power-enable;               \
29         }
30
31 / {
32         model = "Marvell PXA2xx family SoC";
33         compatible = "marvell,pxa2xx";
34         interrupt-parent = <&pxairq>;
35
36         aliases {
37                 serial0 = &ffuart;
38                 serial1 = &btuart;
39                 serial2 = &stuart;
40                 serial3 = &hwuart;
41                 i2c0 = &pwri2c;
42                 i2c1 = &pxai2c1;
43         };
44
45         cpus {
46                 #address-cells = <0>;
47                 #size-cells = <0>;
48                 cpu {
49                         compatible = "marvell,xscale";
50                         device_type = "cpu";
51                 };
52         };
53
54         pxabus {
55                 compatible = "simple-bus";
56                 #address-cells = <1>;
57                 #size-cells = <1>;
58                 ranges;
59
60                 pxairq: interrupt-controller@40d00000 {
61                         #interrupt-cells = <1>;
62                         compatible = "marvell,pxa-intc";
63                         interrupt-controller;
64                         interrupt-parent;
65                         marvell,intc-nr-irqs = <32>;
66                         reg = <0x40d00000 0xd0>;
67                 };
68
69                 gpio: gpio@40e00000 {
70                         compatible = "mrvl,pxa-gpio";
71                         #address-cells = <0x1>;
72                         #size-cells = <0x1>;
73                         reg = <0x40e00000 0x10000>;
74                         gpio-controller;
75                         #gpio-cells = <0x2>;
76                         interrupts = <8>, <9>, <10>;
77                         interrupt-names = "gpio0", "gpio1", "gpio_mux";
78                         interrupt-controller;
79                         #interrupt-cells = <0x2>;
80                         ranges;
81
82                         gcb0: gpio@40e00000 {
83                                 reg = <0x40e00000 0x4>;
84                         };
85
86                         gcb1: gpio@40e00004 {
87                                 reg = <0x40e00004 0x4>;
88                         };
89
90                         gcb2: gpio@40e00008 {
91                                 reg = <0x40e00008 0x4>;
92                         };
93                         gcb3: gpio@40e0000c {
94                                 reg = <0x40e0000c 0x4>;
95                         };
96                 };
97
98                 ffuart: serial@40100000 {
99                         compatible = "mrvl,pxa-uart";
100                         reg = <0x40100000 0x30>;
101                         interrupts = <22>;
102                         clocks = <&clks CLK_FFUART>;
103                         status = "disabled";
104                 };
105
106                 btuart: serial@40200000 {
107                         compatible = "mrvl,pxa-uart";
108                         reg = <0x40200000 0x30>;
109                         interrupts = <21>;
110                         clocks = <&clks CLK_BTUART>;
111                         status = "disabled";
112                 };
113
114                 stuart: serial@40700000 {
115                         compatible = "mrvl,pxa-uart";
116                         reg = <0x40700000 0x30>;
117                         interrupts = <20>;
118                         clocks = <&clks CLK_STUART>;
119                         status = "disabled";
120                 };
121
122                 hwuart: serial@41100000 {
123                         compatible = "mrvl,pxa-uart";
124                         reg = <0x41100000 0x30>;
125                         interrupts = <7>;
126                         status = "disabled";
127                 };
128
129                 pxai2c1: i2c@40301680 {
130                         compatible = "mrvl,pxa-i2c";
131                         reg = <0x40301680 0x30>;
132                         interrupts = <18>;
133                         clocks = <&clks CLK_I2C>;
134                         #address-cells = <0x1>;
135                         #size-cells = <0>;
136                         status = "disabled";
137                 };
138
139                 usb0: ohci@4c000000 {
140                         compatible = "marvell,pxa-ohci";
141                         reg = <0x4c000000 0x10000>;
142                         interrupts = <3>;
143                         status = "disabled";
144                 };
145
146                 mmc0: mmc@41100000 {
147                         compatible = "marvell,pxa-mmc";
148                         reg = <0x41100000 0x1000>;
149                         interrupts = <23>;
150                         clocks = <&clks CLK_MMC>;
151                         dmas = <&pdma 21 3
152                                 &pdma 22 3>;
153                         dma-names = "rx", "tx";
154                         status = "disabled";
155                 };
156
157                 rtc@40900000 {
158                         compatible = "marvell,pxa-rtc";
159                         reg = <0x40900000 0x3c>;
160                         interrupts = <30 31>;
161                 };
162
163                 lcdc: lcd-controller@40500000 {
164                         compatible = "marvell,pxa2xx-lcdc";
165                         reg = <0x44000000 0x10000>;
166                         interrupts = <17>;
167                         clocks = <&clks CLK_LCD>;
168                         status = "disabled";
169                 };
170         };
171 };