xref: /OK3568_Linux_fs/u-boot/arch/arm/include/asm/arch-rockchip/sdram_msch.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /* SPDX-License-Identifier:     GPL-2.0+ */
2 /*
3  * Copyright (C) 2019 Rockchip Electronics Co., Ltd
4  */
5 
6 #ifndef _ASM_ARCH_SDRAM_MSCH_H
7 #define _ASM_ARCH_SDRAM_MSCH_H
8 
9 union noc_ddrtiminga0 {
10 	u32 d32;
11 	struct {
12 		unsigned acttoact : 6;
13 		unsigned reserved0 : 2;
14 		unsigned rdtomiss : 6;
15 		unsigned reserved1 : 2;
16 		unsigned wrtomiss : 6;
17 		unsigned reserved2 : 2;
18 		unsigned readlatency : 8;
19 	} b;
20 };
21 
22 union noc_ddrtimingb0 {
23 	u32 d32;
24 	struct {
25 		unsigned rdtowr : 5;
26 		unsigned reserved0 : 3;
27 		unsigned wrtord : 5;
28 		unsigned reserved1 : 3;
29 		unsigned rrd : 4;
30 		unsigned reserved2 : 4;
31 		unsigned faw : 6;
32 		unsigned reserved3 : 2;
33 	} b;
34 };
35 
36 union noc_ddrtimingc0 {
37 	u32 d32;
38 	struct {
39 		unsigned burstpenalty : 4;
40 		unsigned reserved0 : 4;
41 		unsigned wrtomwr : 6;
42 		unsigned reserved1 : 18;
43 	} b;
44 };
45 
46 union noc_ddrtimingl {
47 	u32 d32;
48 	struct {
49 		unsigned ccdl : 3;
50 		unsigned wrtordl : 5;
51 		unsigned rrdl : 4;
52 		unsigned reserved : 20;
53 	} b;
54 };
55 
56 union noc_devtodev0 {
57 	u32 d32;
58 	struct {
59 		unsigned busrdtord : 3;
60 		unsigned reserved0 : 1;
61 		unsigned busrdtowr : 3;
62 		unsigned reserved1 : 1;
63 		unsigned buswrtord : 3;
64 		unsigned reserved2 : 1;
65 		unsigned buswrtowr : 3;
66 		unsigned reserved3 : 17;
67 	} b;
68 };
69 
70 union noc_devtodev_rv1126 {
71 	u32 d32;
72 	struct {
73 		unsigned busrdtord : 3;
74 		unsigned reserved0 : 1;
75 		unsigned busrdtowr : 4;
76 		unsigned buswrtord : 4;
77 		unsigned buswrtowr : 3;
78 		unsigned reserved2 : 17;
79 	} b;
80 };
81 
82 union noc_ddrmode {
83 	u32 d32;
84 	struct {
85 		unsigned autoprecharge : 1;
86 		unsigned bypassfiltering : 1;
87 		unsigned fawbank : 1;
88 		unsigned burstsize : 2;
89 		unsigned mwrsize : 2;
90 		unsigned reserved2 : 1;
91 		unsigned forceorder : 8;
92 		unsigned forceorderstate : 8;
93 		unsigned reserved3 : 8;
94 	} b;
95 };
96 
97 union noc_ddr4timing {
98 	u32 d32;
99 	struct {
100 		unsigned ccdl : 3;
101 		unsigned wrtordl : 5;
102 		unsigned rrdl : 4;
103 		unsigned reserved1 : 20;
104 	} b;
105 };
106 
107 #endif
108