[PATCH linux v2 1/3] spi: dt-bindings: aspeed: Add a ranges property

Rob Herring robh at kernel.org
Tue Oct 18 05:51:38 AEDT 2022


On Mon, Oct 17, 2022 at 11:16:22AM +0200, Cédric Le Goater wrote:
> "ranges" predefines settings for the decoding ranges of each CS.

Please explain the problem, not what the change is.

> Cc: Naresh Solanki <naresh.solanki at 9elements.com>
> Cc: Chin-Ting Kuo <chin-ting_kuo at aspeedtech.com>
> Signed-off-by: Cédric Le Goater <clg at kaod.org>
> ---
>  .../devicetree/bindings/spi/aspeed,ast2600-fmc.yaml      | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/spi/aspeed,ast2600-fmc.yaml b/Documentation/devicetree/bindings/spi/aspeed,ast2600-fmc.yaml
> index fa8f4ac20985..a11cbc4c4c5c 100644
> --- a/Documentation/devicetree/bindings/spi/aspeed,ast2600-fmc.yaml
> +++ b/Documentation/devicetree/bindings/spi/aspeed,ast2600-fmc.yaml
> @@ -38,6 +38,14 @@ properties:
>    interrupts:
>      maxItems: 1
>  
> +  ranges:
> +    minItems: 1
> +    maxItems: 5
> +    description: |
> +      Defines the address mapping for child devices with four integer
> +      values for each chip-select line in use:
> +      <cs-number> 0 <physical address of mapping> <size>
> +
>  required:
>    - compatible
>    - reg
> @@ -58,6 +66,7 @@ examples:
>          compatible = "aspeed,ast2600-fmc";
>          clocks = <&syscon ASPEED_CLK_AHB>;
>          interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
> +        ranges = <0 0 0x20000000 0x2000000>, <1 0 0x22000000 0x2000000>;

By having ranges here, 'reg' in child nodes become translatable 
addresses. But they are not because they are SPI chip-selects. Only 
memory mapped addresses should be translatable. 

Probably the ranges here should be in 'reg' of the controller.

>  
>          flash at 0 {
>                  reg = < 0 >;
> -- 
> 2.37.3
> 
> 


More information about the Linux-aspeed mailing list