1*8ccc0d23SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*8ccc0d23SEmmanuel Vadot%YAML 1.2 3*8ccc0d23SEmmanuel Vadot--- 4*8ccc0d23SEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/qcom,ebi2-peripheral-props.yaml# 5*8ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*8ccc0d23SEmmanuel Vadot 7*8ccc0d23SEmmanuel Vadottitle: Peripheral Properties for Qualcomm External Bus Interface 2 (EBI2) 8*8ccc0d23SEmmanuel Vadot 9*8ccc0d23SEmmanuel Vadotmaintainers: 10*8ccc0d23SEmmanuel Vadot - Bjorn Andersson <andersson@kernel.org> 11*8ccc0d23SEmmanuel Vadot 12*8ccc0d23SEmmanuel Vadotproperties: 13*8ccc0d23SEmmanuel Vadot # SLOW chip selects 14*8ccc0d23SEmmanuel Vadot qcom,xmem-recovery-cycles: 15*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 16*8ccc0d23SEmmanuel Vadot description: > 17*8ccc0d23SEmmanuel Vadot The time the memory continues to drive the data bus after OE 18*8ccc0d23SEmmanuel Vadot is de-asserted, in order to avoid contention on the data bus. 19*8ccc0d23SEmmanuel Vadot They are inserted when reading one CS and switching to another 20*8ccc0d23SEmmanuel Vadot CS or read followed by write on the same CS. Minimum value is 21*8ccc0d23SEmmanuel Vadot actually 1, so a value of 0 will still yield 1 recovery cycle. 22*8ccc0d23SEmmanuel Vadot minimum: 0 23*8ccc0d23SEmmanuel Vadot maximum: 15 24*8ccc0d23SEmmanuel Vadot 25*8ccc0d23SEmmanuel Vadot qcom,xmem-write-hold-cycles: 26*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 27*8ccc0d23SEmmanuel Vadot description: > 28*8ccc0d23SEmmanuel Vadot The extra cycles inserted after every write minimum 1. The 29*8ccc0d23SEmmanuel Vadot data out is driven from the time WE is asserted until CS is 30*8ccc0d23SEmmanuel Vadot asserted. With a hold of 1 (value = 0), the CS stays active 31*8ccc0d23SEmmanuel Vadot for 1 extra cycle, etc. 32*8ccc0d23SEmmanuel Vadot minimum: 0 33*8ccc0d23SEmmanuel Vadot maximum: 15 34*8ccc0d23SEmmanuel Vadot 35*8ccc0d23SEmmanuel Vadot qcom,xmem-write-delta-cycles: 36*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 37*8ccc0d23SEmmanuel Vadot description: > 38*8ccc0d23SEmmanuel Vadot The initial latency for write cycles inserted for the first 39*8ccc0d23SEmmanuel Vadot write to a page or burst memory. 40*8ccc0d23SEmmanuel Vadot minimum: 0 41*8ccc0d23SEmmanuel Vadot maximum: 255 42*8ccc0d23SEmmanuel Vadot 43*8ccc0d23SEmmanuel Vadot qcom,xmem-read-delta-cycles: 44*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 45*8ccc0d23SEmmanuel Vadot description: > 46*8ccc0d23SEmmanuel Vadot The initial latency for read cycles inserted for the first 47*8ccc0d23SEmmanuel Vadot read to a page or burst memory. 48*8ccc0d23SEmmanuel Vadot minimum: 0 49*8ccc0d23SEmmanuel Vadot maximum: 255 50*8ccc0d23SEmmanuel Vadot 51*8ccc0d23SEmmanuel Vadot qcom,xmem-write-wait-cycles: 52*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 53*8ccc0d23SEmmanuel Vadot description: > 54*8ccc0d23SEmmanuel Vadot The number of wait cycles for every write access. 55*8ccc0d23SEmmanuel Vadot minimum: 0 56*8ccc0d23SEmmanuel Vadot maximum: 15 57*8ccc0d23SEmmanuel Vadot 58*8ccc0d23SEmmanuel Vadot qcom,xmem-read-wait-cycles: 59*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 60*8ccc0d23SEmmanuel Vadot description: > 61*8ccc0d23SEmmanuel Vadot The number of wait cycles for every read access. 62*8ccc0d23SEmmanuel Vadot minimum: 0 63*8ccc0d23SEmmanuel Vadot maximum: 15 64*8ccc0d23SEmmanuel Vadot 65*8ccc0d23SEmmanuel Vadot 66*8ccc0d23SEmmanuel Vadot # FAST chip selects 67*8ccc0d23SEmmanuel Vadot qcom,xmem-address-hold-enable: 68*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 69*8ccc0d23SEmmanuel Vadot description: > 70*8ccc0d23SEmmanuel Vadot Holds the address for an extra cycle to meet hold time 71*8ccc0d23SEmmanuel Vadot requirements with ADV assertion, when set to 1. 72*8ccc0d23SEmmanuel Vadot enum: [ 0, 1 ] 73*8ccc0d23SEmmanuel Vadot 74*8ccc0d23SEmmanuel Vadot qcom,xmem-adv-to-oe-recovery-cycles: 75*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 76*8ccc0d23SEmmanuel Vadot description: > 77*8ccc0d23SEmmanuel Vadot The number of cycles elapsed before an OE assertion, with 78*8ccc0d23SEmmanuel Vadot respect to the cycle where ADV (address valid) is asserted. 79*8ccc0d23SEmmanuel Vadot minimum: 0 80*8ccc0d23SEmmanuel Vadot maximum: 3 81*8ccc0d23SEmmanuel Vadot 82*8ccc0d23SEmmanuel Vadot qcom,xmem-read-hold-cycles: 83*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 84*8ccc0d23SEmmanuel Vadot description: > 85*8ccc0d23SEmmanuel Vadot The length in cycles of the first segment of a read transfer. 86*8ccc0d23SEmmanuel Vadot For a single read transfer this will be the time from CS 87*8ccc0d23SEmmanuel Vadot assertion to OE assertion. 88*8ccc0d23SEmmanuel Vadot minimum: 0 89*8ccc0d23SEmmanuel Vadot maximum: 15 90*8ccc0d23SEmmanuel Vadot 91*8ccc0d23SEmmanuel VadotadditionalProperties: true 92