~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/microchip/lan966x.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 /*
  3  * lan966x.dtsi - Device Tree Include file for Microchip LAN966 family SoC
  4  *
  5  * Copyright (C) 2021 Microchip Technology, Inc. and its subsidiaries
  6  *
  7  * Author: Kavyasree Kotagiri <kavyasree.kotagiri@microchip.com>
  8  *
  9  */
 10 
 11 #include <dt-bindings/interrupt-controller/irq.h>
 12 #include <dt-bindings/interrupt-controller/arm-gic.h>
 13 #include <dt-bindings/mfd/atmel-flexcom.h>
 14 #include <dt-bindings/dma/at91.h>
 15 #include <dt-bindings/gpio/gpio.h>
 16 #include <dt-bindings/clock/microchip,lan966x.h>
 17 
 18 / {
 19         model = "Microchip LAN966 family SoC";
 20         compatible = "microchip,lan966";
 21         interrupt-parent = <&gic>;
 22         #address-cells = <1>;
 23         #size-cells = <1>;
 24 
 25         cpus {
 26                 #address-cells = <1>;
 27                 #size-cells = <0>;
 28 
 29                 cpu@0 {
 30                         device_type = "cpu";
 31                         compatible = "arm,cortex-a7";
 32                         clock-frequency = <600000000>;
 33                         reg = <0x0>;
 34                 };
 35         };
 36 
 37         clocks {
 38                 sys_clk: sys_clk {
 39                         compatible = "fixed-clock";
 40                         #clock-cells = <0>;
 41                         clock-frequency = <165625000>;
 42                 };
 43 
 44                 cpu_clk: cpu_clk {
 45                         compatible = "fixed-clock";
 46                         #clock-cells = <0>;
 47                         clock-frequency = <600000000>;
 48                 };
 49 
 50                 ddr_clk: ddr_clk {
 51                         compatible = "fixed-clock";
 52                         #clock-cells = <0>;
 53                         clock-frequency = <300000000>;
 54                 };
 55 
 56                 nic_clk: nic_clk {
 57                         compatible = "fixed-clock";
 58                         #clock-cells = <0>;
 59                         clock-frequency = <200000000>;
 60                 };
 61         };
 62 
 63         clks: clock-controller@e00c00a8 {
 64                 compatible = "microchip,lan966x-gck";
 65                 #clock-cells = <1>;
 66                 clocks = <&cpu_clk>, <&ddr_clk>, <&sys_clk>;
 67                 clock-names = "cpu", "ddr", "sys";
 68                 reg = <0xe00c00a8 0x38>, <0xe00c02cc 0x4>;
 69         };
 70 
 71         timer {
 72                 compatible = "arm,armv7-timer";
 73                 interrupt-parent = <&gic>;
 74                 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
 75                              <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
 76                              <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
 77                              <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
 78                 clock-frequency = <37500000>;
 79         };
 80 
 81         soc {
 82                 compatible = "simple-bus";
 83                 #address-cells = <1>;
 84                 #size-cells = <1>;
 85                 ranges;
 86 
 87                 udc: usb@200000 {
 88                         compatible = "microchip,lan9662-udc",
 89                                      "atmel,sama5d3-udc";
 90                         reg = <0x00200000 0x80000>,
 91                               <0xe0808000 0x400>;
 92                         interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
 93                         clocks = <&clks GCK_GATE_UDPHS>, <&nic_clk>;
 94                         clock-names = "pclk", "hclk";
 95                         status = "disabled";
 96                 };
 97 
 98                 switch: switch@e0000000 {
 99                         compatible = "microchip,lan966x-switch";
100                         reg = <0xe0000000 0x0100000>,
101                               <0xe2000000 0x0800000>;
102                         reg-names = "cpu", "gcb";
103                         interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
104                                      <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
105                                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
106                                      <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
107                                      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
108                         interrupt-names = "xtr", "fdma", "ana", "ptp",
109                                           "ptp-ext";
110                         resets = <&reset 0>;
111                         reset-names = "switch";
112                         status = "disabled";
113 
114                         ethernet-ports {
115                                 #address-cells = <1>;
116                                 #size-cells = <0>;
117 
118                                 port0: port@0 {
119                                         reg = <0>;
120                                         status = "disabled";
121                                 };
122 
123                                 port1: port@1 {
124                                         reg = <1>;
125                                         status = "disabled";
126                                 };
127 
128                                 port2: port@2 {
129                                         reg = <2>;
130                                         status = "disabled";
131                                 };
132 
133                                 port3: port@3 {
134                                         reg = <3>;
135                                         status = "disabled";
136                                 };
137 
138                                 port4: port@4 {
139                                         reg = <4>;
140                                         status = "disabled";
141                                 };
142 
143                                 port5: port@5 {
144                                         reg = <5>;
145                                         status = "disabled";
146                                 };
147 
148                                 port6: port@6 {
149                                         reg = <6>;
150                                         status = "disabled";
151                                 };
152 
153                                 port7: port@7 {
154                                         reg = <7>;
155                                         status = "disabled";
156                                 };
157                         };
158                 };
159 
160                 otp: otp@e0021000 {
161                         compatible = "microchip,lan9668-otpc", "microchip,lan9662-otpc";
162                         reg = <0xe0021000 0x300>;
163                 };
164 
165                 flx0: flexcom@e0040000 {
166                         compatible = "atmel,sama5d2-flexcom";
167                         reg = <0xe0040000 0x100>;
168                         clocks = <&clks GCK_ID_FLEXCOM0>;
169                         #address-cells = <1>;
170                         #size-cells = <1>;
171                         ranges = <0x0 0xe0040000 0x800>;
172                         status = "disabled";
173 
174                         usart0: serial@200 {
175                                 compatible = "atmel,at91sam9260-usart";
176                                 reg = <0x200 0x200>;
177                                 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
178                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>,
179                                        <&dma0 AT91_XDMAC_DT_PERID(2)>;
180                                 dma-names = "tx", "rx";
181                                 clocks = <&nic_clk>;
182                                 clock-names = "usart";
183                                 atmel,fifo-size = <32>;
184                                 status = "disabled";
185                         };
186 
187                         spi0: spi@400 {
188                                 compatible = "atmel,at91rm9200-spi";
189                                 reg = <0x400 0x200>;
190                                 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
191                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>,
192                                        <&dma0 AT91_XDMAC_DT_PERID(2)>;
193                                 dma-names = "tx", "rx";
194                                 clocks = <&nic_clk>;
195                                 clock-names = "spi_clk";
196                                 atmel,fifo-size = <32>;
197                                 #address-cells = <1>;
198                                 #size-cells = <0>;
199                                 status = "disabled";
200                         };
201 
202                         i2c0: i2c@600 {
203                                 compatible = "microchip,sam9x60-i2c";
204                                 reg = <0x600 0x200>;
205                                 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
206                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(3)>,
207                                        <&dma0 AT91_XDMAC_DT_PERID(2)>;
208                                 dma-names = "tx", "rx";
209                                 clocks = <&nic_clk>;
210                                 #address-cells = <1>;
211                                 #size-cells = <0>;
212                                 status = "disabled";
213                         };
214                 };
215 
216                 flx1: flexcom@e0044000 {
217                         compatible = "atmel,sama5d2-flexcom";
218                         reg = <0xe0044000 0x100>;
219                         clocks = <&clks GCK_ID_FLEXCOM1>;
220                         #address-cells = <1>;
221                         #size-cells = <1>;
222                         ranges = <0x0 0xe0044000 0x800>;
223                         status = "disabled";
224 
225                         usart1: serial@200 {
226                                 compatible = "atmel,at91sam9260-usart";
227                                 reg = <0x200 0x200>;
228                                 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
229                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>,
230                                        <&dma0 AT91_XDMAC_DT_PERID(4)>;
231                                 dma-names = "tx", "rx";
232                                 clocks = <&nic_clk>;
233                                 clock-names = "usart";
234                                 atmel,fifo-size = <32>;
235                                 status = "disabled";
236                         };
237 
238                         spi1: spi@400 {
239                                 compatible = "atmel,at91rm9200-spi";
240                                 reg = <0x400 0x200>;
241                                 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
242                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>,
243                                        <&dma0 AT91_XDMAC_DT_PERID(4)>;
244                                 dma-names = "tx", "rx";
245                                 clocks = <&nic_clk>;
246                                 clock-names = "spi_clk";
247                                 atmel,fifo-size = <32>;
248                                 #address-cells = <1>;
249                                 #size-cells = <0>;
250                                 status = "disabled";
251                         };
252 
253                         i2c1: i2c@600 {
254                                 compatible = "microchip,sam9x60-i2c";
255                                 reg = <0x600 0x200>;
256                                 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
257                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(5)>,
258                                        <&dma0 AT91_XDMAC_DT_PERID(4)>;
259                                 dma-names = "tx", "rx";
260                                 clocks = <&nic_clk>;
261                                 #address-cells = <1>;
262                                 #size-cells = <0>;
263                                 status = "disabled";
264                         };
265                 };
266 
267                 trng: rng@e0048000 {
268                         compatible = "atmel,at91sam9g45-trng";
269                         reg = <0xe0048000 0x100>;
270                         clocks = <&nic_clk>;
271                 };
272 
273                 aes: crypto@e004c000 {
274                         compatible = "atmel,at91sam9g46-aes";
275                         reg = <0xe004c000 0x100>;
276                         interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
277                         dmas = <&dma0 AT91_XDMAC_DT_PERID(12)>,
278                                <&dma0 AT91_XDMAC_DT_PERID(13)>;
279                         dma-names = "tx", "rx";
280                         clocks = <&nic_clk>;
281                         clock-names = "aes_clk";
282                 };
283 
284                 flx2: flexcom@e0060000 {
285                         compatible = "atmel,sama5d2-flexcom";
286                         reg = <0xe0060000 0x100>;
287                         clocks = <&clks GCK_ID_FLEXCOM2>;
288                         #address-cells = <1>;
289                         #size-cells = <1>;
290                         ranges = <0x0 0xe0060000 0x800>;
291                         status = "disabled";
292 
293                         usart2: serial@200 {
294                                 compatible = "atmel,at91sam9260-usart";
295                                 reg = <0x200 0x200>;
296                                 interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
297                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>,
298                                        <&dma0 AT91_XDMAC_DT_PERID(6)>;
299                                 dma-names = "tx", "rx";
300                                 clocks = <&nic_clk>;
301                                 clock-names = "usart";
302                                 atmel,fifo-size = <32>;
303                                 status = "disabled";
304                         };
305 
306                         spi2: spi@400 {
307                                 compatible = "atmel,at91rm9200-spi";
308                                 reg = <0x400 0x200>;
309                                 interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
310                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>,
311                                        <&dma0 AT91_XDMAC_DT_PERID(6)>;
312                                 dma-names = "tx", "rx";
313                                 clocks = <&nic_clk>;
314                                 clock-names = "spi_clk";
315                                 atmel,fifo-size = <32>;
316                                 #address-cells = <1>;
317                                 #size-cells = <0>;
318                                 status = "disabled";
319                         };
320 
321                         i2c2: i2c@600 {
322                                 compatible = "microchip,sam9x60-i2c";
323                                 reg = <0x600 0x200>;
324                                 interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
325                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>,
326                                        <&dma0 AT91_XDMAC_DT_PERID(6)>;
327                                 dma-names = "tx", "rx";
328                                 clocks = <&nic_clk>;
329                                 #address-cells = <1>;
330                                 #size-cells = <0>;
331                                 status = "disabled";
332                         };
333                 };
334 
335                 flx3: flexcom@e0064000 {
336                         compatible = "atmel,sama5d2-flexcom";
337                         reg = <0xe0064000 0x100>;
338                         clocks = <&clks GCK_ID_FLEXCOM3>;
339                         #address-cells = <1>;
340                         #size-cells = <1>;
341                         ranges = <0x0 0xe0064000 0x800>;
342                         status = "disabled";
343 
344                         usart3: serial@200 {
345                                 compatible = "atmel,at91sam9260-usart";
346                                 reg = <0x200 0x200>;
347                                 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
348                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>,
349                                        <&dma0 AT91_XDMAC_DT_PERID(8)>;
350                                 dma-names = "tx", "rx";
351                                 clocks = <&nic_clk>;
352                                 clock-names = "usart";
353                                 atmel,fifo-size = <32>;
354                                 status = "disabled";
355                         };
356 
357                         spi3: spi@400 {
358                                 compatible = "atmel,at91rm9200-spi";
359                                 reg = <0x400 0x200>;
360                                 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
361                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>,
362                                        <&dma0 AT91_XDMAC_DT_PERID(8)>;
363                                 dma-names = "tx", "rx";
364                                 clocks = <&nic_clk>;
365                                 clock-names = "spi_clk";
366                                 atmel,fifo-size = <32>;
367                                 #address-cells = <1>;
368                                 #size-cells = <0>;
369                                 status = "disabled";
370                         };
371 
372                         i2c3: i2c@600 {
373                                 compatible = "microchip,sam9x60-i2c";
374                                 reg = <0x600 0x200>;
375                                 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
376                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(9)>,
377                                        <&dma0 AT91_XDMAC_DT_PERID(8)>;
378                                 dma-names = "tx", "rx";
379                                 clocks = <&nic_clk>;
380                                 #address-cells = <1>;
381                                 #size-cells = <0>;
382                                 status = "disabled";
383                         };
384                 };
385 
386                 dma0: dma-controller@e0068000 {
387                         compatible = "microchip,sama7g5-dma";
388                         reg = <0xe0068000 0x1000>;
389                         interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
390                         #dma-cells = <1>;
391                         clocks = <&nic_clk>;
392                         clock-names = "dma_clk";
393                 };
394 
395                 sha: crypto@e006c000 {
396                         compatible = "atmel,at91sam9g46-sha";
397                         reg = <0xe006c000 0xec>;
398                         interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
399                         dmas = <&dma0 AT91_XDMAC_DT_PERID(14)>;
400                         dma-names = "tx";
401                         clocks = <&nic_clk>;
402                         clock-names = "sha_clk";
403                 };
404 
405                 flx4: flexcom@e0070000 {
406                         compatible = "atmel,sama5d2-flexcom";
407                         reg = <0xe0070000 0x100>;
408                         clocks = <&clks GCK_ID_FLEXCOM4>;
409                         #address-cells = <1>;
410                         #size-cells = <1>;
411                         ranges = <0x0 0xe0070000 0x800>;
412                         status = "disabled";
413 
414                         usart4: serial@200 {
415                                 compatible = "atmel,at91sam9260-usart";
416                                 reg = <0x200 0x200>;
417                                 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
418                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>,
419                                        <&dma0 AT91_XDMAC_DT_PERID(10)>;
420                                 dma-names = "tx", "rx";
421                                 clocks = <&nic_clk>;
422                                 clock-names = "usart";
423                                 atmel,fifo-size = <32>;
424                                 status = "disabled";
425                         };
426 
427                         spi4: spi@400 {
428                                 compatible = "atmel,at91rm9200-spi";
429                                 reg = <0x400 0x200>;
430                                 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
431                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>,
432                                        <&dma0 AT91_XDMAC_DT_PERID(10)>;
433                                 dma-names = "tx", "rx";
434                                 clocks = <&nic_clk>;
435                                 clock-names = "spi_clk";
436                                 atmel,fifo-size = <32>;
437                                 #address-cells = <1>;
438                                 #size-cells = <0>;
439                                 status = "disabled";
440                         };
441 
442                         i2c4: i2c@600 {
443                                 compatible = "microchip,sam9x60-i2c";
444                                 reg = <0x600 0x200>;
445                                 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
446                                 dmas = <&dma0 AT91_XDMAC_DT_PERID(11)>,
447                                        <&dma0 AT91_XDMAC_DT_PERID(10)>;
448                                 dma-names = "tx", "rx";
449                                 clocks = <&nic_clk>;
450                                 #address-cells = <1>;
451                                 #size-cells = <0>;
452                                 status = "disabled";
453                         };
454                 };
455 
456                 timer0: timer@e008c000 {
457                         compatible = "snps,dw-apb-timer";
458                         reg = <0xe008c000 0x400>;
459                         clocks = <&nic_clk>;
460                         clock-names = "timer";
461                         interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
462                 };
463 
464                 watchdog: watchdog@e0090000 {
465                         compatible = "snps,dw-wdt";
466                         reg = <0xe0090000 0x1000>;
467                         interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
468                         clocks = <&nic_clk>;
469                         status = "disabled";
470                 };
471 
472                 cpu_ctrl: syscon@e00c0000 {
473                         compatible = "microchip,lan966x-cpu-syscon", "syscon";
474                         reg = <0xe00c0000 0x350>;
475                 };
476 
477                 can0: can@e081c000 {
478                         compatible = "bosch,m_can";
479                         reg = <0xe081c000 0xfc>, <0x00100000 0x4000>;
480                         reg-names = "m_can", "message_ram";
481                         interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
482                                      <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
483                         interrupt-names = "int0", "int1";
484                         clocks = <&clks GCK_ID_MCAN0>, <&clks GCK_ID_MCAN0>;
485                         clock-names = "hclk", "cclk";
486                         assigned-clocks = <&clks GCK_ID_MCAN0>;
487                         assigned-clock-rates = <40000000>;
488                         bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>;
489                         status = "disabled";
490                 };
491 
492                 can1: can@e0820000 {
493                         compatible = "bosch,m_can";
494                         reg = <0xe0820000 0xfc>, <0x00100000 0x8000>;
495                         reg-names = "m_can", "message_ram";
496                         interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
497                                      <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
498                         interrupt-names = "int0", "int1";
499                         clocks = <&clks GCK_ID_MCAN1>, <&clks GCK_ID_MCAN1>;
500                         clock-names = "hclk", "cclk";
501                         assigned-clocks = <&clks GCK_ID_MCAN1>;
502                         assigned-clock-rates = <40000000>;
503                         bosch,mram-cfg = <0x4000 0 0 64 0 0 32 32>;
504                         status = "disabled";
505                 };
506 
507                 reset: reset-controller@e200400c {
508                         compatible = "microchip,lan966x-switch-reset";
509                         reg = <0xe200400c 0x4>;
510                         reg-names = "gcb";
511                         #reset-cells = <1>;
512                         cpu-syscon = <&cpu_ctrl>;
513                 };
514 
515                 gpio: pinctrl@e2004064 {
516                         compatible = "microchip,lan966x-pinctrl";
517                         reg = <0xe2004064 0xb4>,
518                             <0xe2010024 0x138>;
519                         resets = <&reset 0>;
520                         reset-names = "switch";
521                         gpio-controller;
522                         #gpio-cells = <2>;
523                         gpio-ranges = <&gpio 0 0 78>;
524                         interrupt-controller;
525                         interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
526                         #interrupt-cells = <2>;
527                 };
528 
529                 mdio0: mdio@e2004118 {
530                         compatible = "microchip,lan966x-miim";
531                         #address-cells = <1>;
532                         #size-cells = <0>;
533                         reg = <0xe2004118 0x24>;
534                         clocks = <&sys_clk>;
535                         status = "disabled";
536                 };
537 
538                 mdio1: mdio@e200413c {
539                         compatible = "microchip,lan966x-miim";
540                         #address-cells = <1>;
541                         #size-cells = <0>;
542                         reg = <0xe200413c 0x24>,
543                               <0xe2010020 0x4>;
544                         clocks = <&sys_clk>;
545                         status = "disabled";
546 
547                         phy0: ethernet-phy@1 {
548                                 reg = <1>;
549                                 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
550                                 status = "disabled";
551                         };
552 
553                         phy1: ethernet-phy@2 {
554                                 reg = <2>;
555                                 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
556                                 status = "disabled";
557                         };
558                 };
559 
560                 sgpio: gpio@e2004190 {
561                         compatible = "microchip,sparx5-sgpio";
562                         reg = <0xe2004190 0x118>;
563                         clocks = <&sys_clk>;
564                         resets = <&reset 0>;
565                         reset-names = "switch";
566                         #address-cells = <1>;
567                         #size-cells = <0>;
568                         status = "disabled";
569 
570                         sgpio_in: gpio@0 {
571                                 compatible = "microchip,sparx5-sgpio-bank";
572                                 reg = <0>;
573                                 gpio-controller;
574                                 #gpio-cells = <3>;
575                                 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
576                                 interrupt-controller;
577                                 #interrupt-cells = <3>;
578                         };
579 
580                         sgpio_out: gpio@1 {
581                                 compatible = "microchip,sparx5-sgpio-bank";
582                                 reg = <1>;
583                                 gpio-controller;
584                                 #gpio-cells = <3>;
585                         };
586                 };
587 
588                 hwmon: hwmon@e2010180 {
589                         compatible = "microchip,lan9668-hwmon";
590                         reg = <0xe2010180 0xc>,
591                               <0xe20042a8 0xc>;
592                         reg-names = "pvt", "fan";
593                         clocks = <&sys_clk>;
594                 };
595 
596                 serdes: serdes@e202c000 {
597                         compatible = "microchip,lan966x-serdes";
598                         reg = <0xe202c000 0x9c>,
599                               <0xe2004010 0x4>;
600                         #phy-cells = <2>;
601                         status = "disabled";
602                 };
603 
604                 gic: interrupt-controller@e8c11000 {
605                         compatible = "arm,gic-400", "arm,cortex-a7-gic";
606                         #interrupt-cells = <3>;
607                         interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
608                         interrupt-controller;
609                         reg = <0xe8c11000 0x1000>,
610                               <0xe8c12000 0x2000>,
611                               <0xe8c14000 0x2000>,
612                               <0xe8c16000 0x2000>;
613                 };
614         };
615 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php