blob: 37ba3337f944a1cea91ada2dceb58c6b6838305d [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2020 BAIKAL ELECTRONICS, JSC
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/bus/baikal,bt1-apb.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Baikal-T1 APB-bus
9
10maintainers:
11 - Serge Semin <fancer.lancer@gmail.com>
12
13description: |
14 Baikal-T1 CPU or DMAC MMIO requests are handled by the AMBA 3 AXI Interconnect
15 which routes them to the AXI-APB bridge. This interface is a single master
16 multiple slaves bus in turn serializing IO accesses and routing them to the
17 addressed APB slave devices. In case of any APB protocol collisions, slave
18 device not responding on timeout an IRQ is raised with an erroneous address
19 reported to the APB terminator (APB Errors Handler Block).
20
21allOf:
22 - $ref: /schemas/simple-bus.yaml#
23
24properties:
25 compatible:
26 contains:
27 const: baikal,bt1-apb
28
29 reg:
30 items:
31 - description: APB EHB MMIO registers
32 - description: APB MMIO region with no any device mapped
33
34 reg-names:
35 items:
36 - const: ehb
37 - const: nodev
38
39 interrupts:
40 maxItems: 1
41
42 clocks:
43 items:
44 - description: APB reference clock
45
46 clock-names:
47 items:
48 - const: pclk
49
50 resets:
51 items:
52 - description: APB domain reset line
53
54 reset-names:
55 items:
56 - const: prst
57
58unevaluatedProperties: false
59
60required:
61 - compatible
62 - reg
63 - reg-names
64 - interrupts
65 - clocks
66 - clock-names
67
68examples:
69 - |
70 #include <dt-bindings/interrupt-controller/mips-gic.h>
71
72 bus@1f059000 {
73 compatible = "baikal,bt1-apb", "simple-bus";
74 reg = <0x1f059000 0x1000>,
75 <0x1d000000 0x2040000>;
76 reg-names = "ehb", "nodev";
77 #address-cells = <1>;
78 #size-cells = <1>;
79
80 ranges;
81
82 interrupts = <GIC_SHARED 16 IRQ_TYPE_LEVEL_HIGH>;
83
84 clocks = <&ccu_sys 1>;
85 clock-names = "pclk";
86
87 resets = <&ccu_sys 1>;
88 reset-names = "prst";
89 };
90...