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

dt-bindings: memory-controllers: qcom,ebi2: 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-2-eb35389a7365@kernel.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>

+92 -84
+1
Documentation/devicetree/bindings/memory-controllers/mc-peripheral-props.yaml
··· 36 36 - $ref: st,stm32-fmc2-ebi-props.yaml# 37 37 - $ref: ingenic,nemc-peripherals.yaml# 38 38 - $ref: intel,ixp4xx-expansion-peripheral-props.yaml# 39 + - $ref: qcom,ebi2-peripheral-props.yaml# 39 40 - $ref: ti,gpmc-child.yaml# 40 41 - $ref: fsl/fsl,imx-weim-peripherals.yaml 41 42
+91
Documentation/devicetree/bindings/memory-controllers/qcom,ebi2-peripheral-props.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/memory-controllers/qcom,ebi2-peripheral-props.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Peripheral Properties for Qualcomm External Bus Interface 2 (EBI2) 8 + 9 + maintainers: 10 + - Bjorn Andersson <andersson@kernel.org> 11 + 12 + properties: 13 + # SLOW chip selects 14 + qcom,xmem-recovery-cycles: 15 + $ref: /schemas/types.yaml#/definitions/uint32 16 + description: > 17 + The time the memory continues to drive the data bus after OE 18 + is de-asserted, in order to avoid contention on the data bus. 19 + They are inserted when reading one CS and switching to another 20 + CS or read followed by write on the same CS. Minimum value is 21 + actually 1, so a value of 0 will still yield 1 recovery cycle. 22 + minimum: 0 23 + maximum: 15 24 + 25 + qcom,xmem-write-hold-cycles: 26 + $ref: /schemas/types.yaml#/definitions/uint32 27 + description: > 28 + The extra cycles inserted after every write minimum 1. The 29 + data out is driven from the time WE is asserted until CS is 30 + asserted. With a hold of 1 (value = 0), the CS stays active 31 + for 1 extra cycle, etc. 32 + minimum: 0 33 + maximum: 15 34 + 35 + qcom,xmem-write-delta-cycles: 36 + $ref: /schemas/types.yaml#/definitions/uint32 37 + description: > 38 + The initial latency for write cycles inserted for the first 39 + write to a page or burst memory. 40 + minimum: 0 41 + maximum: 255 42 + 43 + qcom,xmem-read-delta-cycles: 44 + $ref: /schemas/types.yaml#/definitions/uint32 45 + description: > 46 + The initial latency for read cycles inserted for the first 47 + read to a page or burst memory. 48 + minimum: 0 49 + maximum: 255 50 + 51 + qcom,xmem-write-wait-cycles: 52 + $ref: /schemas/types.yaml#/definitions/uint32 53 + description: > 54 + The number of wait cycles for every write access. 55 + minimum: 0 56 + maximum: 15 57 + 58 + qcom,xmem-read-wait-cycles: 59 + $ref: /schemas/types.yaml#/definitions/uint32 60 + description: > 61 + The number of wait cycles for every read access. 62 + minimum: 0 63 + maximum: 15 64 + 65 + 66 + # FAST chip selects 67 + qcom,xmem-address-hold-enable: 68 + $ref: /schemas/types.yaml#/definitions/uint32 69 + description: > 70 + Holds the address for an extra cycle to meet hold time 71 + requirements with ADV assertion, when set to 1. 72 + enum: [ 0, 1 ] 73 + 74 + qcom,xmem-adv-to-oe-recovery-cycles: 75 + $ref: /schemas/types.yaml#/definitions/uint32 76 + description: > 77 + The number of cycles elapsed before an OE assertion, with 78 + respect to the cycle where ADV (address valid) is asserted. 79 + minimum: 0 80 + maximum: 3 81 + 82 + qcom,xmem-read-hold-cycles: 83 + $ref: /schemas/types.yaml#/definitions/uint32 84 + description: > 85 + The length in cycles of the first segment of a read transfer. 86 + For a single read transfer this will be the time from CS 87 + assertion to OE assertion. 88 + minimum: 0 89 + maximum: 15 90 + 91 + additionalProperties: true
-84
Documentation/devicetree/bindings/memory-controllers/qcom,ebi2.yaml
··· 105 105 "^.*@[0-5],[0-9a-f]+$": 106 106 type: object 107 107 additionalProperties: true 108 - properties: 109 - reg: 110 - maxItems: 1 111 - 112 - # SLOW chip selects 113 - qcom,xmem-recovery-cycles: 114 - $ref: /schemas/types.yaml#/definitions/uint32 115 - description: > 116 - The time the memory continues to drive the data bus after OE 117 - is de-asserted, in order to avoid contention on the data bus. 118 - They are inserted when reading one CS and switching to another 119 - CS or read followed by write on the same CS. Minimum value is 120 - actually 1, so a value of 0 will still yield 1 recovery cycle. 121 - minimum: 0 122 - maximum: 15 123 - 124 - qcom,xmem-write-hold-cycles: 125 - $ref: /schemas/types.yaml#/definitions/uint32 126 - description: > 127 - The extra cycles inserted after every write minimum 1. The 128 - data out is driven from the time WE is asserted until CS is 129 - asserted. With a hold of 1 (value = 0), the CS stays active 130 - for 1 extra cycle, etc. 131 - minimum: 0 132 - maximum: 15 133 - 134 - qcom,xmem-write-delta-cycles: 135 - $ref: /schemas/types.yaml#/definitions/uint32 136 - description: > 137 - The initial latency for write cycles inserted for the first 138 - write to a page or burst memory. 139 - minimum: 0 140 - maximum: 255 141 - 142 - qcom,xmem-read-delta-cycles: 143 - $ref: /schemas/types.yaml#/definitions/uint32 144 - description: > 145 - The initial latency for read cycles inserted for the first 146 - read to a page or burst memory. 147 - minimum: 0 148 - maximum: 255 149 - 150 - qcom,xmem-write-wait-cycles: 151 - $ref: /schemas/types.yaml#/definitions/uint32 152 - description: > 153 - The number of wait cycles for every write access. 154 - minimum: 0 155 - maximum: 15 156 - 157 - qcom,xmem-read-wait-cycles: 158 - $ref: /schemas/types.yaml#/definitions/uint32 159 - description: > 160 - The number of wait cycles for every read access. 161 - minimum: 0 162 - maximum: 15 163 - 164 - 165 - # FAST chip selects 166 - qcom,xmem-address-hold-enable: 167 - $ref: /schemas/types.yaml#/definitions/uint32 168 - description: > 169 - Holds the address for an extra cycle to meet hold time 170 - requirements with ADV assertion, when set to 1. 171 - enum: [ 0, 1 ] 172 - 173 - qcom,xmem-adv-to-oe-recovery-cycles: 174 - $ref: /schemas/types.yaml#/definitions/uint32 175 - description: > 176 - The number of cycles elapsed before an OE assertion, with 177 - respect to the cycle where ADV (address valid) is asserted. 178 - minimum: 0 179 - maximum: 3 180 - 181 - qcom,xmem-read-hold-cycles: 182 - $ref: /schemas/types.yaml#/definitions/uint32 183 - description: > 184 - The length in cycles of the first segment of a read transfer. 185 - For a single read transfer this will be the time from CS 186 - assertion to OE assertion. 187 - minimum: 0 188 - maximum: 15 189 - 190 - required: 191 - - reg 192 108 193 109 additionalProperties: false 194 110