19e17f71eSDmitry Osipenko# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 29e17f71eSDmitry Osipenko%YAML 1.2 39e17f71eSDmitry Osipenko--- 49e17f71eSDmitry Osipenko$id: http://devicetree.org/schemas/memory-controllers/ddr/jedec,lpddr2.yaml# 59e17f71eSDmitry Osipenko$schema: http://devicetree.org/meta-schemas/core.yaml# 69e17f71eSDmitry Osipenko 79e17f71eSDmitry Osipenkotitle: LPDDR2 SDRAM compliant to JEDEC JESD209-2 89e17f71eSDmitry Osipenko 99e17f71eSDmitry Osipenkomaintainers: 108a1e6bb3SKrzysztof Kozlowski - Krzysztof Kozlowski <krzk@kernel.org> 119e17f71eSDmitry Osipenko 12b7178cd5SJulius WernerallOf: 13b7178cd5SJulius Werner - $ref: jedec,lpddr-props.yaml# 14b7178cd5SJulius Werner 159e17f71eSDmitry Osipenkoproperties: 169e17f71eSDmitry Osipenko compatible: 179e17f71eSDmitry Osipenko oneOf: 189e17f71eSDmitry Osipenko - items: 199e17f71eSDmitry Osipenko - enum: 209e17f71eSDmitry Osipenko - elpida,ECB240ABACN 212782ece0SDmitry Osipenko - elpida,B8132B2PB-6D-F 229e17f71eSDmitry Osipenko - enum: 23*686fe63bSJulius Werner - jedec,lpddr2-nvm 24*686fe63bSJulius Werner - jedec,lpddr2-s2 259e17f71eSDmitry Osipenko - jedec,lpddr2-s4 269e17f71eSDmitry Osipenko - items: 27*686fe63bSJulius Werner - pattern: "^lpddr2-[0-9a-f]{2},[0-9a-f]{4}$" 289e17f71eSDmitry Osipenko - enum: 299e17f71eSDmitry Osipenko - jedec,lpddr2-nvm 30*686fe63bSJulius Werner - jedec,lpddr2-s2 31*686fe63bSJulius Werner - jedec,lpddr2-s4 329e17f71eSDmitry Osipenko 333539a2c6SDmitry Osipenko revision-id1: 343539a2c6SDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 353539a2c6SDmitry Osipenko maximum: 255 363539a2c6SDmitry Osipenko description: | 373539a2c6SDmitry Osipenko Revision 1 value of SDRAM chip. Obtained from device datasheet. 3880ce9173SJulius Werner Property is deprecated, use revision-id instead. 3980ce9173SJulius Werner deprecated: true 403539a2c6SDmitry Osipenko 413539a2c6SDmitry Osipenko revision-id2: 423539a2c6SDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 433539a2c6SDmitry Osipenko maximum: 255 443539a2c6SDmitry Osipenko description: | 453539a2c6SDmitry Osipenko Revision 2 value of SDRAM chip. Obtained from device datasheet. 4680ce9173SJulius Werner Property is deprecated, use revision-id instead. 4780ce9173SJulius Werner deprecated: true 4880ce9173SJulius Werner 499e17f71eSDmitry Osipenko tRRD-min-tck: 509e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 519e17f71eSDmitry Osipenko maximum: 16 529e17f71eSDmitry Osipenko description: | 539e17f71eSDmitry Osipenko Active bank a to active bank b in terms of number of clock cycles. 549e17f71eSDmitry Osipenko Obtained from device datasheet. 559e17f71eSDmitry Osipenko 569e17f71eSDmitry Osipenko tWTR-min-tck: 579e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 589e17f71eSDmitry Osipenko maximum: 16 599e17f71eSDmitry Osipenko description: | 609e17f71eSDmitry Osipenko Internal WRITE-to-READ command delay in terms of number of clock cycles. 619e17f71eSDmitry Osipenko Obtained from device datasheet. 629e17f71eSDmitry Osipenko 639e17f71eSDmitry Osipenko tXP-min-tck: 649e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 659e17f71eSDmitry Osipenko maximum: 16 669e17f71eSDmitry Osipenko description: | 679e17f71eSDmitry Osipenko Exit power-down to next valid command delay in terms of number of clock 689e17f71eSDmitry Osipenko cycles. Obtained from device datasheet. 699e17f71eSDmitry Osipenko 709e17f71eSDmitry Osipenko tRTP-min-tck: 719e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 729e17f71eSDmitry Osipenko maximum: 16 739e17f71eSDmitry Osipenko description: | 749e17f71eSDmitry Osipenko Internal READ to PRECHARGE command delay in terms of number of clock 759e17f71eSDmitry Osipenko cycles. Obtained from device datasheet. 769e17f71eSDmitry Osipenko 779e17f71eSDmitry Osipenko tCKE-min-tck: 789e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 799e17f71eSDmitry Osipenko maximum: 16 809e17f71eSDmitry Osipenko description: | 819e17f71eSDmitry Osipenko CKE minimum pulse width (HIGH and LOW pulse width) in terms of number 829e17f71eSDmitry Osipenko of clock cycles. Obtained from device datasheet. 839e17f71eSDmitry Osipenko 849e17f71eSDmitry Osipenko tRPab-min-tck: 859e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 869e17f71eSDmitry Osipenko maximum: 16 879e17f71eSDmitry Osipenko description: | 889e17f71eSDmitry Osipenko Row precharge time (all banks) in terms of number of clock cycles. 899e17f71eSDmitry Osipenko Obtained from device datasheet. 909e17f71eSDmitry Osipenko 919e17f71eSDmitry Osipenko tRCD-min-tck: 929e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 939e17f71eSDmitry Osipenko maximum: 16 949e17f71eSDmitry Osipenko description: | 959e17f71eSDmitry Osipenko RAS-to-CAS delay in terms of number of clock cycles. Obtained from 969e17f71eSDmitry Osipenko device datasheet. 979e17f71eSDmitry Osipenko 989e17f71eSDmitry Osipenko tWR-min-tck: 999e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 1009e17f71eSDmitry Osipenko maximum: 16 1019e17f71eSDmitry Osipenko description: | 1029e17f71eSDmitry Osipenko WRITE recovery time in terms of number of clock cycles. Obtained from 1039e17f71eSDmitry Osipenko device datasheet. 1049e17f71eSDmitry Osipenko 1059e17f71eSDmitry Osipenko tRASmin-min-tck: 1069e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 1079e17f71eSDmitry Osipenko maximum: 16 1089e17f71eSDmitry Osipenko description: | 1099e17f71eSDmitry Osipenko Row active time in terms of number of clock cycles. Obtained from device 1109e17f71eSDmitry Osipenko datasheet. 1119e17f71eSDmitry Osipenko 1129e17f71eSDmitry Osipenko tCKESR-min-tck: 1139e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 1149e17f71eSDmitry Osipenko maximum: 16 1159e17f71eSDmitry Osipenko description: | 1169e17f71eSDmitry Osipenko CKE minimum pulse width during SELF REFRESH (low pulse width during 1179e17f71eSDmitry Osipenko SELF REFRESH) in terms of number of clock cycles. Obtained from device 1189e17f71eSDmitry Osipenko datasheet. 1199e17f71eSDmitry Osipenko 1209e17f71eSDmitry Osipenko tFAW-min-tck: 1219e17f71eSDmitry Osipenko $ref: /schemas/types.yaml#/definitions/uint32 1229e17f71eSDmitry Osipenko maximum: 16 1239e17f71eSDmitry Osipenko description: | 1249e17f71eSDmitry Osipenko Four-bank activate window in terms of number of clock cycles. Obtained 1259e17f71eSDmitry Osipenko from device datasheet. 1269e17f71eSDmitry Osipenko 1279e17f71eSDmitry OsipenkopatternProperties: 1289e17f71eSDmitry Osipenko "^lpddr2-timings": 129425fd283SKrzysztof Kozlowski $ref: jedec,lpddr2-timings.yaml 1309e17f71eSDmitry Osipenko description: | 1319e17f71eSDmitry Osipenko The lpddr2 node may have one or more child nodes of type "lpddr2-timings". 1329e17f71eSDmitry Osipenko "lpddr2-timings" provides AC timing parameters of the device for 1339e17f71eSDmitry Osipenko a given speed-bin. The user may provide the timings for as many 134425fd283SKrzysztof Kozlowski speed-bins as is required. 1359e17f71eSDmitry Osipenko 1369e17f71eSDmitry Osipenkorequired: 1379e17f71eSDmitry Osipenko - compatible 1389e17f71eSDmitry Osipenko - density 1399e17f71eSDmitry Osipenko - io-width 1409e17f71eSDmitry Osipenko 141b7178cd5SJulius WernerunevaluatedProperties: false 1429e17f71eSDmitry Osipenko 1439e17f71eSDmitry Osipenkoexamples: 1449e17f71eSDmitry Osipenko - | 1459e17f71eSDmitry Osipenko elpida_ECB240ABACN: lpddr2 { 1469e17f71eSDmitry Osipenko compatible = "elpida,ECB240ABACN", "jedec,lpddr2-s4"; 1479e17f71eSDmitry Osipenko density = <2048>; 1489e17f71eSDmitry Osipenko io-width = <32>; 14980ce9173SJulius Werner revision-id = <1 0>; 1509e17f71eSDmitry Osipenko 1519e17f71eSDmitry Osipenko tRPab-min-tck = <3>; 1529e17f71eSDmitry Osipenko tRCD-min-tck = <3>; 1539e17f71eSDmitry Osipenko tWR-min-tck = <3>; 1549e17f71eSDmitry Osipenko tRASmin-min-tck = <3>; 1559e17f71eSDmitry Osipenko tRRD-min-tck = <2>; 1569e17f71eSDmitry Osipenko tWTR-min-tck = <2>; 1579e17f71eSDmitry Osipenko tXP-min-tck = <2>; 1589e17f71eSDmitry Osipenko tRTP-min-tck = <2>; 1599e17f71eSDmitry Osipenko tCKE-min-tck = <3>; 1609e17f71eSDmitry Osipenko tCKESR-min-tck = <3>; 1619e17f71eSDmitry Osipenko tFAW-min-tck = <8>; 1629e17f71eSDmitry Osipenko 1639e17f71eSDmitry Osipenko timings_elpida_ECB240ABACN_400mhz: lpddr2-timings0 { 1649e17f71eSDmitry Osipenko compatible = "jedec,lpddr2-timings"; 1659e17f71eSDmitry Osipenko min-freq = <10000000>; 1669e17f71eSDmitry Osipenko max-freq = <400000000>; 1679e17f71eSDmitry Osipenko tRPab = <21000>; 1689e17f71eSDmitry Osipenko tRCD = <18000>; 1699e17f71eSDmitry Osipenko tWR = <15000>; 1709e17f71eSDmitry Osipenko tRAS-min = <42000>; 1719e17f71eSDmitry Osipenko tRRD = <10000>; 1729e17f71eSDmitry Osipenko tWTR = <7500>; 1739e17f71eSDmitry Osipenko tXP = <7500>; 1749e17f71eSDmitry Osipenko tRTP = <7500>; 1759e17f71eSDmitry Osipenko tCKESR = <15000>; 1769e17f71eSDmitry Osipenko tDQSCK-max = <5500>; 1779e17f71eSDmitry Osipenko tFAW = <50000>; 1789e17f71eSDmitry Osipenko tZQCS = <90000>; 1799e17f71eSDmitry Osipenko tZQCL = <360000>; 1809e17f71eSDmitry Osipenko tZQinit = <1000000>; 1819e17f71eSDmitry Osipenko tRAS-max-ns = <70000>; 1829e17f71eSDmitry Osipenko }; 1839e17f71eSDmitry Osipenko 1849e17f71eSDmitry Osipenko timings_elpida_ECB240ABACN_200mhz: lpddr2-timings1 { 1859e17f71eSDmitry Osipenko compatible = "jedec,lpddr2-timings"; 1869e17f71eSDmitry Osipenko min-freq = <10000000>; 1879e17f71eSDmitry Osipenko max-freq = <200000000>; 1889e17f71eSDmitry Osipenko tRPab = <21000>; 1899e17f71eSDmitry Osipenko tRCD = <18000>; 1909e17f71eSDmitry Osipenko tWR = <15000>; 1919e17f71eSDmitry Osipenko tRAS-min = <42000>; 1929e17f71eSDmitry Osipenko tRRD = <10000>; 1939e17f71eSDmitry Osipenko tWTR = <10000>; 1949e17f71eSDmitry Osipenko tXP = <7500>; 1959e17f71eSDmitry Osipenko tRTP = <7500>; 1969e17f71eSDmitry Osipenko tCKESR = <15000>; 1979e17f71eSDmitry Osipenko tDQSCK-max = <5500>; 1989e17f71eSDmitry Osipenko tFAW = <50000>; 1999e17f71eSDmitry Osipenko tZQCS = <90000>; 2009e17f71eSDmitry Osipenko tZQCL = <360000>; 2019e17f71eSDmitry Osipenko tZQinit = <1000000>; 2029e17f71eSDmitry Osipenko tRAS-max-ns = <70000>; 2039e17f71eSDmitry Osipenko }; 2049e17f71eSDmitry Osipenko }; 205