mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-18 03:23:53 -04:00
dt-bindings: misc: Add device specific bindings for RaspberryPi RP1
The RP1 is a MFD that exposes its peripherals through PCI BARs. This schema is intended as minimal support for the clock generator and gpio controller peripherals which are accessible through BAR1. Signed-off-by: Andrea della Porta <andrea.porta@suse.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com> Link: https://lore.kernel.org/r/20250529135052.28398-3-andrea.porta@suse.com Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
This commit is contained in:
committed by
Florian Fainelli
parent
c1a9d356f2
commit
1b2fae5b3e
137
Documentation/devicetree/bindings/misc/pci1de4,1.yaml
Normal file
137
Documentation/devicetree/bindings/misc/pci1de4,1.yaml
Normal file
@@ -0,0 +1,137 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/misc/pci1de4,1.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: RaspberryPi RP1 MFD PCI device
|
||||
|
||||
maintainers:
|
||||
- A. della Porta <andrea.porta@suse.com>
|
||||
|
||||
description:
|
||||
The RaspberryPi RP1 is a PCI multi function device containing
|
||||
peripherals ranging from Ethernet to USB controller, I2C, SPI
|
||||
and others.
|
||||
The peripherals are accessed by addressing the PCI BAR1 region.
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/pci/pci-ep-bus.yaml
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
additionalItems: true
|
||||
maxItems: 3
|
||||
items:
|
||||
- const: pci1de4,1
|
||||
|
||||
'#interrupt-cells':
|
||||
const: 2
|
||||
description: |
|
||||
Specifies respectively the interrupt number and flags as defined
|
||||
in include/dt-bindings/interrupt-controller/irq.h.
|
||||
Since all interrupts are active high, only IRQ_TYPE_LEVEL_HIGH
|
||||
and IRQ_TYPE_EDGE_RISING can be specified as type flags.
|
||||
The supported values for the interrupt number are:
|
||||
- IO BANK0: 0
|
||||
- IO BANK1: 1
|
||||
- IO BANK2: 2
|
||||
- AUDIO IN: 3
|
||||
- AUDIO OUT: 4
|
||||
- PWM0: 5
|
||||
- ETH: 6
|
||||
- I2C0: 7
|
||||
- I2C1: 8
|
||||
- I2C2: 9
|
||||
- I2C3: 10
|
||||
- I2C4: 11
|
||||
- I2C5: 12
|
||||
- I2C6: 13
|
||||
- I2S0: 14
|
||||
- I2S1: 15
|
||||
- I2S2: 16
|
||||
- SDIO0: 17
|
||||
- SDIO1: 18
|
||||
- SPI0: 19
|
||||
- SPI1: 20
|
||||
- SPI2: 21
|
||||
- SPI3: 22
|
||||
- SPI4: 23
|
||||
- SPI5: 24
|
||||
- UART0: 25
|
||||
- TIMER0: 26
|
||||
- TIMER1: 27
|
||||
- TIMER2: 28
|
||||
- TIMER3: 29
|
||||
- USB HOST0: 30
|
||||
- USB HOST0-0: 31
|
||||
- USB HOST0-1: 32
|
||||
- USB HOST0-2: 33
|
||||
- USB HOST0-3: 34
|
||||
- USB HOST1: 35
|
||||
- USB HOST1-0: 36
|
||||
- USB HOST1-1: 37
|
||||
- USB HOST1-2: 38
|
||||
- USB HOST1-3: 39
|
||||
- DMA: 40
|
||||
- PWM1: 41
|
||||
- UART1: 42
|
||||
- UART2: 43
|
||||
- UART3: 44
|
||||
- UART4: 45
|
||||
- UART5: 46
|
||||
- MIPI0: 47
|
||||
- MIPI1: 48
|
||||
- VIDEO OUT: 49
|
||||
- PIO0: 50
|
||||
- PIO1: 51
|
||||
- ADC FIFO: 52
|
||||
- PCIE OUT: 53
|
||||
- SPI6: 54
|
||||
- SPI7: 55
|
||||
- SPI8: 56
|
||||
- PROC MISC: 57
|
||||
- SYSCFG: 58
|
||||
- CLOCKS DEFAULT: 59
|
||||
- VBUSCTRL: 60
|
||||
|
||||
interrupt-controller: true
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- '#interrupt-cells'
|
||||
- interrupt-controller
|
||||
- pci-ep-bus@1
|
||||
|
||||
examples:
|
||||
- |
|
||||
pci {
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
|
||||
rp1@0,0 {
|
||||
compatible = "pci1de4,1";
|
||||
ranges = <0x01 0x00 0x00000000 0x82010000 0x00 0x00 0x00 0x400000>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
pci_ep_bus: pci-ep-bus@1 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0x00 0x40000000 0x01 0x00 0x00000000 0x00 0x00400000>;
|
||||
dma-ranges = <0x10 0x00000000 0x43000000 0x10 0x00000000 0x10 0x00000000>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
rp1_clocks: clocks@40018000 {
|
||||
compatible = "raspberrypi,rp1-clocks";
|
||||
reg = <0x00 0x40018000 0x0 0x10038>;
|
||||
#clock-cells = <1>;
|
||||
clocks = <&clk_rp1_xosc>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user