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

dt-bindings: memory-controllers: samsung,exynos4210-srom: Split out child node properties

In order to validate devices in child nodes, the device schemas need to
reference any child node properties. In order to do that, the properties
for child nodes need to be included in mc-peripheral-props.yaml.

"reg: { maxItems: 1 }" was also incorrect. It's up to the device schemas
how many reg entries they have.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20250203-dt-lan9115-fix-v1-3-eb35389a7365@kernel.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>

+36 -35
-35
Documentation/devicetree/bindings/memory-controllers/exynos-srom.yaml
··· 39 39 "^.*@[0-3],[a-f0-9]+$": 40 40 type: object 41 41 additionalProperties: true 42 - description: 43 - The actual device nodes should be added as subnodes to the SROMc node. 44 - These subnodes, in addition to regular device specification, should 45 - contain the following properties, describing configuration 46 - of the relevant SROM bank. 47 42 48 43 properties: 49 - reg: 50 - description: 51 - Bank number, base address (relative to start of the bank) and size 52 - of the memory mapped for the device. Note that base address will be 53 - typically 0 as this is the start of the bank. 54 - maxItems: 1 55 - 56 44 reg-io-width: 57 45 enum: [1, 2] 58 46 description: 59 47 Data width in bytes (1 or 2). If omitted, default of 1 is used. 60 48 61 - samsung,srom-page-mode: 62 - description: 63 - If page mode is set, 4 data page mode will be configured, 64 - else normal (1 data) page mode will be set. 65 - type: boolean 66 - 67 - samsung,srom-timing: 68 - $ref: /schemas/types.yaml#/definitions/uint32-array 69 - minItems: 6 70 - maxItems: 6 71 - description: | 72 - Array of 6 integers, specifying bank timings in the following order: 73 - Tacp, Tcah, Tcoh, Tacc, Tcos, Tacs. 74 - Each value is specified in cycles and has the following meaning 75 - and valid range: 76 - Tacp: Page mode access cycle at Page mode (0 - 15) 77 - Tcah: Address holding time after CSn (0 - 15) 78 - Tcoh: Chip selection hold on OEn (0 - 15) 79 - Tacc: Access cycle (0 - 31, the actual time is N + 1) 80 - Tcos: Chip selection set-up before OEn (0 - 15) 81 - Tacs: Address set-up before CSn (0 - 15) 82 - 83 49 required: 84 - - reg 85 50 - samsung,srom-timing 86 51 87 52 required:
+1
Documentation/devicetree/bindings/memory-controllers/mc-peripheral-props.yaml
··· 37 37 - $ref: ingenic,nemc-peripherals.yaml# 38 38 - $ref: intel,ixp4xx-expansion-peripheral-props.yaml# 39 39 - $ref: qcom,ebi2-peripheral-props.yaml# 40 + - $ref: samsung,exynos4210-srom-peripheral-props.yaml# 40 41 - $ref: ti,gpmc-child.yaml# 41 42 - $ref: fsl/fsl,imx-weim-peripherals.yaml 42 43
+35
Documentation/devicetree/bindings/memory-controllers/samsung,exynos4210-srom-peripheral-props.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/memory-controllers/samsung,exynos4210-srom-peripheral-props.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Peripheral Properties for Samsung Exynos SoC SROM Controller 8 + 9 + maintainers: 10 + - Krzysztof Kozlowski <krzk@kernel.org> 11 + 12 + properties: 13 + samsung,srom-page-mode: 14 + description: 15 + If page mode is set, 4 data page mode will be configured, 16 + else normal (1 data) page mode will be set. 17 + type: boolean 18 + 19 + samsung,srom-timing: 20 + $ref: /schemas/types.yaml#/definitions/uint32-array 21 + minItems: 6 22 + maxItems: 6 23 + description: | 24 + Array of 6 integers, specifying bank timings in the following order: 25 + Tacp, Tcah, Tcoh, Tacc, Tcos, Tacs. 26 + Each value is specified in cycles and has the following meaning 27 + and valid range: 28 + Tacp: Page mode access cycle at Page mode (0 - 15) 29 + Tcah: Address holding time after CSn (0 - 15) 30 + Tcoh: Chip selection hold on OEn (0 - 15) 31 + Tacc: Access cycle (0 - 31, the actual time is N + 1) 32 + Tcos: Chip selection set-up before OEn (0 - 15) 33 + Tacs: Address set-up before CSn (0 - 15) 34 + 35 + additionalProperties: true