162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/arm/stm32/st,mlahb.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: STMicroelectronics STM32 ML-AHB interconnect 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Fabien Dessenne <fabien.dessenne@foss.st.com> 1162306a36Sopenharmony_ci - Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: | 1462306a36Sopenharmony_ci These bindings describe the STM32 SoCs ML-AHB interconnect bus which connects 1562306a36Sopenharmony_ci a Cortex-M subsystem with dedicated memories. The MCU SRAM and RETRAM memory 1662306a36Sopenharmony_ci parts can be accessed through different addresses (see "RAM aliases" in [1]) 1762306a36Sopenharmony_ci using different buses (see [2]): balancing the Cortex-M firmware accesses 1862306a36Sopenharmony_ci among those ports allows to tune the system performance. 1962306a36Sopenharmony_ci [1]: https://www.st.com/resource/en/reference_manual/dm00327659.pdf 2062306a36Sopenharmony_ci [2]: https://wiki.st.com/stm32mpu/wiki/STM32MP15_RAM_mapping 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciallOf: 2362306a36Sopenharmony_ci - $ref: /schemas/simple-bus.yaml# 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciproperties: 2662306a36Sopenharmony_ci compatible: 2762306a36Sopenharmony_ci contains: 2862306a36Sopenharmony_ci enum: 2962306a36Sopenharmony_ci - st,mlahb 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci dma-ranges: 3262306a36Sopenharmony_ci description: | 3362306a36Sopenharmony_ci Describe memory addresses translation between the local CPU and the 3462306a36Sopenharmony_ci remote Cortex-M processor. Each memory region, is declared with 3562306a36Sopenharmony_ci 3 parameters: 3662306a36Sopenharmony_ci - param 1: device base address (Cortex-M processor address) 3762306a36Sopenharmony_ci - param 2: physical base address (local CPU address) 3862306a36Sopenharmony_ci - param 3: size of the memory region. 3962306a36Sopenharmony_ci maxItems: 3 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci '#address-cells': 4262306a36Sopenharmony_ci const: 1 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci '#size-cells': 4562306a36Sopenharmony_ci const: 1 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_cirequired: 4862306a36Sopenharmony_ci - compatible 4962306a36Sopenharmony_ci - '#address-cells' 5062306a36Sopenharmony_ci - '#size-cells' 5162306a36Sopenharmony_ci - dma-ranges 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ciunevaluatedProperties: false 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ciexamples: 5662306a36Sopenharmony_ci - | 5762306a36Sopenharmony_ci mlahb: ahb@38000000 { 5862306a36Sopenharmony_ci compatible = "st,mlahb", "simple-bus"; 5962306a36Sopenharmony_ci #address-cells = <1>; 6062306a36Sopenharmony_ci #size-cells = <1>; 6162306a36Sopenharmony_ci reg = <0x10000000 0x40000>; 6262306a36Sopenharmony_ci ranges; 6362306a36Sopenharmony_ci dma-ranges = <0x00000000 0x38000000 0x10000>, 6462306a36Sopenharmony_ci <0x10000000 0x10000000 0x60000>, 6562306a36Sopenharmony_ci <0x30000000 0x30000000 0x60000>; 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci m4_rproc: m4@10000000 { 6862306a36Sopenharmony_ci reg = <0x10000000 0x40000>; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci }; 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci... 73