hc
2023-10-25 6c2073b7aa40e29d0eca7d571dd7bc590c7ecaa7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/clock/ath79-clk.h>
 
/ {
   compatible = "qca,ar9331";
 
   #address-cells = <1>;
   #size-cells = <1>;
 
   cpus {
       #address-cells = <1>;
       #size-cells = <0>;
 
       cpu@0 {
           device_type = "cpu";
           compatible = "mips,mips24Kc";
           clocks = <&pll ATH79_CLK_CPU>;
           reg = <0>;
       };
   };
 
   cpuintc: interrupt-controller {
       compatible = "qca,ar7100-cpu-intc";
 
       interrupt-controller;
       #interrupt-cells = <1>;
 
       qca,ddr-wb-channel-interrupts = <2>, <3>;
       qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>;
   };
 
   ref: ref {
       compatible = "fixed-clock";
       #clock-cells = <0>;
   };
 
   ahb {
       compatible = "simple-bus";
       ranges;
 
       #address-cells = <1>;
       #size-cells = <1>;
 
       interrupt-parent = <&cpuintc>;
 
       apb {
           compatible = "simple-bus";
           ranges;
 
           #address-cells = <1>;
           #size-cells = <1>;
 
           interrupt-parent = <&miscintc>;
 
           ddr_ctrl: memory-controller@18000000 {
               compatible = "qca,ar7240-ddr-controller";
               reg = <0x18000000 0x100>;
 
               #qca,ddr-wb-channel-cells = <1>;
           };
 
           uart: uart@18020000 {
               compatible = "qca,ar9330-uart";
               reg = <0x18020000 0x14>;
 
               interrupts = <3>;
 
               clocks = <&ref>;
               clock-names = "uart";
 
               status = "disabled";
           };
 
           gpio: gpio@18040000 {
               compatible = "qca,ar7100-gpio";
               reg = <0x18040000 0x34>;
               interrupts = <2>;
 
               ngpios = <30>;
 
               gpio-controller;
               #gpio-cells = <2>;
 
               interrupt-controller;
               #interrupt-cells = <2>;
 
               status = "disabled";
           };
 
           pll: pll-controller@18050000 {
               compatible = "qca,ar9330-pll";
               reg = <0x18050000 0x100>;
 
               clocks = <&ref>;
               clock-names = "ref";
 
               #clock-cells = <1>;
           };
 
           miscintc: interrupt-controller@18060010 {
               compatible = "qca,ar7240-misc-intc";
               reg = <0x18060010 0x8>;
 
               interrupt-parent = <&cpuintc>;
               interrupts = <6>;
 
               interrupt-controller;
               #interrupt-cells = <1>;
           };
 
           rst: reset-controller@1806001c {
               compatible = "qca,ar7100-reset";
               reg = <0x1806001c 0x4>;
 
               #reset-cells = <1>;
           };
       };
 
       usb: usb@1b000100 {
           compatible = "chipidea,usb2";
           reg = <0x1b000000 0x200>;
 
           interrupts = <3>;
           resets = <&rst 5>;
 
           phy-names = "usb-phy";
           phys = <&usb_phy>;
 
           status = "disabled";
       };
 
       spi: spi@1f000000 {
           compatible = "qca,ar7100-spi";
           reg = <0x1f000000 0x10>;
 
           clocks = <&pll ATH79_CLK_AHB>;
           clock-names = "ahb";
 
           #address-cells = <1>;
           #size-cells = <0>;
 
           status = "disabled";
       };
   };
 
   usb_phy: usb-phy {
       compatible = "qca,ar7100-usb-phy";
 
       reset-names = "phy", "suspend-override";
       resets = <&rst 4>, <&rst 3>;
 
       #phy-cells = <0>;
 
       status = "disabled";
   };
};