0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/bus/arm,integrator-ap-lm.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Integrator/AP Logic Module extension bus
0008
0009 maintainers:
0010 - Linus Walleij <linusw@kernel.org>
0011
0012 description: The Integrator/AP is a prototyping platform and as such has a
0013 site for stacking up to four logic modules (LM) designed specifically for
0014 use with this platform. A special system controller register can be read to
0015 determine if a logic module is connected at index 0, 1, 2 or 3. The logic
0016 module connector is described in this binding. The logic modules per se
0017 then have their own specific per-module bindings and they will be described
0018 as subnodes under this logic module extension bus.
0019
0020 properties:
0021 "#address-cells":
0022 const: 1
0023
0024 "#size-cells":
0025 const: 1
0026
0027 compatible:
0028 items:
0029 - const: arm,integrator-ap-lm
0030
0031 ranges: true
0032 dma-ranges: true
0033
0034 patternProperties:
0035 "^bus(@[0-9a-f]*)?$":
0036 description: Nodes on the Logic Module bus represent logic modules
0037 and are named with bus. The first module is at 0xc0000000, the second
0038 at 0xd0000000 and so on until the top of the memory of the system at
0039 0xffffffff. All information about the memory used by the module is
0040 in ranges and dma-ranges.
0041 type: object
0042
0043 required:
0044 - compatible
0045
0046 required:
0047 - compatible
0048
0049 examples:
0050 - |
0051 bus@c0000000 {
0052 compatible = "arm,integrator-ap-lm";
0053 #address-cells = <1>;
0054 #size-cells = <1>;
0055 ranges = <0xc0000000 0xc0000000 0x40000000>;
0056 dma-ranges;
0057
0058 bus@c0000000 {
0059 compatible = "simple-bus";
0060 ranges = <0x00000000 0xc0000000 0x10000000>;
0061 /* The Logic Modules sees the Core Module 0 RAM @80000000 */
0062 dma-ranges = <0x00000000 0x80000000 0x10000000>;
0063 #address-cells = <1>;
0064 #size-cells = <1>;
0065
0066 serial@100000 {
0067 compatible = "arm,pl011", "arm,primecell";
0068 reg = <0x00100000 0x1000>;
0069 interrupts-extended = <&impd1_vic 1>;
0070 };
0071
0072 impd1_vic: interrupt-controller@3000000 {
0073 compatible = "arm,pl192-vic";
0074 interrupt-controller;
0075 #interrupt-cells = <1>;
0076 reg = <0x03000000 0x1000>;
0077 valid-mask = <0x00000bff>;
0078 interrupts-extended = <&pic 9>;
0079 };
0080 };
0081 };
0082
0083 additionalProperties: false