mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-10-31 20:18:18 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			244 lines
		
	
	
		
			6.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			6.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
 | |
| %YAML 1.2
 | |
| ---
 | |
| $id: http://devicetree.org/schemas/memory-controllers/ddr/jedec,lpddr3.yaml#
 | |
| $schema: http://devicetree.org/meta-schemas/core.yaml#
 | |
| 
 | |
| title: LPDDR3 SDRAM compliant to JEDEC JESD209-3
 | |
| 
 | |
| maintainers:
 | |
|   - Krzysztof Kozlowski <krzk@kernel.org>
 | |
| 
 | |
| allOf:
 | |
|   - $ref: jedec,lpddr-props.yaml#
 | |
| 
 | |
| properties:
 | |
|   compatible:
 | |
|     oneOf:
 | |
|       - items:
 | |
|           - enum:
 | |
|               - samsung,K3QF2F20DB
 | |
|           - const: jedec,lpddr3
 | |
|       - items:
 | |
|           - pattern: "^lpddr3-[0-9a-f]{2},[0-9a-f]{4}$"
 | |
|           - const: jedec,lpddr3
 | |
| 
 | |
|   '#address-cells':
 | |
|     const: 1
 | |
|     deprecated: true
 | |
| 
 | |
|   manufacturer-id:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     description: |
 | |
|       Manufacturer ID value read from Mode Register 5.  The property is
 | |
|       deprecated, manufacturer should be derived from the compatible.
 | |
|     deprecated: true
 | |
| 
 | |
|   '#size-cells':
 | |
|     const: 0
 | |
|     deprecated: true
 | |
| 
 | |
|   tCKE-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       CKE minimum pulse width (HIGH and LOW pulse width) in terms of number
 | |
|       of clock cycles.
 | |
| 
 | |
|   tCKESR-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       CKE minimum pulse width during SELF REFRESH (low pulse width during
 | |
|       SELF REFRESH) in terms of number of clock cycles.
 | |
| 
 | |
|   tDQSCK-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       DQS output data access time from CK_t/CK_c in terms of number of clock
 | |
|       cycles.
 | |
| 
 | |
|   tFAW-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 63
 | |
|     description: |
 | |
|       Four-bank activate window in terms of number of clock cycles.
 | |
| 
 | |
|   tMRD-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Mode register set command delay in terms of number of clock cycles.
 | |
| 
 | |
|   tR2R-C2C-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     enum: [0, 1]
 | |
|     description: |
 | |
|       Additional READ-to-READ delay in chip-to-chip cases in terms of number
 | |
|       of clock cycles.
 | |
| 
 | |
|   tRAS-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 63
 | |
|     description: |
 | |
|       Row active time in terms of number of clock cycles.
 | |
| 
 | |
|   tRC-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 63
 | |
|     description: |
 | |
|       ACTIVATE-to-ACTIVATE command period in terms of number of clock cycles.
 | |
| 
 | |
|   tRCD-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       RAS-to-CAS delay in terms of number of clock cycles.
 | |
| 
 | |
|   tRFC-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 255
 | |
|     description: |
 | |
|       Refresh Cycle time in terms of number of clock cycles.
 | |
| 
 | |
|   tRL-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|      READ data latency in terms of number of clock cycles.
 | |
| 
 | |
|   tRPab-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Row precharge time (all banks) in terms of number of clock cycles.
 | |
| 
 | |
|   tRPpb-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Row precharge time (single banks) in terms of number of clock cycles.
 | |
| 
 | |
|   tRRD-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Active bank A to active bank B in terms of number of clock cycles.
 | |
| 
 | |
|   tRTP-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Internal READ to PRECHARGE command delay in terms of number of clock
 | |
|       cycles.
 | |
| 
 | |
|   tW2W-C2C-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     enum: [0, 1]
 | |
|     description: |
 | |
|       Additional WRITE-to-WRITE delay in chip-to-chip cases in terms of number
 | |
|       of clock cycles.
 | |
| 
 | |
|   tWL-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       WRITE data latency in terms of number of clock cycles.
 | |
| 
 | |
|   tWR-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       WRITE recovery time in terms of number of clock cycles.
 | |
| 
 | |
|   tWTR-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 15
 | |
|     description: |
 | |
|       Internal WRITE-to-READ command delay in terms of number of clock cycles.
 | |
| 
 | |
|   tXP-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 255
 | |
|     description: |
 | |
|       Exit power-down to next valid command delay in terms of number of clock
 | |
|       cycles.
 | |
| 
 | |
|   tXSR-min-tck:
 | |
|     $ref: /schemas/types.yaml#/definitions/uint32
 | |
|     maximum: 1023
 | |
|     description: |
 | |
|       SELF REFRESH exit to next valid command delay in terms of number of clock
 | |
|       cycles.
 | |
| 
 | |
| patternProperties:
 | |
|   "^timings((-[0-9])+|(@[0-9a-f]+))?$":
 | |
|     $ref: jedec,lpddr3-timings.yaml
 | |
|     description: |
 | |
|       The lpddr3 node may have one or more child nodes with timings.
 | |
|       Each timing node provides AC timing parameters of the device for a given
 | |
|       speed-bin. The user may provide the timings for as many speed-bins as is
 | |
|       required.
 | |
| 
 | |
| required:
 | |
|   - compatible
 | |
|   - density
 | |
|   - io-width
 | |
| 
 | |
| unevaluatedProperties: false
 | |
| 
 | |
| examples:
 | |
|   - |
 | |
|     lpddr3 {
 | |
|         compatible = "samsung,K3QF2F20DB", "jedec,lpddr3";
 | |
|         density = <16384>;
 | |
|         io-width = <32>;
 | |
| 
 | |
|         tCKE-min-tck = <2>;
 | |
|         tCKESR-min-tck = <2>;
 | |
|         tDQSCK-min-tck = <5>;
 | |
|         tFAW-min-tck = <5>;
 | |
|         tMRD-min-tck = <5>;
 | |
|         tR2R-C2C-min-tck = <0>;
 | |
|         tRAS-min-tck = <5>;
 | |
|         tRC-min-tck = <6>;
 | |
|         tRCD-min-tck = <3>;
 | |
|         tRFC-min-tck = <17>;
 | |
|         tRL-min-tck = <14>;
 | |
|         tRPab-min-tck = <2>;
 | |
|         tRPpb-min-tck = <2>;
 | |
|         tRRD-min-tck = <2>;
 | |
|         tRTP-min-tck = <2>;
 | |
|         tW2W-C2C-min-tck = <0>;
 | |
|         tWL-min-tck = <8>;
 | |
|         tWR-min-tck = <7>;
 | |
|         tWTR-min-tck = <2>;
 | |
|         tXP-min-tck = <2>;
 | |
|         tXSR-min-tck = <12>;
 | |
| 
 | |
|         timings {
 | |
|             compatible = "jedec,lpddr3-timings";
 | |
|             max-freq = <800000000>;
 | |
|             min-freq = <100000000>;
 | |
|             tCKE = <3750>;
 | |
|             tCKESR = <3750>;
 | |
|             tFAW = <25000>;
 | |
|             tMRD = <7000>;
 | |
|             tR2R-C2C = <0>;
 | |
|             tRAS = <23000>;
 | |
|             tRC = <33750>;
 | |
|             tRCD = <10000>;
 | |
|             tRFC = <65000>;
 | |
|             tRPab = <12000>;
 | |
|             tRPpb = <12000>;
 | |
|             tRRD = <6000>;
 | |
|             tRTP = <3750>;
 | |
|             tW2W-C2C = <0>;
 | |
|             tWR = <7500>;
 | |
|             tWTR = <3750>;
 | |
|             tXP = <3750>;
 | |
|             tXSR = <70000>;
 | |
|         };
 | |
|     };
 |