Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 # Copyright (C) 2020 BAIKAL ELECTRONICS, JSC
0003 %YAML 1.2
0004 ---
0005 $id: http://devicetree.org/schemas/bus/baikal,bt1-apb.yaml#
0006 $schema: http://devicetree.org/meta-schemas/core.yaml#
0007 
0008 title: Baikal-T1 APB-bus
0009 
0010 maintainers:
0011   - Serge Semin <fancer.lancer@gmail.com>
0012 
0013 description: |
0014   Baikal-T1 CPU or DMAC MMIO requests are handled by the AMBA 3 AXI Interconnect
0015   which routes them to the AXI-APB bridge. This interface is a single master
0016   multiple slaves bus in turn serializing IO accesses and routing them to the
0017   addressed APB slave devices. In case of any APB protocol collisions, slave
0018   device not responding on timeout an IRQ is raised with an erroneous address
0019   reported to the APB terminator (APB Errors Handler Block).
0020 
0021 allOf:
0022   - $ref: /schemas/simple-bus.yaml#
0023 
0024 properties:
0025   compatible:
0026     contains:
0027       const: baikal,bt1-apb
0028 
0029   reg:
0030     items:
0031       - description: APB EHB MMIO registers
0032       - description: APB MMIO region with no any device mapped
0033 
0034   reg-names:
0035     items:
0036       - const: ehb
0037       - const: nodev
0038 
0039   interrupts:
0040     maxItems: 1
0041 
0042   clocks:
0043     items:
0044       - description: APB reference clock
0045 
0046   clock-names:
0047     items:
0048       - const: pclk
0049 
0050   resets:
0051     items:
0052       - description: APB domain reset line
0053 
0054   reset-names:
0055     items:
0056       - const: prst
0057 
0058 unevaluatedProperties: false
0059 
0060 required:
0061   - compatible
0062   - reg
0063   - reg-names
0064   - interrupts
0065   - clocks
0066   - clock-names
0067 
0068 examples:
0069   - |
0070     #include <dt-bindings/interrupt-controller/mips-gic.h>
0071 
0072     bus@1f059000 {
0073       compatible = "baikal,bt1-apb", "simple-bus";
0074       reg = <0x1f059000 0x1000>,
0075             <0x1d000000 0x2040000>;
0076       reg-names = "ehb", "nodev";
0077       #address-cells = <1>;
0078       #size-cells = <1>;
0079 
0080       ranges;
0081 
0082       interrupts = <GIC_SHARED 16 IRQ_TYPE_LEVEL_HIGH>;
0083 
0084       clocks = <&ccu_sys 1>;
0085       clock-names = "pclk";
0086 
0087       resets = <&ccu_sys 1>;
0088       reset-names = "prst";
0089     };
0090 ...