xref: /linux/Documentation/devicetree/bindings/memory-controllers/ddr/jedec,lpddr3.yaml (revision e531932c7185b86eccb3688002730950d49eba1a)
128f81858SKrzysztof Kozlowski# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
228f81858SKrzysztof Kozlowski%YAML 1.2
328f81858SKrzysztof Kozlowski---
428f81858SKrzysztof Kozlowski$id: http://devicetree.org/schemas/memory-controllers/ddr/jedec,lpddr3.yaml#
528f81858SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
628f81858SKrzysztof Kozlowski
728f81858SKrzysztof Kozlowskititle: LPDDR3 SDRAM compliant to JEDEC JESD209-3
828f81858SKrzysztof Kozlowski
928f81858SKrzysztof Kozlowskimaintainers:
1028f81858SKrzysztof Kozlowski  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
1128f81858SKrzysztof Kozlowski
1228f81858SKrzysztof Kozlowskiproperties:
1328f81858SKrzysztof Kozlowski  compatible:
1428f81858SKrzysztof Kozlowski    items:
1528f81858SKrzysztof Kozlowski      - enum:
1628f81858SKrzysztof Kozlowski          - samsung,K3QF2F20DB
1728f81858SKrzysztof Kozlowski      - const: jedec,lpddr3
1828f81858SKrzysztof Kozlowski
1928f81858SKrzysztof Kozlowski  '#address-cells':
2028f81858SKrzysztof Kozlowski    const: 1
2128f81858SKrzysztof Kozlowski
2228f81858SKrzysztof Kozlowski  density:
2328f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
2428f81858SKrzysztof Kozlowski    description: |
2528f81858SKrzysztof Kozlowski      Density in megabits of SDRAM chip.
2628f81858SKrzysztof Kozlowski    enum:
2728f81858SKrzysztof Kozlowski      - 4096
2828f81858SKrzysztof Kozlowski      - 8192
2928f81858SKrzysztof Kozlowski      - 16384
3028f81858SKrzysztof Kozlowski      - 32768
3128f81858SKrzysztof Kozlowski
3228f81858SKrzysztof Kozlowski  io-width:
3328f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
3428f81858SKrzysztof Kozlowski    description: |
3528f81858SKrzysztof Kozlowski      IO bus width in bits of SDRAM chip.
3628f81858SKrzysztof Kozlowski    enum:
3728f81858SKrzysztof Kozlowski      - 32
3828f81858SKrzysztof Kozlowski      - 16
3928f81858SKrzysztof Kozlowski
4028f81858SKrzysztof Kozlowski  manufacturer-id:
4128f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
4228f81858SKrzysztof Kozlowski    description: |
43*e531932cSKrzysztof Kozlowski      Manufacturer ID value read from Mode Register 5.  The property is
44*e531932cSKrzysztof Kozlowski      deprecated, manufacturer should be derived from the compatible.
45*e531932cSKrzysztof Kozlowski    deprecated: true
4628f81858SKrzysztof Kozlowski
4728f81858SKrzysztof Kozlowski  revision-id:
4828f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32-array
4928f81858SKrzysztof Kozlowski    minItems: 2
5028f81858SKrzysztof Kozlowski    maxItems: 2
5128f81858SKrzysztof Kozlowski    items:
5228f81858SKrzysztof Kozlowski      maximum: 255
5328f81858SKrzysztof Kozlowski    description: |
5428f81858SKrzysztof Kozlowski      Revision value of SDRAM chip read from Mode Registers 6 and 7.
5528f81858SKrzysztof Kozlowski
5628f81858SKrzysztof Kozlowski  '#size-cells':
5728f81858SKrzysztof Kozlowski    const: 0
5828f81858SKrzysztof Kozlowski
5928f81858SKrzysztof Kozlowski  tCKE-min-tck:
6028f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
6128f81858SKrzysztof Kozlowski    maximum: 15
6228f81858SKrzysztof Kozlowski    description: |
6328f81858SKrzysztof Kozlowski      CKE minimum pulse width (HIGH and LOW pulse width) in terms of number
6428f81858SKrzysztof Kozlowski      of clock cycles.
6528f81858SKrzysztof Kozlowski
6628f81858SKrzysztof Kozlowski  tCKESR-min-tck:
6728f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
6828f81858SKrzysztof Kozlowski    maximum: 15
6928f81858SKrzysztof Kozlowski    description: |
7028f81858SKrzysztof Kozlowski      CKE minimum pulse width during SELF REFRESH (low pulse width during
7128f81858SKrzysztof Kozlowski      SELF REFRESH) in terms of number of clock cycles.
7228f81858SKrzysztof Kozlowski
7328f81858SKrzysztof Kozlowski  tDQSCK-min-tck:
7428f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
7528f81858SKrzysztof Kozlowski    maximum: 15
7628f81858SKrzysztof Kozlowski    description: |
7728f81858SKrzysztof Kozlowski      DQS output data access time from CK_t/CK_c in terms of number of clock
7828f81858SKrzysztof Kozlowski      cycles.
7928f81858SKrzysztof Kozlowski
8028f81858SKrzysztof Kozlowski  tFAW-min-tck:
8128f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
8228f81858SKrzysztof Kozlowski    maximum: 63
8328f81858SKrzysztof Kozlowski    description: |
8428f81858SKrzysztof Kozlowski      Four-bank activate window in terms of number of clock cycles.
8528f81858SKrzysztof Kozlowski
8628f81858SKrzysztof Kozlowski  tMRD-min-tck:
8728f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
8828f81858SKrzysztof Kozlowski    maximum: 15
8928f81858SKrzysztof Kozlowski    description: |
9028f81858SKrzysztof Kozlowski      Mode register set command delay in terms of number of clock cycles.
9128f81858SKrzysztof Kozlowski
9228f81858SKrzysztof Kozlowski  tR2R-C2C-min-tck:
9328f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
9428f81858SKrzysztof Kozlowski    enum: [0, 1]
9528f81858SKrzysztof Kozlowski    description: |
9628f81858SKrzysztof Kozlowski      Additional READ-to-READ delay in chip-to-chip cases in terms of number
9728f81858SKrzysztof Kozlowski      of clock cycles.
9828f81858SKrzysztof Kozlowski
9928f81858SKrzysztof Kozlowski  tRAS-min-tck:
10028f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
10128f81858SKrzysztof Kozlowski    maximum: 63
10228f81858SKrzysztof Kozlowski    description: |
10328f81858SKrzysztof Kozlowski      Row active time in terms of number of clock cycles.
10428f81858SKrzysztof Kozlowski
10528f81858SKrzysztof Kozlowski  tRC-min-tck:
10628f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
10728f81858SKrzysztof Kozlowski    maximum: 63
10828f81858SKrzysztof Kozlowski    description: |
10928f81858SKrzysztof Kozlowski      ACTIVATE-to-ACTIVATE command period in terms of number of clock cycles.
11028f81858SKrzysztof Kozlowski
11128f81858SKrzysztof Kozlowski  tRCD-min-tck:
11228f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
11328f81858SKrzysztof Kozlowski    maximum: 15
11428f81858SKrzysztof Kozlowski    description: |
11528f81858SKrzysztof Kozlowski      RAS-to-CAS delay in terms of number of clock cycles.
11628f81858SKrzysztof Kozlowski
11728f81858SKrzysztof Kozlowski  tRFC-min-tck:
11828f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
11928f81858SKrzysztof Kozlowski    maximum: 255
12028f81858SKrzysztof Kozlowski    description: |
12128f81858SKrzysztof Kozlowski      Refresh Cycle time in terms of number of clock cycles.
12228f81858SKrzysztof Kozlowski
12328f81858SKrzysztof Kozlowski  tRL-min-tck:
12428f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
12528f81858SKrzysztof Kozlowski    maximum: 15
12628f81858SKrzysztof Kozlowski    description: |
12728f81858SKrzysztof Kozlowski     READ data latency in terms of number of clock cycles.
12828f81858SKrzysztof Kozlowski
12928f81858SKrzysztof Kozlowski  tRPab-min-tck:
13028f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
13128f81858SKrzysztof Kozlowski    maximum: 15
13228f81858SKrzysztof Kozlowski    description: |
13328f81858SKrzysztof Kozlowski      Row precharge time (all banks) in terms of number of clock cycles.
13428f81858SKrzysztof Kozlowski
13528f81858SKrzysztof Kozlowski  tRPpb-min-tck:
13628f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
13728f81858SKrzysztof Kozlowski    maximum: 15
13828f81858SKrzysztof Kozlowski    description: |
13928f81858SKrzysztof Kozlowski      Row precharge time (single banks) in terms of number of clock cycles.
14028f81858SKrzysztof Kozlowski
14128f81858SKrzysztof Kozlowski  tRRD-min-tck:
14228f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
14328f81858SKrzysztof Kozlowski    maximum: 15
14428f81858SKrzysztof Kozlowski    description: |
14528f81858SKrzysztof Kozlowski      Active bank A to active bank B in terms of number of clock cycles.
14628f81858SKrzysztof Kozlowski
14728f81858SKrzysztof Kozlowski  tRTP-min-tck:
14828f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
14928f81858SKrzysztof Kozlowski    maximum: 15
15028f81858SKrzysztof Kozlowski    description: |
15128f81858SKrzysztof Kozlowski      Internal READ to PRECHARGE command delay in terms of number of clock
15228f81858SKrzysztof Kozlowski      cycles.
15328f81858SKrzysztof Kozlowski
15428f81858SKrzysztof Kozlowski  tW2W-C2C-min-tck:
15528f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
15628f81858SKrzysztof Kozlowski    enum: [0, 1]
15728f81858SKrzysztof Kozlowski    description: |
15828f81858SKrzysztof Kozlowski      Additional WRITE-to-WRITE delay in chip-to-chip cases in terms of number
15928f81858SKrzysztof Kozlowski      of clock cycles.
16028f81858SKrzysztof Kozlowski
16128f81858SKrzysztof Kozlowski  tWL-min-tck:
16228f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
16328f81858SKrzysztof Kozlowski    maximum: 15
16428f81858SKrzysztof Kozlowski    description: |
16528f81858SKrzysztof Kozlowski      WRITE data latency in terms of number of clock cycles.
16628f81858SKrzysztof Kozlowski
16728f81858SKrzysztof Kozlowski  tWR-min-tck:
16828f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
16928f81858SKrzysztof Kozlowski    maximum: 15
17028f81858SKrzysztof Kozlowski    description: |
17128f81858SKrzysztof Kozlowski      WRITE recovery time in terms of number of clock cycles.
17228f81858SKrzysztof Kozlowski
17328f81858SKrzysztof Kozlowski  tWTR-min-tck:
17428f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
17528f81858SKrzysztof Kozlowski    maximum: 15
17628f81858SKrzysztof Kozlowski    description: |
17728f81858SKrzysztof Kozlowski      Internal WRITE-to-READ command delay in terms of number of clock cycles.
17828f81858SKrzysztof Kozlowski
17928f81858SKrzysztof Kozlowski  tXP-min-tck:
18028f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
18128f81858SKrzysztof Kozlowski    maximum: 255
18228f81858SKrzysztof Kozlowski    description: |
18328f81858SKrzysztof Kozlowski      Exit power-down to next valid command delay in terms of number of clock
18428f81858SKrzysztof Kozlowski      cycles.
18528f81858SKrzysztof Kozlowski
18628f81858SKrzysztof Kozlowski  tXSR-min-tck:
18728f81858SKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/uint32
18828f81858SKrzysztof Kozlowski    maximum: 1023
18928f81858SKrzysztof Kozlowski    description: |
19028f81858SKrzysztof Kozlowski      SELF REFRESH exit to next valid command delay in terms of number of clock
19128f81858SKrzysztof Kozlowski      cycles.
19228f81858SKrzysztof Kozlowski
19328f81858SKrzysztof KozlowskipatternProperties:
19428f81858SKrzysztof Kozlowski  "^timings@[0-9a-f]+$":
19528f81858SKrzysztof Kozlowski    $ref: jedec,lpddr3-timings.yaml
19628f81858SKrzysztof Kozlowski    description: |
19728f81858SKrzysztof Kozlowski      The lpddr3 node may have one or more child nodes with timings.
19828f81858SKrzysztof Kozlowski      Each timing node provides AC timing parameters of the device for a given
19928f81858SKrzysztof Kozlowski      speed-bin. The user may provide the timings for as many speed-bins as is
20028f81858SKrzysztof Kozlowski      required.
20128f81858SKrzysztof Kozlowski
20228f81858SKrzysztof Kozlowskirequired:
20328f81858SKrzysztof Kozlowski  - compatible
20428f81858SKrzysztof Kozlowski  - '#address-cells'
20528f81858SKrzysztof Kozlowski  - density
20628f81858SKrzysztof Kozlowski  - io-width
20728f81858SKrzysztof Kozlowski  - '#size-cells'
20828f81858SKrzysztof Kozlowski
20928f81858SKrzysztof KozlowskiadditionalProperties: false
21028f81858SKrzysztof Kozlowski
21128f81858SKrzysztof Kozlowskiexamples:
21228f81858SKrzysztof Kozlowski  - |
21328f81858SKrzysztof Kozlowski    lpddr3 {
21428f81858SKrzysztof Kozlowski        compatible = "samsung,K3QF2F20DB", "jedec,lpddr3";
21528f81858SKrzysztof Kozlowski        density = <16384>;
21628f81858SKrzysztof Kozlowski        io-width = <32>;
21728f81858SKrzysztof Kozlowski        #address-cells = <1>;
21828f81858SKrzysztof Kozlowski        #size-cells = <0>;
21928f81858SKrzysztof Kozlowski
22028f81858SKrzysztof Kozlowski        tCKE-min-tck = <2>;
22128f81858SKrzysztof Kozlowski        tCKESR-min-tck = <2>;
22228f81858SKrzysztof Kozlowski        tDQSCK-min-tck = <5>;
22328f81858SKrzysztof Kozlowski        tFAW-min-tck = <5>;
22428f81858SKrzysztof Kozlowski        tMRD-min-tck = <5>;
22528f81858SKrzysztof Kozlowski        tR2R-C2C-min-tck = <0>;
22628f81858SKrzysztof Kozlowski        tRAS-min-tck = <5>;
22728f81858SKrzysztof Kozlowski        tRC-min-tck = <6>;
22828f81858SKrzysztof Kozlowski        tRCD-min-tck = <3>;
22928f81858SKrzysztof Kozlowski        tRFC-min-tck = <17>;
23028f81858SKrzysztof Kozlowski        tRL-min-tck = <14>;
23128f81858SKrzysztof Kozlowski        tRPab-min-tck = <2>;
23228f81858SKrzysztof Kozlowski        tRPpb-min-tck = <2>;
23328f81858SKrzysztof Kozlowski        tRRD-min-tck = <2>;
23428f81858SKrzysztof Kozlowski        tRTP-min-tck = <2>;
23528f81858SKrzysztof Kozlowski        tW2W-C2C-min-tck = <0>;
23628f81858SKrzysztof Kozlowski        tWL-min-tck = <8>;
23728f81858SKrzysztof Kozlowski        tWR-min-tck = <7>;
23828f81858SKrzysztof Kozlowski        tWTR-min-tck = <2>;
23928f81858SKrzysztof Kozlowski        tXP-min-tck = <2>;
24028f81858SKrzysztof Kozlowski        tXSR-min-tck = <12>;
24128f81858SKrzysztof Kozlowski
24228f81858SKrzysztof Kozlowski        timings@800000000 {
24328f81858SKrzysztof Kozlowski            compatible = "jedec,lpddr3-timings";
24428f81858SKrzysztof Kozlowski            reg = <800000000>;
24528f81858SKrzysztof Kozlowski            min-freq = <100000000>;
24628f81858SKrzysztof Kozlowski            tCKE = <3750>;
24728f81858SKrzysztof Kozlowski            tCKESR = <3750>;
24828f81858SKrzysztof Kozlowski            tFAW = <25000>;
24928f81858SKrzysztof Kozlowski            tMRD = <7000>;
25028f81858SKrzysztof Kozlowski            tR2R-C2C = <0>;
25128f81858SKrzysztof Kozlowski            tRAS = <23000>;
25228f81858SKrzysztof Kozlowski            tRC = <33750>;
25328f81858SKrzysztof Kozlowski            tRCD = <10000>;
25428f81858SKrzysztof Kozlowski            tRFC = <65000>;
25528f81858SKrzysztof Kozlowski            tRPab = <12000>;
25628f81858SKrzysztof Kozlowski            tRPpb = <12000>;
25728f81858SKrzysztof Kozlowski            tRRD = <6000>;
25828f81858SKrzysztof Kozlowski            tRTP = <3750>;
25928f81858SKrzysztof Kozlowski            tW2W-C2C = <0>;
26028f81858SKrzysztof Kozlowski            tWR = <7500>;
26128f81858SKrzysztof Kozlowski            tWTR = <3750>;
26228f81858SKrzysztof Kozlowski            tXP = <3750>;
26328f81858SKrzysztof Kozlowski            tXSR = <70000>;
26428f81858SKrzysztof Kozlowski        };
26528f81858SKrzysztof Kozlowski    };
266