Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: memory: fsl: convert DDR controller to dtschema

Convert Freescale/NXP DDR memory controller bindings to DT schema format
using json-schema.

Previous bindings were not listing all compatibles, so scan through
devicetree sources and drivers to get these.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210826113049.92962-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Krzysztof Kozlowski and committed by
Rob Herring
0e3e0fa7 ecc4103f

+83 -29
-29
Documentation/devicetree/bindings/memory-controllers/fsl/ddr.txt
··· 1 - Freescale DDR memory controller 2 - 3 - Properties: 4 - 5 - - compatible : Should include "fsl,chip-memory-controller" where 6 - chip is the processor (bsc9132, mpc8572 etc.), or 7 - "fsl,qoriq-memory-controller". 8 - - reg : Address and size of DDR controller registers 9 - - interrupts : Error interrupt of DDR controller 10 - - little-endian : Specifies little-endian access to registers 11 - If omitted, big-endian will be used. 12 - 13 - Example 1: 14 - 15 - memory-controller@2000 { 16 - compatible = "fsl,bsc9132-memory-controller"; 17 - reg = <0x2000 0x1000>; 18 - interrupts = <16 2 1 8>; 19 - }; 20 - 21 - 22 - Example 2: 23 - 24 - ddr1: memory-controller@8000 { 25 - compatible = "fsl,qoriq-memory-controller-v4.7", 26 - "fsl,qoriq-memory-controller"; 27 - reg = <0x8000 0x1000>; 28 - interrupts = <16 2 1 23>; 29 - };
+83
Documentation/devicetree/bindings/memory-controllers/fsl/fsl,ddr.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/memory-controllers/fsl/fsl,ddr.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Freescale DDR memory controller 8 + 9 + maintainers: 10 + - Borislav Petkov <bp@alien8.de> 11 + - York Sun <york.sun@nxp.com> 12 + 13 + properties: 14 + $nodename: 15 + pattern: "^memory-controller@[0-9a-f]+$" 16 + 17 + compatible: 18 + oneOf: 19 + - items: 20 + - enum: 21 + - fsl,qoriq-memory-controller-v4.4 22 + - fsl,qoriq-memory-controller-v4.5 23 + - fsl,qoriq-memory-controller-v4.7 24 + - fsl,qoriq-memory-controller-v5.0 25 + - const: fsl,qoriq-memory-controller 26 + - enum: 27 + - fsl,bsc9132-memory-controller 28 + - fsl,8540-memory-controller 29 + - fsl,8541-memory-controller 30 + - fsl,8544-memory-controller 31 + - fsl,8548-memory-controller 32 + - fsl,8555-memory-controller 33 + - fsl,8568-memory-controller 34 + - fsl,mpc8536-memory-controller 35 + - fsl,mpc8540-memory-controller 36 + - fsl,mpc8541-memory-controller 37 + - fsl,mpc8544-memory-controller 38 + - fsl,mpc8548-memory-controller 39 + - fsl,mpc8555-memory-controller 40 + - fsl,mpc8560-memory-controller 41 + - fsl,mpc8568-memory-controller 42 + - fsl,mpc8569-memory-controller 43 + - fsl,mpc8572-memory-controller 44 + - fsl,mpc8349-memory-controller 45 + - fsl,p1020-memory-controller 46 + - fsl,p1021-memory-controller 47 + - fsl,p2020-memory-controller 48 + - fsl,qoriq-memory-controller 49 + 50 + interrupts: 51 + maxItems: 1 52 + 53 + little-endian: 54 + description: 55 + Specifies little-endian access to registers. If omitted, big-endian will 56 + be used. 57 + type: boolean 58 + 59 + reg: 60 + maxItems: 1 61 + 62 + required: 63 + - compatible 64 + - interrupts 65 + - reg 66 + 67 + additionalProperties: false 68 + 69 + examples: 70 + - | 71 + memory-controller@2000 { 72 + compatible = "fsl,bsc9132-memory-controller"; 73 + reg = <0x2000 0x1000>; 74 + interrupts = <16 2 1 8>; 75 + }; 76 + 77 + - | 78 + memory-controller@8000 { 79 + compatible = "fsl,qoriq-memory-controller-v4.7", 80 + "fsl,qoriq-memory-controller"; 81 + reg = <0x8000 0x1000>; 82 + interrupts = <16 2 1 23>; 83 + };