162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci# Copyright (C) 2020 BAIKAL ELECTRONICS, JSC 362306a36Sopenharmony_ci%YAML 1.2 462306a36Sopenharmony_ci--- 562306a36Sopenharmony_ci$id: http://devicetree.org/schemas/bus/baikal,bt1-apb.yaml# 662306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 762306a36Sopenharmony_ci 862306a36Sopenharmony_cititle: Baikal-T1 APB-bus 962306a36Sopenharmony_ci 1062306a36Sopenharmony_cimaintainers: 1162306a36Sopenharmony_ci - Serge Semin <fancer.lancer@gmail.com> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: | 1462306a36Sopenharmony_ci Baikal-T1 CPU or DMAC MMIO requests are handled by the AMBA 3 AXI Interconnect 1562306a36Sopenharmony_ci which routes them to the AXI-APB bridge. This interface is a single master 1662306a36Sopenharmony_ci multiple slaves bus in turn serializing IO accesses and routing them to the 1762306a36Sopenharmony_ci addressed APB slave devices. In case of any APB protocol collisions, slave 1862306a36Sopenharmony_ci device not responding on timeout an IRQ is raised with an erroneous address 1962306a36Sopenharmony_ci reported to the APB terminator (APB Errors Handler Block). 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciallOf: 2262306a36Sopenharmony_ci - $ref: /schemas/simple-bus.yaml# 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ciproperties: 2562306a36Sopenharmony_ci compatible: 2662306a36Sopenharmony_ci contains: 2762306a36Sopenharmony_ci const: baikal,bt1-apb 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci reg: 3062306a36Sopenharmony_ci items: 3162306a36Sopenharmony_ci - description: APB EHB MMIO registers 3262306a36Sopenharmony_ci - description: APB MMIO region with no any device mapped 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci reg-names: 3562306a36Sopenharmony_ci items: 3662306a36Sopenharmony_ci - const: ehb 3762306a36Sopenharmony_ci - const: nodev 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci interrupts: 4062306a36Sopenharmony_ci maxItems: 1 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci clocks: 4362306a36Sopenharmony_ci items: 4462306a36Sopenharmony_ci - description: APB reference clock 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci clock-names: 4762306a36Sopenharmony_ci items: 4862306a36Sopenharmony_ci - const: pclk 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci resets: 5162306a36Sopenharmony_ci items: 5262306a36Sopenharmony_ci - description: APB domain reset line 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci reset-names: 5562306a36Sopenharmony_ci items: 5662306a36Sopenharmony_ci - const: prst 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ciunevaluatedProperties: false 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_cirequired: 6162306a36Sopenharmony_ci - compatible 6262306a36Sopenharmony_ci - reg 6362306a36Sopenharmony_ci - reg-names 6462306a36Sopenharmony_ci - interrupts 6562306a36Sopenharmony_ci - clocks 6662306a36Sopenharmony_ci - clock-names 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ciexamples: 6962306a36Sopenharmony_ci - | 7062306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/mips-gic.h> 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci bus@1f059000 { 7362306a36Sopenharmony_ci compatible = "baikal,bt1-apb", "simple-bus"; 7462306a36Sopenharmony_ci reg = <0x1f059000 0x1000>, 7562306a36Sopenharmony_ci <0x1d000000 0x2040000>; 7662306a36Sopenharmony_ci reg-names = "ehb", "nodev"; 7762306a36Sopenharmony_ci #address-cells = <1>; 7862306a36Sopenharmony_ci #size-cells = <1>; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci ranges; 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ci interrupts = <GIC_SHARED 16 IRQ_TYPE_LEVEL_HIGH>; 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci clocks = <&ccu_sys 1>; 8562306a36Sopenharmony_ci clock-names = "pclk"; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci resets = <&ccu_sys 1>; 8862306a36Sopenharmony_ci reset-names = "prst"; 8962306a36Sopenharmony_ci }; 9062306a36Sopenharmony_ci... 91