GNU Linux-libre 4.19.264-gnu1
[releases.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 / {
13         model = "Marvell PXA2xx family SoC";
14         compatible = "marvell,pxa2xx";
15         interrupt-parent = <&pxairq>;
16
17         aliases {
18                 serial0 = &ffuart;
19                 serial1 = &btuart;
20                 serial2 = &stuart;
21                 serial3 = &hwuart;
22                 i2c0 = &pwri2c;
23                 i2c1 = &pxai2c1;
24         };
25
26         cpus {
27                 #address-cells = <0>;
28                 #size-cells = <0>;
29                 cpu {
30                         compatible = "marvell,xscale";
31                         device_type = "cpu";
32                 };
33         };
34
35         pxabus {
36                 compatible = "simple-bus";
37                 #address-cells = <1>;
38                 #size-cells = <1>;
39                 ranges;
40
41                 pxairq: interrupt-controller@40d00000 {
42                         #interrupt-cells = <1>;
43                         compatible = "marvell,pxa-intc";
44                         interrupt-controller;
45                         interrupt-parent;
46                         marvell,intc-nr-irqs = <32>;
47                         reg = <0x40d00000 0xd0>;
48                 };
49
50                 gpio: gpio@40e00000 {
51                         compatible = "mrvl,pxa-gpio";
52                         #address-cells = <0x1>;
53                         #size-cells = <0x1>;
54                         reg = <0x40e00000 0x10000>;
55                         gpio-controller;
56                         #gpio-cells = <0x2>;
57                         interrupts = <8>, <9>, <10>;
58                         interrupt-names = "gpio0", "gpio1", "gpio_mux";
59                         interrupt-controller;
60                         #interrupt-cells = <0x2>;
61                         ranges;
62
63                         gcb0: gpio@40e00000 {
64                                 reg = <0x40e00000 0x4>;
65                         };
66
67                         gcb1: gpio@40e00004 {
68                                 reg = <0x40e00004 0x4>;
69                         };
70
71                         gcb2: gpio@40e00008 {
72                                 reg = <0x40e00008 0x4>;
73                         };
74                         gcb3: gpio@40e0000c {
75                                 reg = <0x40e0000c 0x4>;
76                         };
77                 };
78
79                 ffuart: uart@40100000 {
80                         compatible = "mrvl,pxa-uart";
81                         reg = <0x40100000 0x30>;
82                         interrupts = <22>;
83                         clocks = <&clks CLK_FFUART>;
84                         status = "disabled";
85                 };
86
87                 btuart: uart@40200000 {
88                         compatible = "mrvl,pxa-uart";
89                         reg = <0x40200000 0x30>;
90                         interrupts = <21>;
91                         clocks = <&clks CLK_BTUART>;
92                         status = "disabled";
93                 };
94
95                 stuart: uart@40700000 {
96                         compatible = "mrvl,pxa-uart";
97                         reg = <0x40700000 0x30>;
98                         interrupts = <20>;
99                         clocks = <&clks CLK_STUART>;
100                         status = "disabled";
101                 };
102
103                 hwuart: uart@41100000 {
104                         compatible = "mrvl,pxa-uart";
105                         reg = <0x41100000 0x30>;
106                         interrupts = <7>;
107                         status = "disabled";
108                 };
109
110                 pxai2c1: i2c@40301680 {
111                         compatible = "mrvl,pxa-i2c";
112                         reg = <0x40301680 0x30>;
113                         interrupts = <18>;
114                         clocks = <&clks CLK_I2C>;
115                         #address-cells = <0x1>;
116                         #size-cells = <0>;
117                         status = "disabled";
118                 };
119
120                 mmc0: mmc@41100000 {
121                         compatible = "marvell,pxa-mmc";
122                         reg = <0x41100000 0x1000>;
123                         interrupts = <23>;
124                         clocks = <&clks CLK_MMC>;
125                         dmas = <&pdma 21 3
126                                 &pdma 22 3>;
127                         dma-names = "rx", "tx";
128                         status = "disabled";
129                 };
130
131                 rtc@40900000 {
132                         compatible = "marvell,pxa-rtc";
133                         reg = <0x40900000 0x3c>;
134                         interrupts = <30 31>;
135                 };
136
137                 lcdc: lcd-controller@40500000 {
138                         compatible = "marvell,pxa2xx-lcdc";
139                         reg = <0x44000000 0x10000>;
140                         interrupts = <17>;
141                         clocks = <&clks CLK_LCD>;
142                         status = "disabled";
143                 };
144         };
145 };