xref: /linux/Documentation/devicetree/bindings/misc/pci1de4,1.yaml (revision 115e74a29b530d121891238e9551c4bcdf7b04b5)
1*1b2fae5bSAndrea della Porta# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*1b2fae5bSAndrea della Porta%YAML 1.2
3*1b2fae5bSAndrea della Porta---
4*1b2fae5bSAndrea della Porta$id: http://devicetree.org/schemas/misc/pci1de4,1.yaml#
5*1b2fae5bSAndrea della Porta$schema: http://devicetree.org/meta-schemas/core.yaml#
6*1b2fae5bSAndrea della Porta
7*1b2fae5bSAndrea della Portatitle: RaspberryPi RP1 MFD PCI device
8*1b2fae5bSAndrea della Porta
9*1b2fae5bSAndrea della Portamaintainers:
10*1b2fae5bSAndrea della Porta  - A. della Porta <andrea.porta@suse.com>
11*1b2fae5bSAndrea della Porta
12*1b2fae5bSAndrea della Portadescription:
13*1b2fae5bSAndrea della Porta  The RaspberryPi RP1 is a PCI multi function device containing
14*1b2fae5bSAndrea della Porta  peripherals ranging from Ethernet to USB controller, I2C, SPI
15*1b2fae5bSAndrea della Porta  and others.
16*1b2fae5bSAndrea della Porta  The peripherals are accessed by addressing the PCI BAR1 region.
17*1b2fae5bSAndrea della Porta
18*1b2fae5bSAndrea della PortaallOf:
19*1b2fae5bSAndrea della Porta  - $ref: /schemas/pci/pci-ep-bus.yaml
20*1b2fae5bSAndrea della Porta
21*1b2fae5bSAndrea della Portaproperties:
22*1b2fae5bSAndrea della Porta  compatible:
23*1b2fae5bSAndrea della Porta    additionalItems: true
24*1b2fae5bSAndrea della Porta    maxItems: 3
25*1b2fae5bSAndrea della Porta    items:
26*1b2fae5bSAndrea della Porta      - const: pci1de4,1
27*1b2fae5bSAndrea della Porta
28*1b2fae5bSAndrea della Porta  '#interrupt-cells':
29*1b2fae5bSAndrea della Porta    const: 2
30*1b2fae5bSAndrea della Porta    description: |
31*1b2fae5bSAndrea della Porta      Specifies respectively the interrupt number and flags as defined
32*1b2fae5bSAndrea della Porta      in include/dt-bindings/interrupt-controller/irq.h.
33*1b2fae5bSAndrea della Porta      Since all interrupts are active high, only IRQ_TYPE_LEVEL_HIGH
34*1b2fae5bSAndrea della Porta      and IRQ_TYPE_EDGE_RISING can be specified as type flags.
35*1b2fae5bSAndrea della Porta      The supported values for the interrupt number are:
36*1b2fae5bSAndrea della Porta        - IO BANK0: 0
37*1b2fae5bSAndrea della Porta        - IO BANK1: 1
38*1b2fae5bSAndrea della Porta        - IO BANK2: 2
39*1b2fae5bSAndrea della Porta        - AUDIO IN: 3
40*1b2fae5bSAndrea della Porta        - AUDIO OUT: 4
41*1b2fae5bSAndrea della Porta        - PWM0: 5
42*1b2fae5bSAndrea della Porta        - ETH: 6
43*1b2fae5bSAndrea della Porta        - I2C0: 7
44*1b2fae5bSAndrea della Porta        - I2C1: 8
45*1b2fae5bSAndrea della Porta        - I2C2: 9
46*1b2fae5bSAndrea della Porta        - I2C3: 10
47*1b2fae5bSAndrea della Porta        - I2C4: 11
48*1b2fae5bSAndrea della Porta        - I2C5: 12
49*1b2fae5bSAndrea della Porta        - I2C6: 13
50*1b2fae5bSAndrea della Porta        - I2S0: 14
51*1b2fae5bSAndrea della Porta        - I2S1: 15
52*1b2fae5bSAndrea della Porta        - I2S2: 16
53*1b2fae5bSAndrea della Porta        - SDIO0: 17
54*1b2fae5bSAndrea della Porta        - SDIO1: 18
55*1b2fae5bSAndrea della Porta        - SPI0: 19
56*1b2fae5bSAndrea della Porta        - SPI1: 20
57*1b2fae5bSAndrea della Porta        - SPI2: 21
58*1b2fae5bSAndrea della Porta        - SPI3: 22
59*1b2fae5bSAndrea della Porta        - SPI4: 23
60*1b2fae5bSAndrea della Porta        - SPI5: 24
61*1b2fae5bSAndrea della Porta        - UART0: 25
62*1b2fae5bSAndrea della Porta        - TIMER0: 26
63*1b2fae5bSAndrea della Porta        - TIMER1: 27
64*1b2fae5bSAndrea della Porta        - TIMER2: 28
65*1b2fae5bSAndrea della Porta        - TIMER3: 29
66*1b2fae5bSAndrea della Porta        - USB HOST0: 30
67*1b2fae5bSAndrea della Porta        - USB HOST0-0: 31
68*1b2fae5bSAndrea della Porta        - USB HOST0-1: 32
69*1b2fae5bSAndrea della Porta        - USB HOST0-2: 33
70*1b2fae5bSAndrea della Porta        - USB HOST0-3: 34
71*1b2fae5bSAndrea della Porta        - USB HOST1: 35
72*1b2fae5bSAndrea della Porta        - USB HOST1-0: 36
73*1b2fae5bSAndrea della Porta        - USB HOST1-1: 37
74*1b2fae5bSAndrea della Porta        - USB HOST1-2: 38
75*1b2fae5bSAndrea della Porta        - USB HOST1-3: 39
76*1b2fae5bSAndrea della Porta        - DMA: 40
77*1b2fae5bSAndrea della Porta        - PWM1: 41
78*1b2fae5bSAndrea della Porta        - UART1: 42
79*1b2fae5bSAndrea della Porta        - UART2: 43
80*1b2fae5bSAndrea della Porta        - UART3: 44
81*1b2fae5bSAndrea della Porta        - UART4: 45
82*1b2fae5bSAndrea della Porta        - UART5: 46
83*1b2fae5bSAndrea della Porta        - MIPI0: 47
84*1b2fae5bSAndrea della Porta        - MIPI1: 48
85*1b2fae5bSAndrea della Porta        - VIDEO OUT: 49
86*1b2fae5bSAndrea della Porta        - PIO0: 50
87*1b2fae5bSAndrea della Porta        - PIO1: 51
88*1b2fae5bSAndrea della Porta        - ADC FIFO: 52
89*1b2fae5bSAndrea della Porta        - PCIE OUT: 53
90*1b2fae5bSAndrea della Porta        - SPI6: 54
91*1b2fae5bSAndrea della Porta        - SPI7: 55
92*1b2fae5bSAndrea della Porta        - SPI8: 56
93*1b2fae5bSAndrea della Porta        - PROC MISC: 57
94*1b2fae5bSAndrea della Porta        - SYSCFG: 58
95*1b2fae5bSAndrea della Porta        - CLOCKS DEFAULT: 59
96*1b2fae5bSAndrea della Porta        - VBUSCTRL: 60
97*1b2fae5bSAndrea della Porta
98*1b2fae5bSAndrea della Porta  interrupt-controller: true
99*1b2fae5bSAndrea della Porta
100*1b2fae5bSAndrea della PortaunevaluatedProperties: false
101*1b2fae5bSAndrea della Porta
102*1b2fae5bSAndrea della Portarequired:
103*1b2fae5bSAndrea della Porta  - compatible
104*1b2fae5bSAndrea della Porta  - '#interrupt-cells'
105*1b2fae5bSAndrea della Porta  - interrupt-controller
106*1b2fae5bSAndrea della Porta  - pci-ep-bus@1
107*1b2fae5bSAndrea della Porta
108*1b2fae5bSAndrea della Portaexamples:
109*1b2fae5bSAndrea della Porta  - |
110*1b2fae5bSAndrea della Porta    pci {
111*1b2fae5bSAndrea della Porta        #address-cells = <3>;
112*1b2fae5bSAndrea della Porta        #size-cells = <2>;
113*1b2fae5bSAndrea della Porta
114*1b2fae5bSAndrea della Porta        rp1@0,0 {
115*1b2fae5bSAndrea della Porta            compatible = "pci1de4,1";
116*1b2fae5bSAndrea della Porta            ranges = <0x01 0x00 0x00000000  0x82010000 0x00 0x00  0x00 0x400000>;
117*1b2fae5bSAndrea della Porta            #address-cells = <3>;
118*1b2fae5bSAndrea della Porta            #size-cells = <2>;
119*1b2fae5bSAndrea della Porta            interrupt-controller;
120*1b2fae5bSAndrea della Porta            #interrupt-cells = <2>;
121*1b2fae5bSAndrea della Porta
122*1b2fae5bSAndrea della Porta            pci_ep_bus: pci-ep-bus@1 {
123*1b2fae5bSAndrea della Porta                compatible = "simple-bus";
124*1b2fae5bSAndrea della Porta                ranges = <0x00 0x40000000  0x01 0x00 0x00000000  0x00 0x00400000>;
125*1b2fae5bSAndrea della Porta                dma-ranges = <0x10 0x00000000  0x43000000 0x10 0x00000000  0x10 0x00000000>;
126*1b2fae5bSAndrea della Porta                #address-cells = <2>;
127*1b2fae5bSAndrea della Porta                #size-cells = <2>;
128*1b2fae5bSAndrea della Porta
129*1b2fae5bSAndrea della Porta                rp1_clocks: clocks@40018000 {
130*1b2fae5bSAndrea della Porta                    compatible = "raspberrypi,rp1-clocks";
131*1b2fae5bSAndrea della Porta                    reg = <0x00 0x40018000 0x0 0x10038>;
132*1b2fae5bSAndrea della Porta                    #clock-cells = <1>;
133*1b2fae5bSAndrea della Porta                    clocks = <&clk_rp1_xosc>;
134*1b2fae5bSAndrea della Porta                };
135*1b2fae5bSAndrea della Porta            };
136*1b2fae5bSAndrea della Porta        };
137*1b2fae5bSAndrea della Porta    };
138