Re: [PATCH 06/11] dt-bindings: dma: stm32-dma3: introduce st,axi-max-burst-len property

Amelie Delaunay
2024-10-11T09:34:45Z

On 10/10/24 20:16, Rob Herring wrote:
> On Thu, Oct 10, 2024 at 04:27:56PM +0200, Amelie Delaunay wrote:
>> DMA3 maximum burst length (in unit of beat) may be restricted depending
>> on bus interconnect.
>>
>> As mentionned in STM32MP2 reference manual [1], "the maximum allowed AXI
>> burst length is 16. The user must set [S|D]BL_1 lower or equal to 15
>> if the Source/Destination allocated port is AXI (if [S|D]AP=0)".
>
> This should be implied by the SoC specific compatible.
>

I took an example from snps,dw-axi-dmac.yaml (snps,axi-max-burst-len).
But I agree, it will be implied by st,stm32mp25-dma3 compatible in V2.
Patch 8/11 will then be dropped.

Regards,
Amelie

>>
>> Introduce st,axi-max-burst-len. If used, it will clamp the burst length
>> to that value if AXI port is used, if not, the maximum burst length value
>> supported by DMA3 is used.
>>
>> [1] https://www.st.com/resource/en/reference_manual/rm0457-stm32mp2325xx-advanced-armbased-3264bit-mpus-stmicroelectronics.pdf
>>
>> Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
>> ---
>> .../devicetree/bindings/dma/stm32/st,stm32-dma3.yaml | 11 +++++++++++
>> 1 file changed, 11 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/dma/stm32/st,stm32-dma3.yaml b/Documentation/devicetree/bindings/dma/stm32/st,stm32-dma3.yaml
>> index 38c30271f732e0c8da48199a224a88bb647eeca7..90ad70bb24eb790afe72bf2085478fa4cec60b94 100644
>> --- a/Documentation/devicetree/bindings/dma/stm32/st,stm32-dma3.yaml
>> +++ b/Documentation/devicetree/bindings/dma/stm32/st,stm32-dma3.yaml
>> @@ -51,6 +51,16 @@ properties:
>> power-domains:
>> maxItems: 1
>>
>> + st,axi-max-burst-len:
>> + description: |
>> + Restrict AXI burst length in unit of beat by value specified in this property.
>> + The value specified in this property is clamped to the maximum burst length supported by DMA3.
>> + If this property is missing, the maximum burst length supported by DMA3 is used.
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + minimum: 1
>> + maximum: 256
>> + default: 64
>> +
>> "#dma-cells":
>> const: 3
>> description: |
>> @@ -137,5 +147,6 @@ examples:
>> <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
>> clocks = <&rcc CK_BUS_HPDMA1>;
>> #dma-cells = <3>;
>> + st,axi-max-burst-len = <16>;
>> };
>> ...
>>
>> --
>> 2.25.1
>>