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