mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
x86: Document irq router device tree bindings
Describe all required properties needed by the irq router device tree. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
9c7dea602e
commit
5910955f3c
1 changed files with 50 additions and 0 deletions
50
doc/device-tree-bindings/misc/intel,irq-router.txt
Normal file
50
doc/device-tree-bindings/misc/intel,irq-router.txt
Normal file
|
@ -0,0 +1,50 @@
|
|||
Intel Interrupt Router Device Binding
|
||||
=====================================
|
||||
|
||||
The device tree node which describes the operation of the Intel Interrupt Router
|
||||
device is as follows:
|
||||
|
||||
Required properties :
|
||||
- reg : Specifies the interrupt router's PCI configuration space address as
|
||||
defined by the Open Firmware spec.
|
||||
- compatible = "intel,irq-router"
|
||||
- intel,pirq-config : Specifies the IRQ routing register programming mechanism.
|
||||
Valid values are:
|
||||
"pci": IRQ routing is controlled by PCI configuration registers
|
||||
"ibase": IRQ routing is in the memory-mapped IBASE register block
|
||||
- intel,ibase-offset : IBASE register offset in the interrupt router's PCI
|
||||
configuration space, required only if intel,pirq-config = "ibase".
|
||||
- intel,pirq-link : Specifies the PIRQ link information with two cells. The
|
||||
first cell is the register offset that controls the first PIRQ link routing.
|
||||
The second cell is the total number of PIRQ links the router supports.
|
||||
- intel,pirq-mask : Specifies the IRQ mask reprenting the 16 IRQs in 8259 PIC.
|
||||
Bit N is 1 means IRQ N is available to be routed.
|
||||
- intel,pirq-routing : Specifies all PCI devices' IRQ routing information,
|
||||
encoded as 3 cells a group for a device. The first cell is the device's PCI
|
||||
bus number, device number and function number encoding with PCI_BDF() macro.
|
||||
The second cell is the PCI interrupt pin used by this device. The last cell
|
||||
is which PIRQ line the PCI interrupt pin is routed to.
|
||||
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
#include <dt-bindings/interrupt-router/intel-irq.h>
|
||||
|
||||
irq-router@1f,0 {
|
||||
reg = <0x0000f800 0 0 0 0>;
|
||||
compatible = "intel,irq-router";
|
||||
intel,pirq-config = "pci";
|
||||
intel,pirq-link = <0x60 8>;
|
||||
intel,pirq-mask = <0xdef8>;
|
||||
intel,pirq-routing = <
|
||||
PCI_BDF(0, 2, 0) INTA PIRQA
|
||||
PCI_BDF(0, 3, 0) INTA PIRQB
|
||||
PCI_BDF(0, 8, 0) INTA PIRQC
|
||||
PCI_BDF(0, 8, 1) INTB PIRQD
|
||||
PCI_BDF(1, 6, 0) INTA PIRQE
|
||||
PCI_BDF(1, 6, 1) INTB PIRQF
|
||||
PCI_BDF(1, 6, 2) INTC PIRQG
|
||||
PCI_BDF(1, 6, 3) INTD PIRQH
|
||||
>;
|
||||
};
|
Loading…
Add table
Reference in a new issue