hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
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
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (C) 2017 Marvell Technology Group Ltd.
 *
 * Device Tree file for Marvell Armada AP810.
 */
 
#include <dt-bindings/interrupt-controller/arm-gic.h>
 
/dts-v1/;
 
/ {
   model = "Marvell Armada AP810";
   compatible = "marvell,armada-ap810";
   #address-cells = <2>;
   #size-cells = <2>;
 
   aliases {
       serial0 = &uart0_ap0;
       serial1 = &uart1_ap0;
   };
 
   psci {
       compatible = "arm,psci-0.2";
       method = "smc";
   };
 
   ap810-ap0 {
       #address-cells = <2>;
       #size-cells = <2>;
       compatible = "simple-bus";
       interrupt-parent = <&gic>;
       ranges;
 
       config-space@e8000000 {
           #address-cells = <1>;
           #size-cells = <1>;
           compatible = "simple-bus";
           ranges = <0x0 0x0 0xe8000000 0x4000000>;
           interrupt-parent = <&gic>;
 
           gic: interrupt-controller@3000000 {
               compatible = "arm,gic-v3";
               #interrupt-cells = <3>;
               #address-cells = <1>;
               #size-cells = <1>;
               interrupt-controller;
               interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
               ranges;
 
               reg = <0x3000000 0x10000>,    /* GICD */
                     <0x3060000 0x100000>,    /* GICR */
                     <0x00c0000 0x2000>,    /* GICC */
                     <0x00d0000 0x1000>,    /* GICH */
                     <0x00e0000 0x2000>;    /* GICV */
 
               gic_its_ap0: interrupt-controller@3040000 {
                   compatible = "arm,gic-v3-its";
                   msi-controller;
                   #msi-cells = <1>;
                   reg = <0x3040000 0x20000>;
               };
           };
 
           timer {
               compatible = "arm,armv8-timer";
               interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
                        <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
                        <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
                        <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
           };
 
           xor@400000 {
               compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
               reg = <0x400000 0x1000>,
                     <0x410000 0x1000>;
               msi-parent = <&gic_its_ap0 0xa0>;
               dma-coherent;
           };
 
           xor@420000 {
               compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
               reg = <0x420000 0x1000>,
                     <0x430000 0x1000>;
               msi-parent = <&gic_its_ap0 0xa1>;
               dma-coherent;
           };
 
           xor@440000 {
               compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
               reg = <0x440000 0x1000>,
                     <0x450000 0x1000>;
               msi-parent = <&gic_its_ap0 0xa2>;
               dma-coherent;
           };
 
           xor@460000 {
               compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
               reg = <0x460000 0x1000>,
                     <0x470000 0x1000>;
               msi-parent = <&gic_its_ap0 0xa3>;
               dma-coherent;
           };
 
           uart0_ap0: serial@512000 {
               compatible = "snps,dw-apb-uart";
               reg = <0x512000 0x100>;
               reg-shift = <2>;
               interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
               reg-io-width = <1>;
               status = "disabled";
           };
 
           uart1_ap0: serial@512100 {
               compatible = "snps,dw-apb-uart";
               reg = <0x512100 0x100>;
               reg-shift = <2>;
               interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
               reg-io-width = <1>;
               status = "disabled";
           };
       };
   };
};