diff options
Diffstat (limited to 'Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt')
-rw-r--r-- | Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt | 53 |
1 files changed, 41 insertions, 12 deletions
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt b/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt index 5693877ab377..82dd5b65cf48 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/msi-pic.txt | |||
@@ -1,21 +1,20 @@ | |||
1 | * Freescale MSI interrupt controller | 1 | * Freescale MSI interrupt controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : compatible list, contains 2 entries, | 4 | - compatible : compatible list, may contain one or two entries |
5 | first is "fsl,CHIP-msi", where CHIP is the processor(mpc8610, mpc8572, | 5 | The first is "fsl,CHIP-msi", where CHIP is the processor(mpc8610, mpc8572, |
6 | etc.) and the second is "fsl,mpic-msi" or "fsl,ipic-msi" depending on | 6 | etc.) and the second is "fsl,mpic-msi" or "fsl,ipic-msi" or |
7 | the parent type. | 7 | "fsl,mpic-msi-v4.3" depending on the parent type and version. If mpic |
8 | version is 4.3, the number of MSI registers is increased to 16, MSIIR1 is | ||
9 | provided to access these 16 registers, and compatible "fsl,mpic-msi-v4.3" | ||
10 | should be used. The first entry is optional; the second entry is | ||
11 | required. | ||
8 | 12 | ||
9 | - reg : It may contain one or two regions. The first region should contain | 13 | - reg : It may contain one or two regions. The first region should contain |
10 | the address and the length of the shared message interrupt register set. | 14 | the address and the length of the shared message interrupt register set. |
11 | The second region should contain the address of aliased MSIIR register for | 15 | The second region should contain the address of aliased MSIIR or MSIIR1 |
12 | platforms that have such an alias. | 16 | register for platforms that have such an alias, if using MSIIR1, the second |
13 | 17 | region must be added because different MSI group has different MSIIR1 offset. | |
14 | - msi-available-ranges: use <start count> style section to define which | ||
15 | msi interrupt can be used in the 256 msi interrupts. This property is | ||
16 | optional, without this, all the 256 MSI interrupts can be used. | ||
17 | Each available range must begin and end on a multiple of 32 (i.e. | ||
18 | no splitting an individual MSI register or the associated PIC interrupt). | ||
19 | 18 | ||
20 | - interrupts : each one of the interrupts here is one entry per 32 MSIs, | 19 | - interrupts : each one of the interrupts here is one entry per 32 MSIs, |
21 | and routed to the host interrupt controller. the interrupts should | 20 | and routed to the host interrupt controller. the interrupts should |
@@ -28,6 +27,14 @@ Required properties: | |||
28 | to MPIC. | 27 | to MPIC. |
29 | 28 | ||
30 | Optional properties: | 29 | Optional properties: |
30 | - msi-available-ranges: use <start count> style section to define which | ||
31 | msi interrupt can be used in the 256 msi interrupts. This property is | ||
32 | optional, without this, all the MSI interrupts can be used. | ||
33 | Each available range must begin and end on a multiple of 32 (i.e. | ||
34 | no splitting an individual MSI register or the associated PIC interrupt). | ||
35 | MPIC v4.3 does not support this property because the 32 interrupts of an | ||
36 | individual register are not continuous when using MSIIR1. | ||
37 | |||
31 | - msi-address-64: 64-bit PCI address of the MSIIR register. The MSIIR register | 38 | - msi-address-64: 64-bit PCI address of the MSIIR register. The MSIIR register |
32 | is used for MSI messaging. The address of MSIIR in PCI address space is | 39 | is used for MSI messaging. The address of MSIIR in PCI address space is |
33 | the MSI message address. | 40 | the MSI message address. |
@@ -54,6 +61,28 @@ Example: | |||
54 | interrupt-parent = <&mpic>; | 61 | interrupt-parent = <&mpic>; |
55 | }; | 62 | }; |
56 | 63 | ||
64 | msi@41600 { | ||
65 | compatible = "fsl,mpic-msi-v4.3"; | ||
66 | reg = <0x41600 0x200 0x44148 4>; | ||
67 | interrupts = < | ||
68 | 0xe0 0 0 0 | ||
69 | 0xe1 0 0 0 | ||
70 | 0xe2 0 0 0 | ||
71 | 0xe3 0 0 0 | ||
72 | 0xe4 0 0 0 | ||
73 | 0xe5 0 0 0 | ||
74 | 0xe6 0 0 0 | ||
75 | 0xe7 0 0 0 | ||
76 | 0x100 0 0 0 | ||
77 | 0x101 0 0 0 | ||
78 | 0x102 0 0 0 | ||
79 | 0x103 0 0 0 | ||
80 | 0x104 0 0 0 | ||
81 | 0x105 0 0 0 | ||
82 | 0x106 0 0 0 | ||
83 | 0x107 0 0 0>; | ||
84 | }; | ||
85 | |||
57 | The Freescale hypervisor and msi-address-64 | 86 | The Freescale hypervisor and msi-address-64 |
58 | ------------------------------------------- | 87 | ------------------------------------------- |
59 | Normally, PCI devices have access to all of CCSR via an ATMU mapping. The | 88 | Normally, PCI devices have access to all of CCSR via an ATMU mapping. The |