134566e4fSArnaud Pouliquen# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 234566e4fSArnaud Pouliquen%YAML 1.2 334566e4fSArnaud Pouliquen--- 4*45698208SRob Herring$id: http://devicetree.org/schemas/arm/stm32/st,mlahb.yaml# 5*45698208SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml# 634566e4fSArnaud Pouliquen 784e85359SKrzysztof Kozlowskititle: STMicroelectronics STM32 ML-AHB interconnect 834566e4fSArnaud Pouliquen 934566e4fSArnaud Pouliquenmaintainers: 10f4eedebdSPatrice Chotard - Fabien Dessenne <fabien.dessenne@foss.st.com> 11f4eedebdSPatrice Chotard - Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> 1234566e4fSArnaud Pouliquen 1334566e4fSArnaud Pouliquendescription: | 1434566e4fSArnaud Pouliquen These bindings describe the STM32 SoCs ML-AHB interconnect bus which connects 1534566e4fSArnaud Pouliquen a Cortex-M subsystem with dedicated memories. The MCU SRAM and RETRAM memory 1634566e4fSArnaud Pouliquen parts can be accessed through different addresses (see "RAM aliases" in [1]) 1734566e4fSArnaud Pouliquen using different buses (see [2]): balancing the Cortex-M firmware accesses 1834566e4fSArnaud Pouliquen among those ports allows to tune the system performance. 1934566e4fSArnaud Pouliquen [1]: https://www.st.com/resource/en/reference_manual/dm00327659.pdf 2034566e4fSArnaud Pouliquen [2]: https://wiki.st.com/stm32mpu/wiki/STM32MP15_RAM_mapping 2134566e4fSArnaud Pouliquen 2234566e4fSArnaud PouliquenallOf: 2334566e4fSArnaud Pouliquen - $ref: /schemas/simple-bus.yaml# 2434566e4fSArnaud Pouliquen 2534566e4fSArnaud Pouliquenproperties: 2634566e4fSArnaud Pouliquen compatible: 2734566e4fSArnaud Pouliquen contains: 2834566e4fSArnaud Pouliquen enum: 2934566e4fSArnaud Pouliquen - st,mlahb 3034566e4fSArnaud Pouliquen 3134566e4fSArnaud Pouliquen dma-ranges: 3234566e4fSArnaud Pouliquen description: | 3334566e4fSArnaud Pouliquen Describe memory addresses translation between the local CPU and the 3434566e4fSArnaud Pouliquen remote Cortex-M processor. Each memory region, is declared with 3534566e4fSArnaud Pouliquen 3 parameters: 3634566e4fSArnaud Pouliquen - param 1: device base address (Cortex-M processor address) 3734566e4fSArnaud Pouliquen - param 2: physical base address (local CPU address) 3834566e4fSArnaud Pouliquen - param 3: size of the memory region. 3934566e4fSArnaud Pouliquen maxItems: 3 4034566e4fSArnaud Pouliquen 4134566e4fSArnaud Pouliquen '#address-cells': 4234566e4fSArnaud Pouliquen const: 1 4334566e4fSArnaud Pouliquen 4434566e4fSArnaud Pouliquen '#size-cells': 4534566e4fSArnaud Pouliquen const: 1 4634566e4fSArnaud Pouliquen 4734566e4fSArnaud Pouliquenrequired: 4834566e4fSArnaud Pouliquen - compatible 4934566e4fSArnaud Pouliquen - '#address-cells' 5034566e4fSArnaud Pouliquen - '#size-cells' 5134566e4fSArnaud Pouliquen - dma-ranges 5234566e4fSArnaud Pouliquen 536fdc6e23SRob HerringunevaluatedProperties: false 546fdc6e23SRob Herring 5534566e4fSArnaud Pouliquenexamples: 5634566e4fSArnaud Pouliquen - | 5751a21e0eSRob Herring mlahb: ahb@38000000 { 5834566e4fSArnaud Pouliquen compatible = "st,mlahb", "simple-bus"; 5934566e4fSArnaud Pouliquen #address-cells = <1>; 6034566e4fSArnaud Pouliquen #size-cells = <1>; 6134566e4fSArnaud Pouliquen reg = <0x10000000 0x40000>; 6234566e4fSArnaud Pouliquen ranges; 6334566e4fSArnaud Pouliquen dma-ranges = <0x00000000 0x38000000 0x10000>, 6434566e4fSArnaud Pouliquen <0x10000000 0x10000000 0x60000>, 6534566e4fSArnaud Pouliquen <0x30000000 0x30000000 0x60000>; 6634566e4fSArnaud Pouliquen 6734566e4fSArnaud Pouliquen m4_rproc: m4@10000000 { 6834566e4fSArnaud Pouliquen reg = <0x10000000 0x40000>; 6934566e4fSArnaud Pouliquen }; 7034566e4fSArnaud Pouliquen }; 7134566e4fSArnaud Pouliquen 7234566e4fSArnaud Pouliquen... 73