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