1*c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*c9ccf3a3SEmmanuel Vadot%YAML 1.2 3*c9ccf3a3SEmmanuel Vadot--- 4*c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/ddr/jedec,lpddr3-timings.yaml# 5*c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*c9ccf3a3SEmmanuel Vadot 7*c9ccf3a3SEmmanuel Vadottitle: LPDDR3 SDRAM AC timing parameters for a given speed-bin 8*c9ccf3a3SEmmanuel Vadot 9*c9ccf3a3SEmmanuel Vadotmaintainers: 10*c9ccf3a3SEmmanuel Vadot - Krzysztof Kozlowski <krzk@kernel.org> 11*c9ccf3a3SEmmanuel Vadot 12*c9ccf3a3SEmmanuel Vadotproperties: 13*c9ccf3a3SEmmanuel Vadot compatible: 14*c9ccf3a3SEmmanuel Vadot const: jedec,lpddr3-timings 15*c9ccf3a3SEmmanuel Vadot 16*c9ccf3a3SEmmanuel Vadot reg: 17*c9ccf3a3SEmmanuel Vadot maxItems: 1 18*c9ccf3a3SEmmanuel Vadot description: | 19*c9ccf3a3SEmmanuel Vadot Maximum DDR clock frequency for the speed-bin, in Hz. 20*c9ccf3a3SEmmanuel Vadot Property is deprecated, use max-freq. 21*c9ccf3a3SEmmanuel Vadot deprecated: true 22*c9ccf3a3SEmmanuel Vadot 23*c9ccf3a3SEmmanuel Vadot max-freq: 24*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 25*c9ccf3a3SEmmanuel Vadot description: | 26*c9ccf3a3SEmmanuel Vadot Maximum DDR clock frequency for the speed-bin, in Hz. 27*c9ccf3a3SEmmanuel Vadot 28*c9ccf3a3SEmmanuel Vadot min-freq: 29*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 30*c9ccf3a3SEmmanuel Vadot description: | 31*c9ccf3a3SEmmanuel Vadot Minimum DDR clock frequency for the speed-bin, in Hz. 32*c9ccf3a3SEmmanuel Vadot 33*c9ccf3a3SEmmanuel Vadot tCKE: 34*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 35*c9ccf3a3SEmmanuel Vadot description: | 36*c9ccf3a3SEmmanuel Vadot CKE minimum pulse width (HIGH and LOW pulse width) in pico seconds. 37*c9ccf3a3SEmmanuel Vadot 38*c9ccf3a3SEmmanuel Vadot tCKESR: 39*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 40*c9ccf3a3SEmmanuel Vadot description: | 41*c9ccf3a3SEmmanuel Vadot CKE minimum pulse width during SELF REFRESH (low pulse width during 42*c9ccf3a3SEmmanuel Vadot SELF REFRESH) in pico seconds. 43*c9ccf3a3SEmmanuel Vadot 44*c9ccf3a3SEmmanuel Vadot tFAW: 45*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 46*c9ccf3a3SEmmanuel Vadot description: | 47*c9ccf3a3SEmmanuel Vadot Four-bank activate window in pico seconds. 48*c9ccf3a3SEmmanuel Vadot 49*c9ccf3a3SEmmanuel Vadot tMRD: 50*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 51*c9ccf3a3SEmmanuel Vadot description: | 52*c9ccf3a3SEmmanuel Vadot Mode register set command delay in pico seconds. 53*c9ccf3a3SEmmanuel Vadot 54*c9ccf3a3SEmmanuel Vadot tR2R-C2C: 55*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 56*c9ccf3a3SEmmanuel Vadot description: | 57*c9ccf3a3SEmmanuel Vadot Additional READ-to-READ delay in chip-to-chip cases in pico seconds. 58*c9ccf3a3SEmmanuel Vadot 59*c9ccf3a3SEmmanuel Vadot tRAS: 60*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 61*c9ccf3a3SEmmanuel Vadot description: | 62*c9ccf3a3SEmmanuel Vadot Row active time in pico seconds. 63*c9ccf3a3SEmmanuel Vadot 64*c9ccf3a3SEmmanuel Vadot tRC: 65*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 66*c9ccf3a3SEmmanuel Vadot description: | 67*c9ccf3a3SEmmanuel Vadot ACTIVATE-to-ACTIVATE command period in pico seconds. 68*c9ccf3a3SEmmanuel Vadot 69*c9ccf3a3SEmmanuel Vadot tRCD: 70*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 71*c9ccf3a3SEmmanuel Vadot description: | 72*c9ccf3a3SEmmanuel Vadot RAS-to-CAS delay in pico seconds. 73*c9ccf3a3SEmmanuel Vadot 74*c9ccf3a3SEmmanuel Vadot tRFC: 75*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 76*c9ccf3a3SEmmanuel Vadot description: | 77*c9ccf3a3SEmmanuel Vadot Refresh Cycle time in pico seconds. 78*c9ccf3a3SEmmanuel Vadot 79*c9ccf3a3SEmmanuel Vadot tRPab: 80*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 81*c9ccf3a3SEmmanuel Vadot description: | 82*c9ccf3a3SEmmanuel Vadot Row precharge time (all banks) in pico seconds. 83*c9ccf3a3SEmmanuel Vadot 84*c9ccf3a3SEmmanuel Vadot tRPpb: 85*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 86*c9ccf3a3SEmmanuel Vadot description: | 87*c9ccf3a3SEmmanuel Vadot Row precharge time (single banks) in pico seconds. 88*c9ccf3a3SEmmanuel Vadot 89*c9ccf3a3SEmmanuel Vadot tRRD: 90*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 91*c9ccf3a3SEmmanuel Vadot description: | 92*c9ccf3a3SEmmanuel Vadot Active bank A to active bank B in pico seconds. 93*c9ccf3a3SEmmanuel Vadot 94*c9ccf3a3SEmmanuel Vadot tRTP: 95*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 96*c9ccf3a3SEmmanuel Vadot description: | 97*c9ccf3a3SEmmanuel Vadot Internal READ to PRECHARGE command delay in pico seconds. 98*c9ccf3a3SEmmanuel Vadot 99*c9ccf3a3SEmmanuel Vadot tW2W-C2C: 100*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 101*c9ccf3a3SEmmanuel Vadot description: | 102*c9ccf3a3SEmmanuel Vadot Additional WRITE-to-WRITE delay in chip-to-chip cases in pico seconds. 103*c9ccf3a3SEmmanuel Vadot 104*c9ccf3a3SEmmanuel Vadot tWR: 105*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 106*c9ccf3a3SEmmanuel Vadot description: | 107*c9ccf3a3SEmmanuel Vadot WRITE recovery time in pico seconds. 108*c9ccf3a3SEmmanuel Vadot 109*c9ccf3a3SEmmanuel Vadot tWTR: 110*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 111*c9ccf3a3SEmmanuel Vadot description: | 112*c9ccf3a3SEmmanuel Vadot Internal WRITE-to-READ command delay in pico seconds. 113*c9ccf3a3SEmmanuel Vadot 114*c9ccf3a3SEmmanuel Vadot tXP: 115*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 116*c9ccf3a3SEmmanuel Vadot description: | 117*c9ccf3a3SEmmanuel Vadot Exit power-down to next valid command delay in pico seconds. 118*c9ccf3a3SEmmanuel Vadot 119*c9ccf3a3SEmmanuel Vadot tXSR: 120*c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 121*c9ccf3a3SEmmanuel Vadot description: | 122*c9ccf3a3SEmmanuel Vadot SELF REFRESH exit to next valid command delay in pico seconds. 123*c9ccf3a3SEmmanuel Vadot 124*c9ccf3a3SEmmanuel Vadotrequired: 125*c9ccf3a3SEmmanuel Vadot - compatible 126*c9ccf3a3SEmmanuel Vadot - min-freq 127*c9ccf3a3SEmmanuel Vadot - max-freq 128*c9ccf3a3SEmmanuel Vadot 129*c9ccf3a3SEmmanuel VadotadditionalProperties: false 130*c9ccf3a3SEmmanuel Vadot 131*c9ccf3a3SEmmanuel Vadotexamples: 132*c9ccf3a3SEmmanuel Vadot - | 133*c9ccf3a3SEmmanuel Vadot lpddr3 { 134*c9ccf3a3SEmmanuel Vadot timings { 135*c9ccf3a3SEmmanuel Vadot compatible = "jedec,lpddr3-timings"; 136*c9ccf3a3SEmmanuel Vadot max-freq = <800000000>; 137*c9ccf3a3SEmmanuel Vadot min-freq = <100000000>; 138*c9ccf3a3SEmmanuel Vadot tCKE = <3750>; 139*c9ccf3a3SEmmanuel Vadot tCKESR = <3750>; 140*c9ccf3a3SEmmanuel Vadot tFAW = <25000>; 141*c9ccf3a3SEmmanuel Vadot tMRD = <7000>; 142*c9ccf3a3SEmmanuel Vadot tR2R-C2C = <0>; 143*c9ccf3a3SEmmanuel Vadot tRAS = <23000>; 144*c9ccf3a3SEmmanuel Vadot tRC = <33750>; 145*c9ccf3a3SEmmanuel Vadot tRCD = <10000>; 146*c9ccf3a3SEmmanuel Vadot tRFC = <65000>; 147*c9ccf3a3SEmmanuel Vadot tRPab = <12000>; 148*c9ccf3a3SEmmanuel Vadot tRPpb = <12000>; 149*c9ccf3a3SEmmanuel Vadot tRRD = <6000>; 150*c9ccf3a3SEmmanuel Vadot tRTP = <3750>; 151*c9ccf3a3SEmmanuel Vadot tW2W-C2C = <0>; 152*c9ccf3a3SEmmanuel Vadot tWR = <7500>; 153*c9ccf3a3SEmmanuel Vadot tWTR = <3750>; 154*c9ccf3a3SEmmanuel Vadot tXP = <3750>; 155*c9ccf3a3SEmmanuel Vadot tXSR = <70000>; 156*c9ccf3a3SEmmanuel Vadot }; 157*c9ccf3a3SEmmanuel Vadot }; 158