xref: /rk3399_ARM-atf/drivers/nxp/ddr/phy-gen2/messages.h (revision b35ce0c413a71689a2b46453b9c30596128f13dc)
1*b35ce0c4SPankaj Gupta /*
2*b35ce0c4SPankaj Gupta  * Copyright 2021 NXP
3*b35ce0c4SPankaj Gupta  * SPDX-License-Identifier: BSD-3-Clause
4*b35ce0c4SPankaj Gupta  *
5*b35ce0c4SPankaj Gupta  */
6*b35ce0c4SPankaj Gupta 
7*b35ce0c4SPankaj Gupta #ifndef MESSAGE_H
8*b35ce0c4SPankaj Gupta #define MESSAGE_H
9*b35ce0c4SPankaj Gupta 
10*b35ce0c4SPankaj Gupta #ifdef DEBUG
11*b35ce0c4SPankaj Gupta struct phy_msg {
12*b35ce0c4SPankaj Gupta 	uint32_t index;
13*b35ce0c4SPankaj Gupta 	const char *msg;
14*b35ce0c4SPankaj Gupta };
15*b35ce0c4SPankaj Gupta 
16*b35ce0c4SPankaj Gupta const static struct phy_msg messages_1d[] = {
17*b35ce0c4SPankaj Gupta 	{0x00000001,
18*b35ce0c4SPankaj Gupta 	 "PMU1:prbsGenCtl:%x\n"
19*b35ce0c4SPankaj Gupta 	},
20*b35ce0c4SPankaj Gupta 	{0x00010000,
21*b35ce0c4SPankaj Gupta 	 "PMU1: loading 2D acsm sequence\n"
22*b35ce0c4SPankaj Gupta 	},
23*b35ce0c4SPankaj Gupta 	{0x00020000,
24*b35ce0c4SPankaj Gupta 	 "PMU1: loading 1D acsm sequence\n"
25*b35ce0c4SPankaj Gupta 	},
26*b35ce0c4SPankaj Gupta 	{0x00030002,
27*b35ce0c4SPankaj Gupta 	 "PMU3: %d memclocks @ %d to get half of 300ns\n"
28*b35ce0c4SPankaj Gupta 	},
29*b35ce0c4SPankaj Gupta 	{0x00040000,
30*b35ce0c4SPankaj Gupta 	 "PMU: Error: User requested MPR read pattern for read DQS training in DDR3 Mode\n"
31*b35ce0c4SPankaj Gupta 	},
32*b35ce0c4SPankaj Gupta 	{0x00050000,
33*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search for left eye edge\n"
34*b35ce0c4SPankaj Gupta 	},
35*b35ce0c4SPankaj Gupta 	{0x00060001,
36*b35ce0c4SPankaj Gupta 	 "PMU1: In Phase Left Edge Search cs %d\n"
37*b35ce0c4SPankaj Gupta 	},
38*b35ce0c4SPankaj Gupta 	{0x00070001,
39*b35ce0c4SPankaj Gupta 	 "PMU1: Out of Phase Left Edge Search cs %d\n"
40*b35ce0c4SPankaj Gupta 	},
41*b35ce0c4SPankaj Gupta 	{0x00080000,
42*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search for right eye edge\n"
43*b35ce0c4SPankaj Gupta 	},
44*b35ce0c4SPankaj Gupta 	{0x00090001,
45*b35ce0c4SPankaj Gupta 	 "PMU1: In Phase Right Edge Search cs %d\n"
46*b35ce0c4SPankaj Gupta 	},
47*b35ce0c4SPankaj Gupta 	{0x000a0001,
48*b35ce0c4SPankaj Gupta 	 "PMU1: Out of Phase Right Edge Search cs %d\n"
49*b35ce0c4SPankaj Gupta 	},
50*b35ce0c4SPankaj Gupta 	{0x000b0001,
51*b35ce0c4SPankaj Gupta 	 "PMU1: mxRdLat training pstate %d\n"
52*b35ce0c4SPankaj Gupta 	},
53*b35ce0c4SPankaj Gupta 	{0x000c0001,
54*b35ce0c4SPankaj Gupta 	 "PMU1: mxRdLat search for cs %d\n"
55*b35ce0c4SPankaj Gupta 	},
56*b35ce0c4SPankaj Gupta 	{0x000d0001,
57*b35ce0c4SPankaj Gupta 	 "PMU0: MaxRdLat non consistent DtsmLoThldXingInd 0x%03x\n"
58*b35ce0c4SPankaj Gupta 	},
59*b35ce0c4SPankaj Gupta 	{0x000e0003,
60*b35ce0c4SPankaj Gupta 	 "PMU4: CS %d Dbyte %d worked with DFIMRL = %d DFICLKs\n"
61*b35ce0c4SPankaj Gupta 	},
62*b35ce0c4SPankaj Gupta 	{0x000f0004,
63*b35ce0c4SPankaj Gupta 	 "PMU3: MaxRdLat Read Lane err mask for csn %d, DFIMRL %2d DFIClks, dbyte %d = 0x%03x\n"
64*b35ce0c4SPankaj Gupta 	},
65*b35ce0c4SPankaj Gupta 	{0x00100003,
66*b35ce0c4SPankaj Gupta 	 "PMU3: MaxRdLat Read Lane err mask for csn %d DFIMRL %2d, All dbytes = 0x%03x\n"
67*b35ce0c4SPankaj Gupta 	},
68*b35ce0c4SPankaj Gupta 	{0x00110001,
69*b35ce0c4SPankaj Gupta 	 "PMU: Error: CS%d failed to find a DFIMRL setting that worked for all bytes during MaxRdLat training\n"
70*b35ce0c4SPankaj Gupta 	},
71*b35ce0c4SPankaj Gupta 	{0x00120002,
72*b35ce0c4SPankaj Gupta 	 "PMU3: Smallest passing DFIMRL for all dbytes in CS%d = %d DFIClks\n"
73*b35ce0c4SPankaj Gupta 	},
74*b35ce0c4SPankaj Gupta 	{0x00130000,
75*b35ce0c4SPankaj Gupta 	 "PMU: Error: No passing DFIMRL value found for any chip select during MaxRdLat training\n"
76*b35ce0c4SPankaj Gupta 	},
77*b35ce0c4SPankaj Gupta 	{0x00140003,
78*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly passing region is too small (width = %d)\n"
79*b35ce0c4SPankaj Gupta 	},
80*b35ce0c4SPankaj Gupta 	{0x00150006,
81*b35ce0c4SPankaj Gupta 	 "PMU10: Adjusting rxclkdly db %d nib %d from %d+%d=%d->%d\n"
82*b35ce0c4SPankaj Gupta 	},
83*b35ce0c4SPankaj Gupta 	{0x00160000,
84*b35ce0c4SPankaj Gupta 	 "PMU4: TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
85*b35ce0c4SPankaj Gupta 	},
86*b35ce0c4SPankaj Gupta 	{0x00170005,
87*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
88*b35ce0c4SPankaj Gupta 	},
89*b35ce0c4SPankaj Gupta 	{0x00180002,
90*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayLeft[%2d] = %3d (DISCONNECTED)\n"
91*b35ce0c4SPankaj Gupta 	},
92*b35ce0c4SPankaj Gupta 	{0x00190004,
93*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayLeft[%2d] = %3d oopScaled = %3d selectOop %d\n"
94*b35ce0c4SPankaj Gupta 	},
95*b35ce0c4SPankaj Gupta 	{0x001a0002,
96*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayRight[%2d] = %3d (DISCONNECTED)\n"
97*b35ce0c4SPankaj Gupta 	},
98*b35ce0c4SPankaj Gupta 	{0x001b0004,
99*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayRight[%2d] = %3d oopScaled = %3d selectOop %d\n"
100*b35ce0c4SPankaj Gupta 	},
101*b35ce0c4SPankaj Gupta 	{0x001c0003,
102*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly passing region is too small (width = %d)\n"
103*b35ce0c4SPankaj Gupta 	},
104*b35ce0c4SPankaj Gupta 	{0x001d0000,
105*b35ce0c4SPankaj Gupta 	 "PMU4: TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
106*b35ce0c4SPankaj Gupta 	},
107*b35ce0c4SPankaj Gupta 	{0x001e0002,
108*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: (DISCONNECTED)\n"
109*b35ce0c4SPankaj Gupta 	},
110*b35ce0c4SPankaj Gupta 	{0x001f0005,
111*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
112*b35ce0c4SPankaj Gupta 	},
113*b35ce0c4SPankaj Gupta 	{0x00200002,
114*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search csn %d for DM Right/NotLeft(%d) eye edge\n"
115*b35ce0c4SPankaj Gupta 	},
116*b35ce0c4SPankaj Gupta 	{0x00210002,
117*b35ce0c4SPankaj Gupta 	 "PMU3: WrDq DM byte%2d with Errcnt %d\n"
118*b35ce0c4SPankaj Gupta 	},
119*b35ce0c4SPankaj Gupta 	{0x00220002,
120*b35ce0c4SPankaj Gupta 	 "PMU3: WrDq DM byte%2d avgDly 0x%04x\n"
121*b35ce0c4SPankaj Gupta 	},
122*b35ce0c4SPankaj Gupta 	{0x00230002,
123*b35ce0c4SPankaj Gupta 	 "PMU1: WrDq DM byte%2d with Errcnt %d\n"
124*b35ce0c4SPankaj Gupta 	},
125*b35ce0c4SPankaj Gupta 	{0x00240001,
126*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d txDqDly DM training did not start inside the eye\n"
127*b35ce0c4SPankaj Gupta 	},
128*b35ce0c4SPankaj Gupta 	{0x00250000,
129*b35ce0c4SPankaj Gupta 	 "PMU4: DM TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
130*b35ce0c4SPankaj Gupta 	},
131*b35ce0c4SPankaj Gupta 	{0x00260002,
132*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: (DISCONNECTED)\n"
133*b35ce0c4SPankaj Gupta 	},
134*b35ce0c4SPankaj Gupta 	{0x00270005,
135*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
136*b35ce0c4SPankaj Gupta 	},
137*b35ce0c4SPankaj Gupta 	{0x00280003,
138*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly DM passing region is too small (width = %d)\n"
139*b35ce0c4SPankaj Gupta 	},
140*b35ce0c4SPankaj Gupta 	{0x00290004,
141*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for MRD/MWD search nib %2d delay = (%d, 0x%02x) = %d\n"
142*b35ce0c4SPankaj Gupta 	},
143*b35ce0c4SPankaj Gupta 	{0x002a0000,
144*b35ce0c4SPankaj Gupta 	 "PMU3: Precharge all open banks\n"
145*b35ce0c4SPankaj Gupta 	},
146*b35ce0c4SPankaj Gupta 	{0x002b0002,
147*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d found mutliple working coarse delay setting for MRD/MWD\n"
148*b35ce0c4SPankaj Gupta 	},
149*b35ce0c4SPankaj Gupta 	{0x002c0000,
150*b35ce0c4SPankaj Gupta 	 "PMU4: MRD Passing Regions (coarseVal, fineLeft fineRight -> fineCenter)\n"
151*b35ce0c4SPankaj Gupta 	},
152*b35ce0c4SPankaj Gupta 	{0x002d0000,
153*b35ce0c4SPankaj Gupta 	 "PMU4: MWD Passing Regions (coarseVal, fineLeft fineRight -> fineCenter)\n"
154*b35ce0c4SPankaj Gupta 	},
155*b35ce0c4SPankaj Gupta 	{0x002e0004,
156*b35ce0c4SPankaj Gupta 	 "PMU10: Warning: DB %d nibble %d has multiple working coarse delays, %d and %d, choosing the smaller delay\n"
157*b35ce0c4SPankaj Gupta 	},
158*b35ce0c4SPankaj Gupta 	{0x002f0003,
159*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d MRD/MWD passing region is too small (width = %d)\n"
160*b35ce0c4SPankaj Gupta 	},
161*b35ce0c4SPankaj Gupta 	{0x00300006,
162*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: %3d, %3d %3d -> %3d\n"
163*b35ce0c4SPankaj Gupta 	},
164*b35ce0c4SPankaj Gupta 	{0x00310002,
165*b35ce0c4SPankaj Gupta 	 "PMU1: Start MRD/nMWD %d for csn %d\n"
166*b35ce0c4SPankaj Gupta 	},
167*b35ce0c4SPankaj Gupta 	{0x00320002,
168*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayLeft[%2d] = %3d (DISCONNECTED)\n"
169*b35ce0c4SPankaj Gupta 	},
170*b35ce0c4SPankaj Gupta 	{0x00330006,
171*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayLeft[%2d] = %3d delayOop[%2d] = %3d OopScaled %4d, selectOop %d\n"
172*b35ce0c4SPankaj Gupta 	},
173*b35ce0c4SPankaj Gupta 	{0x00340002,
174*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayRight[%2d] = %3d (DISCONNECTED)\n"
175*b35ce0c4SPankaj Gupta 	},
176*b35ce0c4SPankaj Gupta 	{0x00350006,
177*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayRight[%2d] = %3d delayOop[%2d] = %4d OopScaled %4d, selectOop %d\n"
178*b35ce0c4SPankaj Gupta 	},
179*b35ce0c4SPankaj Gupta 	{0x00360000,
180*b35ce0c4SPankaj Gupta 	 "PMU4: RxClkDly Passing Regions (EyeLeft EyeRight -> EyeCenter)\n"
181*b35ce0c4SPankaj Gupta 	},
182*b35ce0c4SPankaj Gupta 	{0x00370002,
183*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: (DISCONNECTED)\n"
184*b35ce0c4SPankaj Gupta 	},
185*b35ce0c4SPankaj Gupta 	{0x00380005,
186*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: %3d %3d -> %3d\n"
187*b35ce0c4SPankaj Gupta 	},
188*b35ce0c4SPankaj Gupta 	{0x00390003,
189*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d rxClkDly passing region is too small (width = %d)\n"
190*b35ce0c4SPankaj Gupta 	},
191*b35ce0c4SPankaj Gupta 	{0x003a0002,
192*b35ce0c4SPankaj Gupta 	 "PMU0: goodbar = %d for RDWR_BLEN %d\n"
193*b35ce0c4SPankaj Gupta 	},
194*b35ce0c4SPankaj Gupta 	{0x003b0001,
195*b35ce0c4SPankaj Gupta 	 "PMU3: RxClkDly = %d\n"
196*b35ce0c4SPankaj Gupta 	},
197*b35ce0c4SPankaj Gupta 	{0x003c0005,
198*b35ce0c4SPankaj Gupta 	 "PMU0: db %d l %d absLane %d -> bottom %d top %d\n"
199*b35ce0c4SPankaj Gupta 	},
200*b35ce0c4SPankaj Gupta 	{0x003d0009,
201*b35ce0c4SPankaj Gupta 	 "PMU3: BYTE %d - %3d %3d %3d %3d %3d %3d %3d %3d\n"
202*b35ce0c4SPankaj Gupta 	},
203*b35ce0c4SPankaj Gupta 	{0x003e0002,
204*b35ce0c4SPankaj Gupta 	 "PMU: Error: dbyte %d lane %d's per-lane vrefDAC's had no passing region\n"
205*b35ce0c4SPankaj Gupta 	},
206*b35ce0c4SPankaj Gupta 	{0x003f0004,
207*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d - %d %d\n"
208*b35ce0c4SPankaj Gupta 	},
209*b35ce0c4SPankaj Gupta 	{0x00400002,
210*b35ce0c4SPankaj Gupta 	 "PMU0: goodbar = %d for RDWR_BLEN %d\n"
211*b35ce0c4SPankaj Gupta 	},
212*b35ce0c4SPankaj Gupta 	{0x00410004,
213*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d saw %d issues at rxClkDly %d\n"
214*b35ce0c4SPankaj Gupta 	},
215*b35ce0c4SPankaj Gupta 	{0x00420003,
216*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d first saw a pass->fail edge at rxClkDly %d\n"
217*b35ce0c4SPankaj Gupta 	},
218*b35ce0c4SPankaj Gupta 	{0x00430002,
219*b35ce0c4SPankaj Gupta 	 "PMU3: lane %d PBD = %d\n"
220*b35ce0c4SPankaj Gupta 	},
221*b35ce0c4SPankaj Gupta 	{0x00440003,
222*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d first saw a DBI pass->fail edge at rxClkDly %d\n"
223*b35ce0c4SPankaj Gupta 	},
224*b35ce0c4SPankaj Gupta 	{0x00450003,
225*b35ce0c4SPankaj Gupta 	 "PMU2: db%d l%d already passed rxPBD = %d\n"
226*b35ce0c4SPankaj Gupta 	},
227*b35ce0c4SPankaj Gupta 	{0x00460003,
228*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d, PBD = %d\n"
229*b35ce0c4SPankaj Gupta 	},
230*b35ce0c4SPankaj Gupta 	{0x00470002,
231*b35ce0c4SPankaj Gupta 	 "PMU: Error: dbyte %d lane %d failed read deskew\n"
232*b35ce0c4SPankaj Gupta 	},
233*b35ce0c4SPankaj Gupta 	{0x00480003,
234*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d, inc PBD = %d\n"
235*b35ce0c4SPankaj Gupta 	},
236*b35ce0c4SPankaj Gupta 	{0x00490003,
237*b35ce0c4SPankaj Gupta 	 "PMU1: Running lane deskew on pstate %d csn %d rdDBIEn %d\n"
238*b35ce0c4SPankaj Gupta 	},
239*b35ce0c4SPankaj Gupta 	{0x004a0000,
240*b35ce0c4SPankaj Gupta 	 "PMU: Error: Read deskew training has been requested, but csrMajorModeDbyte[2] is set\n"
241*b35ce0c4SPankaj Gupta 	},
242*b35ce0c4SPankaj Gupta 	{0x004b0002,
243*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
244*b35ce0c4SPankaj Gupta 	},
245*b35ce0c4SPankaj Gupta 	{0x004c0002,
246*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
247*b35ce0c4SPankaj Gupta 	},
248*b35ce0c4SPankaj Gupta 	{0x004d0001,
249*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D3U Type\n"
250*b35ce0c4SPankaj Gupta 	},
251*b35ce0c4SPankaj Gupta 	{0x004e0001,
252*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D3R Type\n"
253*b35ce0c4SPankaj Gupta 	},
254*b35ce0c4SPankaj Gupta 	{0x004f0001,
255*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4U Type\n"
256*b35ce0c4SPankaj Gupta 	},
257*b35ce0c4SPankaj Gupta 	{0x00500001,
258*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4R Type\n"
259*b35ce0c4SPankaj Gupta 	},
260*b35ce0c4SPankaj Gupta 	{0x00510001,
261*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4LR Type\n"
262*b35ce0c4SPankaj Gupta 	},
263*b35ce0c4SPankaj Gupta 	{0x00520000,
264*b35ce0c4SPankaj Gupta 	 "PMU: Error: Both 2t timing mode and ddr4 geardown mode specified in the messageblock's PhyCfg and MR3 fields. Only one can be enabled\n"
265*b35ce0c4SPankaj Gupta 	},
266*b35ce0c4SPankaj Gupta 	{0x00530003,
267*b35ce0c4SPankaj Gupta 	 "PMU10: PHY TOTALS - NUM_DBYTES %d NUM_NIBBLES %d NUM_ANIBS %d\n"
268*b35ce0c4SPankaj Gupta 	},
269*b35ce0c4SPankaj Gupta 	{0x00540006,
270*b35ce0c4SPankaj Gupta 	 "PMU10: CSA=0x%02x, CSB=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, MMISC=%d DRAMFreq=%dMT DramType=LPDDR3\n"
271*b35ce0c4SPankaj Gupta 	},
272*b35ce0c4SPankaj Gupta 	{0x00550006,
273*b35ce0c4SPankaj Gupta 	 "PMU10: CSA=0x%02x, CSB=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, MMISC=%d DRAMFreq=%dMT DramType=LPDDR4\n"
274*b35ce0c4SPankaj Gupta 	},
275*b35ce0c4SPankaj Gupta 	{0x00560008,
276*b35ce0c4SPankaj Gupta 	 "PMU10: CS=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, 2T=%d, MMISC=%d AddrMirror=%d DRAMFreq=%dMT DramType=%d\n"
277*b35ce0c4SPankaj Gupta 	},
278*b35ce0c4SPankaj Gupta 	{0x00570004,
279*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MR0=0x%04x MR1=0x%04x MR2=0x%04x\n"
280*b35ce0c4SPankaj Gupta 	},
281*b35ce0c4SPankaj Gupta 	{0x00580008,
282*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR0=0x%04x MR1=0x%04x MR2=0x%04x MR3=0x%04x MR4=0x%04x MR5=0x%04x MR6=0x%04x\n"
283*b35ce0c4SPankaj Gupta 	},
284*b35ce0c4SPankaj Gupta 	{0x00590005,
285*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR1_A0=0x%04x MR2_A0=0x%04x MR3_A0=0x%04x MR11_A0=0x%04x\n"
286*b35ce0c4SPankaj Gupta 	},
287*b35ce0c4SPankaj Gupta 	{0x005a0000,
288*b35ce0c4SPankaj Gupta 	 "PMU10: UseBroadcastMR set. All ranks and channels use MRXX_A0 for MR settings.\n"
289*b35ce0c4SPankaj Gupta 	},
290*b35ce0c4SPankaj Gupta 	{0x005b0005,
291*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_A0=0x%02x MR02_A0=0x%02x MR03_A0=0x%02x MR11_A0=0x%02x\n"
292*b35ce0c4SPankaj Gupta 	},
293*b35ce0c4SPankaj Gupta 	{0x005c0005,
294*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_A0=0x%02x MR13_A0=0x%02x MR14_A0=0x%02x MR22_A0=0x%02x\n"
295*b35ce0c4SPankaj Gupta 	},
296*b35ce0c4SPankaj Gupta 	{0x005d0005,
297*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_A1=0x%02x MR02_A1=0x%02x MR03_A1=0x%02x MR11_A1=0x%02x\n"
298*b35ce0c4SPankaj Gupta 	},
299*b35ce0c4SPankaj Gupta 	{0x005e0005,
300*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_A1=0x%02x MR13_A1=0x%02x MR14_A1=0x%02x MR22_A1=0x%02x\n"
301*b35ce0c4SPankaj Gupta 	},
302*b35ce0c4SPankaj Gupta 	{0x005f0005,
303*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_B0=0x%02x MR02_B0=0x%02x MR03_B0=0x%02x MR11_B0=0x%02x\n"
304*b35ce0c4SPankaj Gupta 	},
305*b35ce0c4SPankaj Gupta 	{0x00600005,
306*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_B0=0x%02x MR13_B0=0x%02x MR14_B0=0x%02x MR22_B0=0x%02x\n"
307*b35ce0c4SPankaj Gupta 	},
308*b35ce0c4SPankaj Gupta 	{0x00610005,
309*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_B1=0x%02x MR02_B1=0x%02x MR03_B1=0x%02x MR11_B1=0x%02x\n"
310*b35ce0c4SPankaj Gupta 	},
311*b35ce0c4SPankaj Gupta 	{0x00620005,
312*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_B1=0x%02x MR13_B1=0x%02x MR14_B1=0x%02x MR22_B1=0x%02x\n"
313*b35ce0c4SPankaj Gupta 	},
314*b35ce0c4SPankaj Gupta 	{0x00630002,
315*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmOdtCtrl%02d 0x%02x\n"
316*b35ce0c4SPankaj Gupta 	},
317*b35ce0c4SPankaj Gupta 	{0x00640002,
318*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
319*b35ce0c4SPankaj Gupta 	},
320*b35ce0c4SPankaj Gupta 	{0x00650002,
321*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
322*b35ce0c4SPankaj Gupta 	},
323*b35ce0c4SPankaj Gupta 	{0x00660000,
324*b35ce0c4SPankaj Gupta 	 "PMU1: HwtCAMode set\n"
325*b35ce0c4SPankaj Gupta 	},
326*b35ce0c4SPankaj Gupta 	{0x00670001,
327*b35ce0c4SPankaj Gupta 	 "PMU3: DDR4 infinite preamble enter/exit mode %d\n"
328*b35ce0c4SPankaj Gupta 	},
329*b35ce0c4SPankaj Gupta 	{0x00680002,
330*b35ce0c4SPankaj Gupta 	 "PMU1: In rxenb_train() csn=%d pstate=%d\n"
331*b35ce0c4SPankaj Gupta 	},
332*b35ce0c4SPankaj Gupta 	{0x00690000,
333*b35ce0c4SPankaj Gupta 	 "PMU3: Finding DQS falling edge\n"
334*b35ce0c4SPankaj Gupta 	},
335*b35ce0c4SPankaj Gupta 	{0x006a0000,
336*b35ce0c4SPankaj Gupta 	 "PMU3: Searching for DDR3/LPDDR3/LPDDR4 read preamble\n"
337*b35ce0c4SPankaj Gupta 	},
338*b35ce0c4SPankaj Gupta 	{0x006b0009,
339*b35ce0c4SPankaj Gupta 	 "PMU3: dtsm fails Even Nibbles : %2x %2x %2x %2x %2x %2x %2x %2x %2x\n"
340*b35ce0c4SPankaj Gupta 	},
341*b35ce0c4SPankaj Gupta 	{0x006c0009,
342*b35ce0c4SPankaj Gupta 	 "PMU3: dtsm fails Odd  Nibbles : %2x %2x %2x %2x %2x %2x %2x %2x %2x\n"
343*b35ce0c4SPankaj Gupta 	},
344*b35ce0c4SPankaj Gupta 	{0x006d0002,
345*b35ce0c4SPankaj Gupta 	 "PMU3: Preamble search pass=%d anyfail=%d\n"
346*b35ce0c4SPankaj Gupta 	},
347*b35ce0c4SPankaj Gupta 	{0x006e0000,
348*b35ce0c4SPankaj Gupta 	 "PMU: Error: RxEn training preamble not found\n"
349*b35ce0c4SPankaj Gupta 	},
350*b35ce0c4SPankaj Gupta 	{0x006f0000,
351*b35ce0c4SPankaj Gupta 	 "PMU3: Found DQS pre-amble\n"
352*b35ce0c4SPankaj Gupta 	},
353*b35ce0c4SPankaj Gupta 	{0x00700001,
354*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d couldn't find the rising edge of DQS during RxEn Training\n"
355*b35ce0c4SPankaj Gupta 	},
356*b35ce0c4SPankaj Gupta 	{0x00710000,
357*b35ce0c4SPankaj Gupta 	 "PMU3: RxEn aligning to first rising edge of burst\n"
358*b35ce0c4SPankaj Gupta 	},
359*b35ce0c4SPankaj Gupta 	{0x00720001,
360*b35ce0c4SPankaj Gupta 	 "PMU3: Decreasing RxEn delay by %d fine step to allow full capture of reads\n"
361*b35ce0c4SPankaj Gupta 	},
362*b35ce0c4SPankaj Gupta 	{0x00730001,
363*b35ce0c4SPankaj Gupta 	 "PMU3: MREP Delay = %d\n"
364*b35ce0c4SPankaj Gupta 	},
365*b35ce0c4SPankaj Gupta 	{0x00740003,
366*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for MREP nib %2d delay = %2d is %d\n"
367*b35ce0c4SPankaj Gupta 	},
368*b35ce0c4SPankaj Gupta 	{0x00750002,
369*b35ce0c4SPankaj Gupta 	 "PMU3: MREP nibble %d sampled a 1 at data buffer delay %d\n"
370*b35ce0c4SPankaj Gupta 	},
371*b35ce0c4SPankaj Gupta 	{0x00760002,
372*b35ce0c4SPankaj Gupta 	 "PMU3: MREP nibble %d saw a 0 to 1 transition at data buffer delay %d\n"
373*b35ce0c4SPankaj Gupta 	},
374*b35ce0c4SPankaj Gupta 	{0x00770000,
375*b35ce0c4SPankaj Gupta 	 "PMU2:  MREP did not find a 0 to 1 transition for all nibbles. Failing nibbles assumed to have rising edge close to fine delay 63\n"
376*b35ce0c4SPankaj Gupta 	},
377*b35ce0c4SPankaj Gupta 	{0x00780002,
378*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge found in alias window, setting rxDly for nibble %d = %d\n"
379*b35ce0c4SPankaj Gupta 	},
380*b35ce0c4SPankaj Gupta 	{0x00790002,
381*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed MREP for nib %d with %d one\n"
382*b35ce0c4SPankaj Gupta 	},
383*b35ce0c4SPankaj Gupta 	{0x007a0003,
384*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge not found in alias window with %d one, leaving rxDly for nibble %d = %d\n"
385*b35ce0c4SPankaj Gupta 	},
386*b35ce0c4SPankaj Gupta 	{0x007b0002,
387*b35ce0c4SPankaj Gupta 	 "PMU3: Training DIMM %d CSn %d\n"
388*b35ce0c4SPankaj Gupta 	},
389*b35ce0c4SPankaj Gupta 	{0x007c0001,
390*b35ce0c4SPankaj Gupta 	 "PMU3: exitCAtrain_lp3 cs 0x%x\n"
391*b35ce0c4SPankaj Gupta 	},
392*b35ce0c4SPankaj Gupta 	{0x007d0001,
393*b35ce0c4SPankaj Gupta 	 "PMU3: enterCAtrain_lp3 cs 0x%x\n"
394*b35ce0c4SPankaj Gupta 	},
395*b35ce0c4SPankaj Gupta 	{0x007e0001,
396*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_switchmsb_lp3 cs 0x%x\n"
397*b35ce0c4SPankaj Gupta 	},
398*b35ce0c4SPankaj Gupta 	{0x007f0001,
399*b35ce0c4SPankaj Gupta 	 "PMU3: CATrain_rdwr_lp3 looking for pattern %x\n"
400*b35ce0c4SPankaj Gupta 	},
401*b35ce0c4SPankaj Gupta 	{0x00800000,
402*b35ce0c4SPankaj Gupta 	 "PMU3: exitCAtrain_lp4\n"
403*b35ce0c4SPankaj Gupta 	},
404*b35ce0c4SPankaj Gupta 	{0x00810001,
405*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 1: cs 0x%x\n"
406*b35ce0c4SPankaj Gupta 	},
407*b35ce0c4SPankaj Gupta 	{0x00820001,
408*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 3: Put dbyte %d in async mode\n"
409*b35ce0c4SPankaj Gupta 	},
410*b35ce0c4SPankaj Gupta 	{0x00830000,
411*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 5: Send MR13 to turn on CA training\n"
412*b35ce0c4SPankaj Gupta 	},
413*b35ce0c4SPankaj Gupta 	{0x00840003,
414*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 7: idx = %d vref = %x mr12 = %x\n"
415*b35ce0c4SPankaj Gupta 	},
416*b35ce0c4SPankaj Gupta 	{0x00850001,
417*b35ce0c4SPankaj Gupta 	 "PMU3: CATrain_rdwr_lp4 looking for pattern %x\n"
418*b35ce0c4SPankaj Gupta 	},
419*b35ce0c4SPankaj Gupta 	{0x00860004,
420*b35ce0c4SPankaj Gupta 	 "PMU3: Phase %d CAreadbackA db:%d %x xo:%x\n"
421*b35ce0c4SPankaj Gupta 	},
422*b35ce0c4SPankaj Gupta 	{0x00870005,
423*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG lp4SetCatrVref 1: cs=%d chan=%d mr12=%x vref=%d.%d%%\n"
424*b35ce0c4SPankaj Gupta 	},
425*b35ce0c4SPankaj Gupta 	{0x00880003,
426*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG lp4SetCatrVref 3: mr12 = %x send vref= %x to db=%d\n"
427*b35ce0c4SPankaj Gupta 	},
428*b35ce0c4SPankaj Gupta 	{0x00890000,
429*b35ce0c4SPankaj Gupta 	 "PMU10:Optimizing vref\n"
430*b35ce0c4SPankaj Gupta 	},
431*b35ce0c4SPankaj Gupta 	{0x008a0004,
432*b35ce0c4SPankaj Gupta 	 "PMU4:mr12:%2x cs:%d chan %d r:%4x\n"
433*b35ce0c4SPankaj Gupta 	},
434*b35ce0c4SPankaj Gupta 	{0x008b0005,
435*b35ce0c4SPankaj Gupta 	 "PMU3: i:%2d bstr:%2d bsto:%2d st:%d r:%d\n"
436*b35ce0c4SPankaj Gupta 	},
437*b35ce0c4SPankaj Gupta 	{0x008c0002,
438*b35ce0c4SPankaj Gupta 	 "Failed to find sufficient CA Vref Passing Region for CS %d ch. %d\n"
439*b35ce0c4SPankaj Gupta 	},
440*b35ce0c4SPankaj Gupta 	{0x008d0005,
441*b35ce0c4SPankaj Gupta 	 "PMU3:Found %d.%d%% MR12:%x for cs:%d chan %d\n"
442*b35ce0c4SPankaj Gupta 	},
443*b35ce0c4SPankaj Gupta 	{0x008e0002,
444*b35ce0c4SPankaj Gupta 	 "PMU3:Calculated %d for AtxImpedence from acx %d.\n"
445*b35ce0c4SPankaj Gupta 	},
446*b35ce0c4SPankaj Gupta 	{0x008f0000,
447*b35ce0c4SPankaj Gupta 	 "PMU3:CA Odt impedence ==0.  Use default vref.\n"
448*b35ce0c4SPankaj Gupta 	},
449*b35ce0c4SPankaj Gupta 	{0x00900003,
450*b35ce0c4SPankaj Gupta 	 "PMU3:Calculated %d.%d%% for Vref MR12=0x%x.\n"
451*b35ce0c4SPankaj Gupta 	},
452*b35ce0c4SPankaj Gupta 	{0x00910000,
453*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_lp\n"
454*b35ce0c4SPankaj Gupta 	},
455*b35ce0c4SPankaj Gupta 	{0x00920000,
456*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain Begins.\n"
457*b35ce0c4SPankaj Gupta 	},
458*b35ce0c4SPankaj Gupta 	{0x00930001,
459*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_lp testing dly %d\n"
460*b35ce0c4SPankaj Gupta 	},
461*b35ce0c4SPankaj Gupta 	{0x00940001,
462*b35ce0c4SPankaj Gupta 	 "PMU5: CA bitmap dump for cs %x\n"
463*b35ce0c4SPankaj Gupta 	},
464*b35ce0c4SPankaj Gupta 	{0x00950001,
465*b35ce0c4SPankaj Gupta 	 "PMU5: CAA%d "
466*b35ce0c4SPankaj Gupta 	},
467*b35ce0c4SPankaj Gupta 	{0x00960001, "%02x"
468*b35ce0c4SPankaj Gupta 	},
469*b35ce0c4SPankaj Gupta 	{0x00970000, "\n"
470*b35ce0c4SPankaj Gupta 	},
471*b35ce0c4SPankaj Gupta 	{0x00980001,
472*b35ce0c4SPankaj Gupta 	 "PMU5: CAB%d "
473*b35ce0c4SPankaj Gupta 	},
474*b35ce0c4SPankaj Gupta 	{0x00990001, "%02x"
475*b35ce0c4SPankaj Gupta 	},
476*b35ce0c4SPankaj Gupta 	{0x009a0000, "\n"
477*b35ce0c4SPankaj Gupta 	},
478*b35ce0c4SPankaj Gupta 	{0x009b0003,
479*b35ce0c4SPankaj Gupta 	 "PMU3: anibi=%d, anibichan[anibi]=%d ,chan=%d\n"
480*b35ce0c4SPankaj Gupta 	},
481*b35ce0c4SPankaj Gupta 	{0x009c0001, "%02x"
482*b35ce0c4SPankaj Gupta 	},
483*b35ce0c4SPankaj Gupta 	{0x009d0001, "\nPMU3:Raw CA setting :%x"
484*b35ce0c4SPankaj Gupta 	},
485*b35ce0c4SPankaj Gupta 	{0x009e0002, "\nPMU3:ATxDly setting:%x margin:%d\n"
486*b35ce0c4SPankaj Gupta 	},
487*b35ce0c4SPankaj Gupta 	{0x009f0002, "\nPMU3:InvClk ATxDly setting:%x margin:%d\n"
488*b35ce0c4SPankaj Gupta 	},
489*b35ce0c4SPankaj Gupta 	{0x00a00000, "\nPMU3:No Range found!\n"
490*b35ce0c4SPankaj Gupta 	},
491*b35ce0c4SPankaj Gupta 	{0x00a10003,
492*b35ce0c4SPankaj Gupta 	 "PMU3: 2 anibi=%d, anibichan[anibi]=%d ,chan=%d"
493*b35ce0c4SPankaj Gupta 	},
494*b35ce0c4SPankaj Gupta 	{0x00a20002, "\nPMU3: no neg clock => CA setting anib=%d, :%d\n"
495*b35ce0c4SPankaj Gupta 	},
496*b35ce0c4SPankaj Gupta 	{0x00a30001,
497*b35ce0c4SPankaj Gupta 	 "PMU3:Normal margin:%d\n"
498*b35ce0c4SPankaj Gupta 	},
499*b35ce0c4SPankaj Gupta 	{0x00a40001,
500*b35ce0c4SPankaj Gupta 	 "PMU3:Inverted margin:%d\n"
501*b35ce0c4SPankaj Gupta 	},
502*b35ce0c4SPankaj Gupta 	{0x00a50000,
503*b35ce0c4SPankaj Gupta 	 "PMU3:Using Inverted clock\n"
504*b35ce0c4SPankaj Gupta 	},
505*b35ce0c4SPankaj Gupta 	{0x00a60000,
506*b35ce0c4SPankaj Gupta 	 "PMU3:Using normal clk\n"
507*b35ce0c4SPankaj Gupta 	},
508*b35ce0c4SPankaj Gupta 	{0x00a70003,
509*b35ce0c4SPankaj Gupta 	 "PMU3: 3 anibi=%d, anibichan[anibi]=%d ,chan=%d\n"
510*b35ce0c4SPankaj Gupta 	},
511*b35ce0c4SPankaj Gupta 	{0x00a80002,
512*b35ce0c4SPankaj Gupta 	 "PMU3: Setting ATxDly for anib %x to %x\n"
513*b35ce0c4SPankaj Gupta 	},
514*b35ce0c4SPankaj Gupta 	{0x00a90000,
515*b35ce0c4SPankaj Gupta 	 "PMU: Error: CA Training Failed.\n"
516*b35ce0c4SPankaj Gupta 	},
517*b35ce0c4SPankaj Gupta 	{0x00aa0000,
518*b35ce0c4SPankaj Gupta 	 "PMU1: Writing MRs\n"
519*b35ce0c4SPankaj Gupta 	},
520*b35ce0c4SPankaj Gupta 	{0x00ab0000,
521*b35ce0c4SPankaj Gupta 	 "PMU4:Using MR12 values from 1D CA VREF training.\n"
522*b35ce0c4SPankaj Gupta 	},
523*b35ce0c4SPankaj Gupta 	{0x00ac0000,
524*b35ce0c4SPankaj Gupta 	 "PMU3:Writing all MRs to fsp 1\n"
525*b35ce0c4SPankaj Gupta 	},
526*b35ce0c4SPankaj Gupta 	{0x00ad0000,
527*b35ce0c4SPankaj Gupta 	 "PMU10:Lp4Quickboot mode.\n"
528*b35ce0c4SPankaj Gupta 	},
529*b35ce0c4SPankaj Gupta 	{0x00ae0000,
530*b35ce0c4SPankaj Gupta 	 "PMU3: Writing MRs\n"
531*b35ce0c4SPankaj Gupta 	},
532*b35ce0c4SPankaj Gupta 	{0x00af0001,
533*b35ce0c4SPankaj Gupta 	 "PMU10: Setting boot clock divider to %d\n"
534*b35ce0c4SPankaj Gupta 	},
535*b35ce0c4SPankaj Gupta 	{0x00b00000,
536*b35ce0c4SPankaj Gupta 	 "PMU3: Resetting DRAM\n"
537*b35ce0c4SPankaj Gupta 	},
538*b35ce0c4SPankaj Gupta 	{0x00b10000,
539*b35ce0c4SPankaj Gupta 	 "PMU3: setup for RCD initalization\n"
540*b35ce0c4SPankaj Gupta 	},
541*b35ce0c4SPankaj Gupta 	{0x00b20000,
542*b35ce0c4SPankaj Gupta 	 "PMU3: pmu_exit_SR from dev_init()\n"
543*b35ce0c4SPankaj Gupta 	},
544*b35ce0c4SPankaj Gupta 	{0x00b30000,
545*b35ce0c4SPankaj Gupta 	 "PMU3: initializing RCD\n"
546*b35ce0c4SPankaj Gupta 	},
547*b35ce0c4SPankaj Gupta 	{0x00b40000,
548*b35ce0c4SPankaj Gupta 	 "PMU10: **** Executing 2D Image ****\n"
549*b35ce0c4SPankaj Gupta 	},
550*b35ce0c4SPankaj Gupta 	{0x00b50001,
551*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start DDR4 Training. PMU Firmware Revision 0x%04x ****\n"
552*b35ce0c4SPankaj Gupta 	},
553*b35ce0c4SPankaj Gupta 	{0x00b60001,
554*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start DDR3 Training. PMU Firmware Revision 0x%04x ****\n"
555*b35ce0c4SPankaj Gupta 	},
556*b35ce0c4SPankaj Gupta 	{0x00b70001,
557*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start LPDDR3 Training. PMU Firmware Revision 0x%04x ****\n"
558*b35ce0c4SPankaj Gupta 	},
559*b35ce0c4SPankaj Gupta 	{0x00b80001,
560*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start LPDDR4 Training. PMU Firmware Revision 0x%04x ****\n"
561*b35ce0c4SPankaj Gupta 	},
562*b35ce0c4SPankaj Gupta 	{0x00b90000,
563*b35ce0c4SPankaj Gupta 	 "PMU: Error: Mismatched internal revision between DCCM and ICCM images\n"
564*b35ce0c4SPankaj Gupta 	},
565*b35ce0c4SPankaj Gupta 	{0x00ba0001,
566*b35ce0c4SPankaj Gupta 	 "PMU10: **** Testchip %d Specific Firmware ****\n"
567*b35ce0c4SPankaj Gupta 	},
568*b35ce0c4SPankaj Gupta 	{0x00bb0000,
569*b35ce0c4SPankaj Gupta 	 "PMU1: LRDIMM with EncodedCS mode, one DIMM\n"
570*b35ce0c4SPankaj Gupta 	},
571*b35ce0c4SPankaj Gupta 	{0x00bc0000,
572*b35ce0c4SPankaj Gupta 	 "PMU1: LRDIMM with EncodedCS mode, two DIMMs\n"
573*b35ce0c4SPankaj Gupta 	},
574*b35ce0c4SPankaj Gupta 	{0x00bd0000,
575*b35ce0c4SPankaj Gupta 	 "PMU1: RDIMM with EncodedCS mode, one DIMM\n"
576*b35ce0c4SPankaj Gupta 	},
577*b35ce0c4SPankaj Gupta 	{0x00be0000,
578*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MREP training for all ranks\n"
579*b35ce0c4SPankaj Gupta 	},
580*b35ce0c4SPankaj Gupta 	{0x00bf0000,
581*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MREP training for all ranks completed\n"
582*b35ce0c4SPankaj Gupta 	},
583*b35ce0c4SPankaj Gupta 	{0x00c00000,
584*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM DWL training for all ranks\n"
585*b35ce0c4SPankaj Gupta 	},
586*b35ce0c4SPankaj Gupta 	{0x00c10000,
587*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM DWL training for all ranks completed\n"
588*b35ce0c4SPankaj Gupta 	},
589*b35ce0c4SPankaj Gupta 	{0x00c20000,
590*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MRD training for all ranks\n"
591*b35ce0c4SPankaj Gupta 	},
592*b35ce0c4SPankaj Gupta 	{0x00c30000,
593*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MRD training for all ranks completed\n"
594*b35ce0c4SPankaj Gupta 	},
595*b35ce0c4SPankaj Gupta 	{0x00c40000,
596*b35ce0c4SPankaj Gupta 	 "PMU2: Starting RXEN training for all ranks\n"
597*b35ce0c4SPankaj Gupta 	},
598*b35ce0c4SPankaj Gupta 	{0x00c50000,
599*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling fine delay training for all ranks\n"
600*b35ce0c4SPankaj Gupta 	},
601*b35ce0c4SPankaj Gupta 	{0x00c60000,
602*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MWD training for all ranks\n"
603*b35ce0c4SPankaj Gupta 	},
604*b35ce0c4SPankaj Gupta 	{0x00c70000,
605*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MWD training for all ranks completed\n"
606*b35ce0c4SPankaj Gupta 	},
607*b35ce0c4SPankaj Gupta 	{0x00c80000,
608*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling fine delay training for all ranks\n"
609*b35ce0c4SPankaj Gupta 	},
610*b35ce0c4SPankaj Gupta 	{0x00c90000,
611*b35ce0c4SPankaj Gupta 	 "PMU2: Starting read deskew training\n"
612*b35ce0c4SPankaj Gupta 	},
613*b35ce0c4SPankaj Gupta 	{0x00ca0000,
614*b35ce0c4SPankaj Gupta 	 "PMU2: Starting SI friendly 1d RdDqs training for all ranks\n"
615*b35ce0c4SPankaj Gupta 	},
616*b35ce0c4SPankaj Gupta 	{0x00cb0000,
617*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling coarse delay training for all ranks\n"
618*b35ce0c4SPankaj Gupta 	},
619*b35ce0c4SPankaj Gupta 	{0x00cc0000,
620*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 1d WrDq training for all ranks\n"
621*b35ce0c4SPankaj Gupta 	},
622*b35ce0c4SPankaj Gupta 	{0x00cd0000,
623*b35ce0c4SPankaj Gupta 	 "PMU2: Running DQS2DQ Oscillator for all ranks\n"
624*b35ce0c4SPankaj Gupta 	},
625*b35ce0c4SPankaj Gupta 	{0x00ce0000,
626*b35ce0c4SPankaj Gupta 	 "PMU2: Starting again read deskew training but with PRBS\n"
627*b35ce0c4SPankaj Gupta 	},
628*b35ce0c4SPankaj Gupta 	{0x00cf0000,
629*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 1d RdDqs training for all ranks\n"
630*b35ce0c4SPankaj Gupta 	},
631*b35ce0c4SPankaj Gupta 	{0x00d00000,
632*b35ce0c4SPankaj Gupta 	 "PMU2: Starting again 1d WrDq training for all ranks\n"
633*b35ce0c4SPankaj Gupta 	},
634*b35ce0c4SPankaj Gupta 	{0x00d10000,
635*b35ce0c4SPankaj Gupta 	 "PMU2: Starting MaxRdLat training\n"
636*b35ce0c4SPankaj Gupta 	},
637*b35ce0c4SPankaj Gupta 	{0x00d20000,
638*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 2d WrDq training for all ranks\n"
639*b35ce0c4SPankaj Gupta 	},
640*b35ce0c4SPankaj Gupta 	{0x00d30000,
641*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 2d RdDqs training for all ranks\n"
642*b35ce0c4SPankaj Gupta 	},
643*b35ce0c4SPankaj Gupta 	{0x00d40002,
644*b35ce0c4SPankaj Gupta 	 "PMU3:read_fifo %x %x\n"
645*b35ce0c4SPankaj Gupta 	},
646*b35ce0c4SPankaj Gupta 	{0x00d50001,
647*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid PhyDrvImpedance of 0x%x specified in message block.\n"
648*b35ce0c4SPankaj Gupta 	},
649*b35ce0c4SPankaj Gupta 	{0x00d60001,
650*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid PhyOdtImpedance of 0x%x specified in message block.\n"
651*b35ce0c4SPankaj Gupta 	},
652*b35ce0c4SPankaj Gupta 	{0x00d70001,
653*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid BPZNResVal of 0x%x specified in message block.\n"
654*b35ce0c4SPankaj Gupta 	},
655*b35ce0c4SPankaj Gupta 	{0x00d80005,
656*b35ce0c4SPankaj Gupta 	 "PMU3: fixRxEnBackOff csn:%d db:%d dn:%d bo:%d dly:%x\n"
657*b35ce0c4SPankaj Gupta 	},
658*b35ce0c4SPankaj Gupta 	{0x00d90001,
659*b35ce0c4SPankaj Gupta 	 "PMU3: fixRxEnBackOff dly:%x\n"
660*b35ce0c4SPankaj Gupta 	},
661*b35ce0c4SPankaj Gupta 	{0x00da0000,
662*b35ce0c4SPankaj Gupta 	 "PMU3: Entering setupPpt\n"
663*b35ce0c4SPankaj Gupta 	},
664*b35ce0c4SPankaj Gupta 	{0x00db0000,
665*b35ce0c4SPankaj Gupta 	 "PMU3: Start lp4PopulateHighLowBytes\n"
666*b35ce0c4SPankaj Gupta 	},
667*b35ce0c4SPankaj Gupta 	{0x00dc0002,
668*b35ce0c4SPankaj Gupta 	 "PMU3:Dbyte Detect: db%d received %x\n"
669*b35ce0c4SPankaj Gupta 	},
670*b35ce0c4SPankaj Gupta 	{0x00dd0002,
671*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq read %x from dbyte %d\n"
672*b35ce0c4SPankaj Gupta 	},
673*b35ce0c4SPankaj Gupta 	{0x00de0002,
674*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq(2) read %x from dbyte %d\n"
675*b35ce0c4SPankaj Gupta 	},
676*b35ce0c4SPankaj Gupta 	{0x00df0001,
677*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d read 0 from the DQS oscillator it is connected to\n"
678*b35ce0c4SPankaj Gupta 	},
679*b35ce0c4SPankaj Gupta 	{0x00e00002,
680*b35ce0c4SPankaj Gupta 	 "PMU4: Dbyte %d dqs2dq = %d/32 UI\n"
681*b35ce0c4SPankaj Gupta 	},
682*b35ce0c4SPankaj Gupta 	{0x00e10003,
683*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq set dqs2dq:%d/32 ui (%d ps) from dbyte %d\n"
684*b35ce0c4SPankaj Gupta 	},
685*b35ce0c4SPankaj Gupta 	{0x00e20003,
686*b35ce0c4SPankaj Gupta 	 "PMU3: Setting coarse delay in AtxDly chiplet %d from 0x%02x to 0x%02x\n"
687*b35ce0c4SPankaj Gupta 	},
688*b35ce0c4SPankaj Gupta 	{0x00e30003,
689*b35ce0c4SPankaj Gupta 	 "PMU3: Clearing coarse delay in AtxDly chiplet %d from 0x%02x to 0x%02x\n"
690*b35ce0c4SPankaj Gupta 	},
691*b35ce0c4SPankaj Gupta 	{0x00e40000,
692*b35ce0c4SPankaj Gupta 	 "PMU3: Performing DDR4 geardown sync sequence\n"
693*b35ce0c4SPankaj Gupta 	},
694*b35ce0c4SPankaj Gupta 	{0x00e50000,
695*b35ce0c4SPankaj Gupta 	 "PMU1: Enter self refresh\n"
696*b35ce0c4SPankaj Gupta 	},
697*b35ce0c4SPankaj Gupta 	{0x00e60000,
698*b35ce0c4SPankaj Gupta 	 "PMU1: Exit self refresh\n"
699*b35ce0c4SPankaj Gupta 	},
700*b35ce0c4SPankaj Gupta 	{0x00e70000,
701*b35ce0c4SPankaj Gupta 	 "PMU: Error: No dbiEnable with lp4\n"
702*b35ce0c4SPankaj Gupta 	},
703*b35ce0c4SPankaj Gupta 	{0x00e80000,
704*b35ce0c4SPankaj Gupta 	 "PMU: Error: No dbiDisable with lp4\n"
705*b35ce0c4SPankaj Gupta 	},
706*b35ce0c4SPankaj Gupta 	{0x00e90001,
707*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update Rx DBI Setting disable %d\n"
708*b35ce0c4SPankaj Gupta 	},
709*b35ce0c4SPankaj Gupta 	{0x00ea0001,
710*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update 2nCk WPre Setting disable %d\n"
711*b35ce0c4SPankaj Gupta 	},
712*b35ce0c4SPankaj Gupta 	{0x00eb0005,
713*b35ce0c4SPankaj Gupta 	 "PMU1: read_delay: db%d lane%d delays[%2d] = 0x%02x (max 0x%02x)\n"
714*b35ce0c4SPankaj Gupta 	},
715*b35ce0c4SPankaj Gupta 	{0x00ec0004,
716*b35ce0c4SPankaj Gupta 	 "PMU1: write_delay: db%d lane%d delays[%2d] = 0x%04x\n"
717*b35ce0c4SPankaj Gupta 	},
718*b35ce0c4SPankaj Gupta 	{0x00ed0001,
719*b35ce0c4SPankaj Gupta 	 "PMU5: ID=%d -- db0  db1  db2  db3  db4  db5  db6  db7  db8  db9 --\n"
720*b35ce0c4SPankaj Gupta 	},
721*b35ce0c4SPankaj Gupta 	{0x00ee000b,
722*b35ce0c4SPankaj Gupta 	 "PMU5: [%d]:0x %04x %04x %04x %04x %04x %04x %04x %04x %04x %04x\n"
723*b35ce0c4SPankaj Gupta 	},
724*b35ce0c4SPankaj Gupta 	{0x00ef0003,
725*b35ce0c4SPankaj Gupta 	 "PMU2: dump delays - pstate=%d dimm=%d csn=%d\n"
726*b35ce0c4SPankaj Gupta 	},
727*b35ce0c4SPankaj Gupta 	{0x00f00000,
728*b35ce0c4SPankaj Gupta 	 "PMU3: Printing Mid-Training Delay Information\n"
729*b35ce0c4SPankaj Gupta 	},
730*b35ce0c4SPankaj Gupta 	{0x00f10001,
731*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 TrainingCntr <<KEY>> coarse(15:10) fine(9:0)\n"
732*b35ce0c4SPankaj Gupta 	},
733*b35ce0c4SPankaj Gupta 	{0x00f20001,
734*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 RxEnDly, 1 RxClkDly <<KEY>> coarse(10:6) fine(5:0)\n"
735*b35ce0c4SPankaj Gupta 	},
736*b35ce0c4SPankaj Gupta 	{0x00f30001,
737*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 TxDqsDly, 1 TxDqDly <<KEY>> coarse(9:6) fine(5:0)\n"
738*b35ce0c4SPankaj Gupta 	},
739*b35ce0c4SPankaj Gupta 	{0x00f40001,
740*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 RxPBDly <<KEY>> 1 Delay Unit ~= 7ps\n"
741*b35ce0c4SPankaj Gupta 	},
742*b35ce0c4SPankaj Gupta 	{0x00f50000,
743*b35ce0c4SPankaj Gupta 	 "PMU5: all CS <<KEY>> 0 DFIMRL <<KEY>> Units = DFI clocks\n"
744*b35ce0c4SPankaj Gupta 	},
745*b35ce0c4SPankaj Gupta 	{0x00f60000,
746*b35ce0c4SPankaj Gupta 	 "PMU5: all CS <<KEY>> VrefDACs <<KEY>> DAC(6:0)\n"
747*b35ce0c4SPankaj Gupta 	},
748*b35ce0c4SPankaj Gupta 	{0x00f70000,
749*b35ce0c4SPankaj Gupta 	 "PMU1: Set DMD in MR13 and wrDBI in MR3 for training\n"
750*b35ce0c4SPankaj Gupta 	},
751*b35ce0c4SPankaj Gupta 	{0x00f80000,
752*b35ce0c4SPankaj Gupta 	 "PMU: Error: getMaxRxen() failed to find largest rxen nibble delay\n"
753*b35ce0c4SPankaj Gupta 	},
754*b35ce0c4SPankaj Gupta 	{0x00f90003,
755*b35ce0c4SPankaj Gupta 	 "PMU2: getMaxRxen(): maxDly %d maxTg %d maxNib %d\n"
756*b35ce0c4SPankaj Gupta 	},
757*b35ce0c4SPankaj Gupta 	{0x00fa0003,
758*b35ce0c4SPankaj Gupta 	 "PMU2: getRankMaxRxen(): maxDly %d Tg %d maxNib %d\n"
759*b35ce0c4SPankaj Gupta 	},
760*b35ce0c4SPankaj Gupta 	{0x00fb0000,
761*b35ce0c4SPankaj Gupta 	 "PMU1: skipping CDD calculation in 2D image\n"
762*b35ce0c4SPankaj Gupta 	},
763*b35ce0c4SPankaj Gupta 	{0x00fc0001,
764*b35ce0c4SPankaj Gupta 	 "PMU3: Calculating CDDs for pstate %d\n"
765*b35ce0c4SPankaj Gupta 	},
766*b35ce0c4SPankaj Gupta 	{0x00fd0003,
767*b35ce0c4SPankaj Gupta 	 "PMU3: rxFromDly[%d][%d] = %d\n"
768*b35ce0c4SPankaj Gupta 	},
769*b35ce0c4SPankaj Gupta 	{0x00fe0003,
770*b35ce0c4SPankaj Gupta 	 "PMU3: rxToDly  [%d][%d] = %d\n"
771*b35ce0c4SPankaj Gupta 	},
772*b35ce0c4SPankaj Gupta 	{0x00ff0003,
773*b35ce0c4SPankaj Gupta 	 "PMU3: rxDly    [%d][%d] = %d\n"
774*b35ce0c4SPankaj Gupta 	},
775*b35ce0c4SPankaj Gupta 	{0x01000003,
776*b35ce0c4SPankaj Gupta 	 "PMU3: txDly    [%d][%d] = %d\n"
777*b35ce0c4SPankaj Gupta 	},
778*b35ce0c4SPankaj Gupta 	{0x01010003,
779*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_RR_%d_%d = %d\n"
780*b35ce0c4SPankaj Gupta 	},
781*b35ce0c4SPankaj Gupta 	{0x01020003,
782*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_WW_%d_%d = %d\n"
783*b35ce0c4SPankaj Gupta 	},
784*b35ce0c4SPankaj Gupta 	{0x01030003,
785*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_RR_%d_%d = %d\n"
786*b35ce0c4SPankaj Gupta 	},
787*b35ce0c4SPankaj Gupta 	{0x01040003,
788*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_WW_%d_%d = %d\n"
789*b35ce0c4SPankaj Gupta 	},
790*b35ce0c4SPankaj Gupta 	{0x01050003,
791*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_RW_%d_%d = %d\n"
792*b35ce0c4SPankaj Gupta 	},
793*b35ce0c4SPankaj Gupta 	{0x01060003,
794*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_WR_%d_%d = %d\n"
795*b35ce0c4SPankaj Gupta 	},
796*b35ce0c4SPankaj Gupta 	{0x01070003,
797*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_RW_%d_%d = %d\n"
798*b35ce0c4SPankaj Gupta 	},
799*b35ce0c4SPankaj Gupta 	{0x01080003,
800*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_WR_%d_%d = %d\n"
801*b35ce0c4SPankaj Gupta 	},
802*b35ce0c4SPankaj Gupta 	{0x01090004,
803*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC2x_B%d_D%d = 0x%02x\n"
804*b35ce0c4SPankaj Gupta 	},
805*b35ce0c4SPankaj Gupta 	{0x010a0004,
806*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC3x_B%d_D%d = 0x%02x\n"
807*b35ce0c4SPankaj Gupta 	},
808*b35ce0c4SPankaj Gupta 	{0x010b0004,
809*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC4x_B%d_D%d = 0x%02x\n"
810*b35ce0c4SPankaj Gupta 	},
811*b35ce0c4SPankaj Gupta 	{0x010c0004,
812*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC5x_B%d_D%d = 0x%02x\n"
813*b35ce0c4SPankaj Gupta 	},
814*b35ce0c4SPankaj Gupta 	{0x010d0004,
815*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC8x_B%d_D%d = 0x%02x\n"
816*b35ce0c4SPankaj Gupta 	},
817*b35ce0c4SPankaj Gupta 	{0x010e0004,
818*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC9x_B%d_D%d = 0x%02x\n"
819*b35ce0c4SPankaj Gupta 	},
820*b35ce0c4SPankaj Gupta 	{0x010f0004,
821*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBCAx_B%d_D%d = 0x%02x\n"
822*b35ce0c4SPankaj Gupta 	},
823*b35ce0c4SPankaj Gupta 	{0x01100004,
824*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBCBx_B%d_D%d = 0x%02x\n"
825*b35ce0c4SPankaj Gupta 	},
826*b35ce0c4SPankaj Gupta 	{0x01110000,
827*b35ce0c4SPankaj Gupta 	 "PMU10: Entering context_switch_postamble\n"
828*b35ce0c4SPankaj Gupta 	},
829*b35ce0c4SPankaj Gupta 	{0x01120003,
830*b35ce0c4SPankaj Gupta 	 "PMU10: context_switch_postamble is enabled for DIMM %d, RC0A=0x%x, RC3x=0x%x\n"
831*b35ce0c4SPankaj Gupta 	},
832*b35ce0c4SPankaj Gupta 	{0x01130000,
833*b35ce0c4SPankaj Gupta 	 "PMU10: Setting bcw fspace 0\n"
834*b35ce0c4SPankaj Gupta 	},
835*b35ce0c4SPankaj Gupta 	{0x01140001,
836*b35ce0c4SPankaj Gupta 	 "PMU10: Sending BC0A = 0x%x\n"
837*b35ce0c4SPankaj Gupta 	},
838*b35ce0c4SPankaj Gupta 	{0x01150001,
839*b35ce0c4SPankaj Gupta 	 "PMU10: Sending BC6x = 0x%x\n"
840*b35ce0c4SPankaj Gupta 	},
841*b35ce0c4SPankaj Gupta 	{0x01160001,
842*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC0A = 0x%x\n"
843*b35ce0c4SPankaj Gupta 	},
844*b35ce0c4SPankaj Gupta 	{0x01170001,
845*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC3x = 0x%x\n"
846*b35ce0c4SPankaj Gupta 	},
847*b35ce0c4SPankaj Gupta 	{0x01180001,
848*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC0A = 0x%x\n"
849*b35ce0c4SPankaj Gupta 	},
850*b35ce0c4SPankaj Gupta 	{0x01190001,
851*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pstate = %d\n"
852*b35ce0c4SPankaj Gupta 	},
853*b35ce0c4SPankaj Gupta 	{0x011a0001,
854*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: dfifreqxlat_pstate = %d\n"
855*b35ce0c4SPankaj Gupta 	},
856*b35ce0c4SPankaj Gupta 	{0x011b0001,
857*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllbypass = %d\n"
858*b35ce0c4SPankaj Gupta 	},
859*b35ce0c4SPankaj Gupta 	{0x011c0001,
860*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: forcecal = %d\n"
861*b35ce0c4SPankaj Gupta 	},
862*b35ce0c4SPankaj Gupta 	{0x011d0001,
863*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllmaxrange = 0x%x\n"
864*b35ce0c4SPankaj Gupta 	},
865*b35ce0c4SPankaj Gupta 	{0x011e0001,
866*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: dacval_out = 0x%x\n"
867*b35ce0c4SPankaj Gupta 	},
868*b35ce0c4SPankaj Gupta 	{0x011f0001,
869*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllctrl3 = 0x%x\n"
870*b35ce0c4SPankaj Gupta 	},
871*b35ce0c4SPankaj Gupta 	{0x01200000,
872*b35ce0c4SPankaj Gupta 	 "PMU3: Loading DRAM with BIOS supplied MR values and entering self refresh prior to exiting PMU code.\n"
873*b35ce0c4SPankaj Gupta 	},
874*b35ce0c4SPankaj Gupta 	{0x01210002,
875*b35ce0c4SPankaj Gupta 	 "PMU3: Setting DataBuffer function space of dimmcs 0x%02x to %d\n"
876*b35ce0c4SPankaj Gupta 	},
877*b35ce0c4SPankaj Gupta 	{0x01220002,
878*b35ce0c4SPankaj Gupta 	 "PMU4: Setting RCW FxRC%Xx = 0x%02x\n"
879*b35ce0c4SPankaj Gupta 	},
880*b35ce0c4SPankaj Gupta 	{0x01230002,
881*b35ce0c4SPankaj Gupta 	 "PMU4: Setting RCW FxRC%02x = 0x%02x\n"
882*b35ce0c4SPankaj Gupta 	},
883*b35ce0c4SPankaj Gupta 	{0x01240001,
884*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update Rd Pre Setting disable %d\n"
885*b35ce0c4SPankaj Gupta 	},
886*b35ce0c4SPankaj Gupta 	{0x01250002,
887*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW FxBC%Xx = 0x%02x\n"
888*b35ce0c4SPankaj Gupta 	},
889*b35ce0c4SPankaj Gupta 	{0x01260002,
890*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW BC%02x = 0x%02x\n"
891*b35ce0c4SPankaj Gupta 	},
892*b35ce0c4SPankaj Gupta 	{0x01270002,
893*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW PBA mode FxBC%Xx = 0x%02x\n"
894*b35ce0c4SPankaj Gupta 	},
895*b35ce0c4SPankaj Gupta 	{0x01280002,
896*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW PBA mode BC%02x = 0x%02x\n"
897*b35ce0c4SPankaj Gupta 	},
898*b35ce0c4SPankaj Gupta 	{0x01290003,
899*b35ce0c4SPankaj Gupta 	 "PMU4: BCW value for dimm %d, fspace %d, addr 0x%04x\n"
900*b35ce0c4SPankaj Gupta 	},
901*b35ce0c4SPankaj Gupta 	{0x012a0002,
902*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d, value 0x%02x\n"
903*b35ce0c4SPankaj Gupta 	},
904*b35ce0c4SPankaj Gupta 	{0x012b0000,
905*b35ce0c4SPankaj Gupta 	 "PMU6: WARNING MREP underflow, set to min value -2 coarse, 0 fine\n"
906*b35ce0c4SPankaj Gupta 	},
907*b35ce0c4SPankaj Gupta 	{0x012c0004,
908*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing final data buffer fine delay value nib %2d, trainDly %3d, fineDly code %2d, new MREP fine %2d\n"
909*b35ce0c4SPankaj Gupta 	},
910*b35ce0c4SPankaj Gupta 	{0x012d0003,
911*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing final data buffer fine delay value nib %2d, trainDly %3d, fineDly code %2d\n"
912*b35ce0c4SPankaj Gupta 	},
913*b35ce0c4SPankaj Gupta 	{0x012e0003,
914*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing data buffer fine delay type %d nib %2d, code %2d\n"
915*b35ce0c4SPankaj Gupta 	},
916*b35ce0c4SPankaj Gupta 	{0x012f0002,
917*b35ce0c4SPankaj Gupta 	 "PMU6: Writing final data buffer coarse delay value dbyte %2d, coarse = 0x%02x\n"
918*b35ce0c4SPankaj Gupta 	},
919*b35ce0c4SPankaj Gupta 	{0x01300003,
920*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x saved at CSR addr 0x%08x\n"
921*b35ce0c4SPankaj Gupta 	},
922*b35ce0c4SPankaj Gupta 	{0x01310003,
923*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x restored from CSR addr 0x%08x\n"
924*b35ce0c4SPankaj Gupta 	},
925*b35ce0c4SPankaj Gupta 	{0x01320003,
926*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x saved at CSR addr 0x%08x\n"
927*b35ce0c4SPankaj Gupta 	},
928*b35ce0c4SPankaj Gupta 	{0x01330003,
929*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x restored from CSR addr 0x%08x\n"
930*b35ce0c4SPankaj Gupta 	},
931*b35ce0c4SPankaj Gupta 	{0x01340001,
932*b35ce0c4SPankaj Gupta 	 "PMU3: Update BC00, BC01, BC02 for rank-dimm 0x%02x\n"
933*b35ce0c4SPankaj Gupta 	},
934*b35ce0c4SPankaj Gupta 	{0x01350000,
935*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F0RC00 -> F0RC0F\n"
936*b35ce0c4SPankaj Gupta 	},
937*b35ce0c4SPankaj Gupta 	{0x01360000,
938*b35ce0c4SPankaj Gupta 	 "PMU3: Disable parity in F0RC0E\n"
939*b35ce0c4SPankaj Gupta 	},
940*b35ce0c4SPankaj Gupta 	{0x01370000,
941*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F1RC00 -> F1RC05\n"
942*b35ce0c4SPankaj Gupta 	},
943*b35ce0c4SPankaj Gupta 	{0x01380000,
944*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F1RC1x -> F1RC9x\n"
945*b35ce0c4SPankaj Gupta 	},
946*b35ce0c4SPankaj Gupta 	{0x01390000,
947*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 Data buffer Control words BC00 -> BC0E\n"
948*b35ce0c4SPankaj Gupta 	},
949*b35ce0c4SPankaj Gupta 	{0x013a0002,
950*b35ce0c4SPankaj Gupta 	 "PMU1: setAltCL Sending MR0 0x%x cl=%d\n"
951*b35ce0c4SPankaj Gupta 	},
952*b35ce0c4SPankaj Gupta 	{0x013b0002,
953*b35ce0c4SPankaj Gupta 	 "PMU1: restoreFromAltCL Sending MR0 0x%x cl=%d\n"
954*b35ce0c4SPankaj Gupta 	},
955*b35ce0c4SPankaj Gupta 	{0x013c0002,
956*b35ce0c4SPankaj Gupta 	 "PMU1: restoreAcsmFromAltCL Sending MR0 0x%x cl=%d\n"
957*b35ce0c4SPankaj Gupta 	},
958*b35ce0c4SPankaj Gupta 	{0x013d0002,
959*b35ce0c4SPankaj Gupta 	 "PMU2: Setting D3R RC%d = 0x%01x\n"
960*b35ce0c4SPankaj Gupta 	},
961*b35ce0c4SPankaj Gupta 	{0x013e0000,
962*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D3 RDIMM RCD Control words RC0 -> RC11\n"
963*b35ce0c4SPankaj Gupta 	},
964*b35ce0c4SPankaj Gupta 	{0x013f0002,
965*b35ce0c4SPankaj Gupta 	 "PMU0: VrefDAC0/1 vddqStart %d dacToVddq %d\n"
966*b35ce0c4SPankaj Gupta 	},
967*b35ce0c4SPankaj Gupta 	{0x01400001,
968*b35ce0c4SPankaj Gupta 	 "PMU: Error: Messageblock phyVref=0x%x is above the limit for TSMC28's attenuated LPDDR4 receivers. Please see the pub databook\n"
969*b35ce0c4SPankaj Gupta 	},
970*b35ce0c4SPankaj Gupta 	{0x01410001,
971*b35ce0c4SPankaj Gupta 	 "PMU: Error: Messageblock phyVref=0x%x is above the limit for TSMC28's attenuated DDR4 receivers. Please see the pub databook\n"
972*b35ce0c4SPankaj Gupta 	},
973*b35ce0c4SPankaj Gupta 	{0x01420001,
974*b35ce0c4SPankaj Gupta 	 "PMU0: PHY VREF @ (%d/1000) VDDQ\n"
975*b35ce0c4SPankaj Gupta 	},
976*b35ce0c4SPankaj Gupta 	{0x01430002,
977*b35ce0c4SPankaj Gupta 	 "PMU0: initalizing phy vrefDacs to %d ExtVrefRange %x\n"
978*b35ce0c4SPankaj Gupta 	},
979*b35ce0c4SPankaj Gupta 	{0x01440002,
980*b35ce0c4SPankaj Gupta 	 "PMU0: initalizing global vref to %d range %d\n"
981*b35ce0c4SPankaj Gupta 	},
982*b35ce0c4SPankaj Gupta 	{0x01450002,
983*b35ce0c4SPankaj Gupta 	 "PMU4: Setting initial device vrefDQ for CS%d to MR6 = 0x%04x\n"
984*b35ce0c4SPankaj Gupta 	},
985*b35ce0c4SPankaj Gupta 	{0x01460003,
986*b35ce0c4SPankaj Gupta 	 "PMU1: In write_level_fine() csn=%d dimm=%d pstate=%d\n"
987*b35ce0c4SPankaj Gupta 	},
988*b35ce0c4SPankaj Gupta 	{0x01470000,
989*b35ce0c4SPankaj Gupta 	 "PMU3: Fine write leveling hardware search increasing TxDqsDly until full bursts are seen\n"
990*b35ce0c4SPankaj Gupta 	},
991*b35ce0c4SPankaj Gupta 	{0x01480000,
992*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ........................|........................\n"
993*b35ce0c4SPankaj Gupta 	},
994*b35ce0c4SPankaj Gupta 	{0x01490007,
995*b35ce0c4SPankaj Gupta 	 "PMU4: WL margin for nib %2d: %08x%08x%08x%08x%08x%08x\n"
996*b35ce0c4SPankaj Gupta 	},
997*b35ce0c4SPankaj Gupta 	{0x014a0000,
998*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ........................|........................\n"
999*b35ce0c4SPankaj Gupta 	},
1000*b35ce0c4SPankaj Gupta 	{0x014b0000,
1001*b35ce0c4SPankaj Gupta 	 "PMU3: Exiting write leveling mode\n"
1002*b35ce0c4SPankaj Gupta 	},
1003*b35ce0c4SPankaj Gupta 	{0x014c0001,
1004*b35ce0c4SPankaj Gupta 	 "PMU3: got %d for cl in load_wrlvl_acsm\n"
1005*b35ce0c4SPankaj Gupta 	},
1006*b35ce0c4SPankaj Gupta 	{0x014d0003,
1007*b35ce0c4SPankaj Gupta 	 "PMU1: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
1008*b35ce0c4SPankaj Gupta 	},
1009*b35ce0c4SPankaj Gupta 	{0x014e0003,
1010*b35ce0c4SPankaj Gupta 	 "PMU3: left eye edge search db:%d ln:%d dly:0x%x\n"
1011*b35ce0c4SPankaj Gupta 	},
1012*b35ce0c4SPankaj Gupta 	{0x014f0003,
1013*b35ce0c4SPankaj Gupta 	 "PMU3: right eye edge search db:%d ln:%d dly:0x%x\n"
1014*b35ce0c4SPankaj Gupta 	},
1015*b35ce0c4SPankaj Gupta 	{0x01500004,
1016*b35ce0c4SPankaj Gupta 	 "PMU3: eye center db:%d ln:%d dly:0x%x (maxdq:%x)\n"
1017*b35ce0c4SPankaj Gupta 	},
1018*b35ce0c4SPankaj Gupta 	{0x01510003,
1019*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db:%d ln:%d dly:0x%x\n"
1020*b35ce0c4SPankaj Gupta 	},
1021*b35ce0c4SPankaj Gupta 	{0x01520003,
1022*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db:%d ln:%d dly:0x%x\n"
1023*b35ce0c4SPankaj Gupta 	},
1024*b35ce0c4SPankaj Gupta 	{0x01530002,
1025*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling dbyte%2d is still failing for TxDqsDly=0x%04x\n"
1026*b35ce0c4SPankaj Gupta 	},
1027*b35ce0c4SPankaj Gupta 	{0x01540002,
1028*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
1029*b35ce0c4SPankaj Gupta 	},
1030*b35ce0c4SPankaj Gupta 	{0x01550000,
1031*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
1032*b35ce0c4SPankaj Gupta 	},
1033*b35ce0c4SPankaj Gupta 	{0x01560001,
1034*b35ce0c4SPankaj Gupta 	 "PMU3: got %d for cl in load_wrlvl_acsm\n"
1035*b35ce0c4SPankaj Gupta 	},
1036*b35ce0c4SPankaj Gupta 	{0x01570003,
1037*b35ce0c4SPankaj Gupta 	 "PMU3: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
1038*b35ce0c4SPankaj Gupta 	},
1039*b35ce0c4SPankaj Gupta 	{0x01580003,
1040*b35ce0c4SPankaj Gupta 	 "PMU3: left eye edge search db:%d ln:%d dly:0x%x\n"
1041*b35ce0c4SPankaj Gupta 	},
1042*b35ce0c4SPankaj Gupta 	{0x01590003,
1043*b35ce0c4SPankaj Gupta 	 "PMU3: right eye edge search db: %d ln: %d dly: 0x%x\n"
1044*b35ce0c4SPankaj Gupta 	},
1045*b35ce0c4SPankaj Gupta 	{0x015a0004,
1046*b35ce0c4SPankaj Gupta 	 "PMU3: eye center db: %d ln: %d dly: 0x%x (maxdq: 0x%x)\n"
1047*b35ce0c4SPankaj Gupta 	},
1048*b35ce0c4SPankaj Gupta 	{0x015b0003,
1049*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db: %d ln: %d dly: 0x%x\n"
1050*b35ce0c4SPankaj Gupta 	},
1051*b35ce0c4SPankaj Gupta 	{0x015c0003,
1052*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db: %d ln: %d dly: 0x%x\n"
1053*b35ce0c4SPankaj Gupta 	},
1054*b35ce0c4SPankaj Gupta 	{0x015d0002,
1055*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling nibble%2d is still failing for TxDqsDly=0x%04x\n"
1056*b35ce0c4SPankaj Gupta 	},
1057*b35ce0c4SPankaj Gupta 	{0x015e0002,
1058*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
1059*b35ce0c4SPankaj Gupta 	},
1060*b35ce0c4SPankaj Gupta 	{0x015f0000,
1061*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
1062*b35ce0c4SPankaj Gupta 	},
1063*b35ce0c4SPankaj Gupta 	{0x01600000,
1064*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ................................|................................\n"
1065*b35ce0c4SPankaj Gupta 	},
1066*b35ce0c4SPankaj Gupta 	{0x01610009,
1067*b35ce0c4SPankaj Gupta 	 "PMU4: WL margin for nib %2d: %08x%08x%08x%08x%08x%08x%08x%08x\n"
1068*b35ce0c4SPankaj Gupta 	},
1069*b35ce0c4SPankaj Gupta 	{0x01620000,
1070*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ................................|................................\n"
1071*b35ce0c4SPankaj Gupta 	},
1072*b35ce0c4SPankaj Gupta 	{0x01630001,
1073*b35ce0c4SPankaj Gupta 	 "PMU8: Adjust margin after WL coarse to be larger than %d\n"
1074*b35ce0c4SPankaj Gupta 	},
1075*b35ce0c4SPankaj Gupta 	{0x01640001,
1076*b35ce0c4SPankaj Gupta 	 "PMU: Error: All margin after write leveling coarse are smaller than minMargin %d\n"
1077*b35ce0c4SPankaj Gupta 	},
1078*b35ce0c4SPankaj Gupta 	{0x01650002,
1079*b35ce0c4SPankaj Gupta 	 "PMU8: Decrement nib %d TxDqsDly by %d fine step\n"
1080*b35ce0c4SPankaj Gupta 	},
1081*b35ce0c4SPankaj Gupta 	{0x01660003,
1082*b35ce0c4SPankaj Gupta 	 "PMU3: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
1083*b35ce0c4SPankaj Gupta 	},
1084*b35ce0c4SPankaj Gupta 	{0x01670005,
1085*b35ce0c4SPankaj Gupta 	 "PMU2: Write level: dbyte %d nib%d dq/dmbi %2d dqsfine 0x%04x dqDly 0x%04x\n"
1086*b35ce0c4SPankaj Gupta 	},
1087*b35ce0c4SPankaj Gupta 	{0x01680002,
1088*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling nibble%2d is still failing for TxDqsDly=0x%04x\n"
1089*b35ce0c4SPankaj Gupta 	},
1090*b35ce0c4SPankaj Gupta 	{0x01690002,
1091*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
1092*b35ce0c4SPankaj Gupta 	},
1093*b35ce0c4SPankaj Gupta 	{0x016a0000,
1094*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
1095*b35ce0c4SPankaj Gupta 	},
1096*b35ce0c4SPankaj Gupta 	{0x016b0001,
1097*b35ce0c4SPankaj Gupta 	 "PMU3: DWL delay = %d\n"
1098*b35ce0c4SPankaj Gupta 	},
1099*b35ce0c4SPankaj Gupta 	{0x016c0003,
1100*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for DWL nib %2d delay = %2d is %d\n"
1101*b35ce0c4SPankaj Gupta 	},
1102*b35ce0c4SPankaj Gupta 	{0x016d0002,
1103*b35ce0c4SPankaj Gupta 	 "PMU3: DWL nibble %d sampled a 1 at delay %d\n"
1104*b35ce0c4SPankaj Gupta 	},
1105*b35ce0c4SPankaj Gupta 	{0x016e0003,
1106*b35ce0c4SPankaj Gupta 	 "PMU3: DWL nibble %d passed at delay %d. Rising edge was at %d\n"
1107*b35ce0c4SPankaj Gupta 	},
1108*b35ce0c4SPankaj Gupta 	{0x016f0000,
1109*b35ce0c4SPankaj Gupta 	 "PMU2: DWL did nto find a rising edge of memclk for all nibbles. Failing nibbles assumed to have rising edge close to fine delay 63\n"
1110*b35ce0c4SPankaj Gupta 	},
1111*b35ce0c4SPankaj Gupta 	{0x01700002,
1112*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge found in alias window, setting wrlvlDly for nibble %d = %d\n"
1113*b35ce0c4SPankaj Gupta 	},
1114*b35ce0c4SPankaj Gupta 	{0x01710002,
1115*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed DWL for nib %d with %d one\n"
1116*b35ce0c4SPankaj Gupta 	},
1117*b35ce0c4SPankaj Gupta 	{0x01720003,
1118*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge not found in alias window with %d one, leaving wrlvlDly for nibble %d = %d\n"
1119*b35ce0c4SPankaj Gupta 	},
1120*b35ce0c4SPankaj Gupta 	{0x04000000,
1121*b35ce0c4SPankaj Gupta 	 "PMU: Error:Mailbox Buffer Overflowed.\n"
1122*b35ce0c4SPankaj Gupta 	},
1123*b35ce0c4SPankaj Gupta 	{0x04010000,
1124*b35ce0c4SPankaj Gupta 	 "PMU: Error:Mailbox Buffer Overflowed.\n"
1125*b35ce0c4SPankaj Gupta 	},
1126*b35ce0c4SPankaj Gupta 	{0x04020000,
1127*b35ce0c4SPankaj Gupta 	 "PMU: ***** Assertion Error - terminating *****\n"
1128*b35ce0c4SPankaj Gupta 	},
1129*b35ce0c4SPankaj Gupta 	{0x04030002,
1130*b35ce0c4SPankaj Gupta 	 "PMU1: swapByte db %d by %d\n"
1131*b35ce0c4SPankaj Gupta 	},
1132*b35ce0c4SPankaj Gupta 	{0x04040003,
1133*b35ce0c4SPankaj Gupta 	 "PMU3: get_cmd_dly max(%d ps, %d memclk) = %d\n"
1134*b35ce0c4SPankaj Gupta 	},
1135*b35ce0c4SPankaj Gupta 	{0x04050002,
1136*b35ce0c4SPankaj Gupta 	 "PMU0: Write CSR 0x%06x 0x%04x\n"
1137*b35ce0c4SPankaj Gupta 	},
1138*b35ce0c4SPankaj Gupta 	{0x04060002,
1139*b35ce0c4SPankaj Gupta 	 "PMU0: hwt_init_ppgc_prbs(): Polynomial: %x, Deg: %d\n"
1140*b35ce0c4SPankaj Gupta 	},
1141*b35ce0c4SPankaj Gupta 	{0x04070001,
1142*b35ce0c4SPankaj Gupta 	 "PMU: Error: acsm_set_cmd to non existent instruction address %d\n"
1143*b35ce0c4SPankaj Gupta 	},
1144*b35ce0c4SPankaj Gupta 	{0x04080001,
1145*b35ce0c4SPankaj Gupta 	 "PMU: Error: acsm_set_cmd with unknown ddr cmd 0x%x\n"
1146*b35ce0c4SPankaj Gupta 	},
1147*b35ce0c4SPankaj Gupta 	{0x0409000c,
1148*b35ce0c4SPankaj Gupta 	 "PMU1: acsm_addr %02x, acsm_flgs %04x, ddr_cmd %02x, cmd_dly %02x, ddr_addr %04x, ddr_bnk %02x, ddr_cs %02x, cmd_rcnt %02x, AcsmSeq0/1/2/3 %04x %04x %04x %04x\n"
1149*b35ce0c4SPankaj Gupta 	},
1150*b35ce0c4SPankaj Gupta 	{0x040a0000,
1151*b35ce0c4SPankaj Gupta 	 "PMU: Error: Polling on ACSM done failed to complete in acsm_poll_done()...\n"
1152*b35ce0c4SPankaj Gupta 	},
1153*b35ce0c4SPankaj Gupta 	{0x040b0000,
1154*b35ce0c4SPankaj Gupta 	 "PMU1: acsm RUN\n"
1155*b35ce0c4SPankaj Gupta 	},
1156*b35ce0c4SPankaj Gupta 	{0x040c0000,
1157*b35ce0c4SPankaj Gupta 	 "PMU1: acsm STOPPED\n"
1158*b35ce0c4SPankaj Gupta 	},
1159*b35ce0c4SPankaj Gupta 	{0x040d0002,
1160*b35ce0c4SPankaj Gupta 	 "PMU1: acsm_init: acsm_mode %04x mxrdlat %04x\n"
1161*b35ce0c4SPankaj Gupta 	},
1162*b35ce0c4SPankaj Gupta 	{0x040e0002,
1163*b35ce0c4SPankaj Gupta 	 "PMU: Error: setAcsmCLCWL: cl and cwl must be each >= 2 and 5, resp. CL=%d CWL=%d\n"
1164*b35ce0c4SPankaj Gupta 	},
1165*b35ce0c4SPankaj Gupta 	{0x040f0002,
1166*b35ce0c4SPankaj Gupta 	 "PMU: Error: setAcsmCLCWL: cl and cwl must be each >= 5. CL=%d CWL=%d\n"
1167*b35ce0c4SPankaj Gupta 	},
1168*b35ce0c4SPankaj Gupta 	{0x04100002,
1169*b35ce0c4SPankaj Gupta 	 "PMU1: setAcsmCLCWL: CASL %04d WCASL %04d\n"
1170*b35ce0c4SPankaj Gupta 	},
1171*b35ce0c4SPankaj Gupta 	{0x04110001,
1172*b35ce0c4SPankaj Gupta 	 "PMU: Error: Reserved value of register F0RC0F found in message block: 0x%04x\n"
1173*b35ce0c4SPankaj Gupta 	},
1174*b35ce0c4SPankaj Gupta 	{0x04120001,
1175*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
1176*b35ce0c4SPankaj Gupta 	},
1177*b35ce0c4SPankaj Gupta 	{0x04130001,
1178*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
1179*b35ce0c4SPankaj Gupta 	},
1180*b35ce0c4SPankaj Gupta 	{0x04140000,
1181*b35ce0c4SPankaj Gupta 	 "PMU3: Entering Boot Freq Mode.\n"
1182*b35ce0c4SPankaj Gupta 	},
1183*b35ce0c4SPankaj Gupta 	{0x04150001,
1184*b35ce0c4SPankaj Gupta 	 "PMU: Error: Boot clock divider setting of %d is too small\n"
1185*b35ce0c4SPankaj Gupta 	},
1186*b35ce0c4SPankaj Gupta 	{0x04160000,
1187*b35ce0c4SPankaj Gupta 	 "PMU3: Exiting Boot Freq Mode.\n"
1188*b35ce0c4SPankaj Gupta 	},
1189*b35ce0c4SPankaj Gupta 	{0x04170002,
1190*b35ce0c4SPankaj Gupta 	 "PMU3: Writing MR%d OP=%x\n"
1191*b35ce0c4SPankaj Gupta 	},
1192*b35ce0c4SPankaj Gupta 	{0x04180000,
1193*b35ce0c4SPankaj Gupta 	 "PMU: Error: Delay too large in slomo\n"
1194*b35ce0c4SPankaj Gupta 	},
1195*b35ce0c4SPankaj Gupta 	{0x04190001,
1196*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
1197*b35ce0c4SPankaj Gupta 	},
1198*b35ce0c4SPankaj Gupta 	{0x041a0000,
1199*b35ce0c4SPankaj Gupta 	 "PMU3: Enable Channel A\n"
1200*b35ce0c4SPankaj Gupta 	},
1201*b35ce0c4SPankaj Gupta 	{0x041b0000,
1202*b35ce0c4SPankaj Gupta 	 "PMU3: Enable Channel B\n"
1203*b35ce0c4SPankaj Gupta 	},
1204*b35ce0c4SPankaj Gupta 	{0x041c0000,
1205*b35ce0c4SPankaj Gupta 	 "PMU3: Enable All Channels\n"
1206*b35ce0c4SPankaj Gupta 	},
1207*b35ce0c4SPankaj Gupta 	{0x041d0002,
1208*b35ce0c4SPankaj Gupta 	 "PMU2: Use PDA mode to set MR%d with value 0x%02x\n"
1209*b35ce0c4SPankaj Gupta 	},
1210*b35ce0c4SPankaj Gupta 	{0x041e0001,
1211*b35ce0c4SPankaj Gupta 	 "PMU3: Written Vref with PDA to CS=0x%02x\n"
1212*b35ce0c4SPankaj Gupta 	},
1213*b35ce0c4SPankaj Gupta 	{0x041f0000,
1214*b35ce0c4SPankaj Gupta 	 "PMU1: start_cal: DEBUG: setting CalRun to 1\n"
1215*b35ce0c4SPankaj Gupta 	},
1216*b35ce0c4SPankaj Gupta 	{0x04200000,
1217*b35ce0c4SPankaj Gupta 	 "PMU1: start_cal: DEBUG: setting CalRun to 0\n"
1218*b35ce0c4SPankaj Gupta 	},
1219*b35ce0c4SPankaj Gupta 	{0x04210001,
1220*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: pstate = %d\n"
1221*b35ce0c4SPankaj Gupta 	},
1222*b35ce0c4SPankaj Gupta 	{0x04220001,
1223*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: dfifreqxlat_pstate = %d\n"
1224*b35ce0c4SPankaj Gupta 	},
1225*b35ce0c4SPankaj Gupta 	{0x04230001,
1226*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: pllbypass = %d\n"
1227*b35ce0c4SPankaj Gupta 	},
1228*b35ce0c4SPankaj Gupta 	{0x04240001,
1229*b35ce0c4SPankaj Gupta 	 "PMU3: SaveLcdlSeed: Saving seed %d\n"
1230*b35ce0c4SPankaj Gupta 	},
1231*b35ce0c4SPankaj Gupta 	{0x04250000,
1232*b35ce0c4SPankaj Gupta 	 "PMU1: in phy_defaults()\n"
1233*b35ce0c4SPankaj Gupta 	},
1234*b35ce0c4SPankaj Gupta 	{0x04260003,
1235*b35ce0c4SPankaj Gupta 	 "PMU3: ACXConf:%d MaxNumDbytes:%d NumDfi:%d\n"
1236*b35ce0c4SPankaj Gupta 	},
1237*b35ce0c4SPankaj Gupta 	{0x04270005,
1238*b35ce0c4SPankaj Gupta 	 "PMU1: setAltAcsmCLCWL setting cl=%d cwl=%d\n"
1239*b35ce0c4SPankaj Gupta 	},
1240*b35ce0c4SPankaj Gupta };
1241*b35ce0c4SPankaj Gupta 
1242*b35ce0c4SPankaj Gupta const static struct phy_msg messages_2d[] = {
1243*b35ce0c4SPankaj Gupta 	{0x00000001,
1244*b35ce0c4SPankaj Gupta 	 "PMU0: Converting %d into an MR\n"
1245*b35ce0c4SPankaj Gupta 	},
1246*b35ce0c4SPankaj Gupta 	{0x00010003,
1247*b35ce0c4SPankaj Gupta 	 "PMU DEBUG: vref_idx %d -= %d, range_idx = %d\n"
1248*b35ce0c4SPankaj Gupta 	},
1249*b35ce0c4SPankaj Gupta 	{0x00020002,
1250*b35ce0c4SPankaj Gupta 	 "PMU0: vrefIdx. Passing range %d, remaining vrefidx = %d\n"
1251*b35ce0c4SPankaj Gupta 	},
1252*b35ce0c4SPankaj Gupta 	{0x00030002,
1253*b35ce0c4SPankaj Gupta 	 "PMU0: VrefIdx %d -> MR[6:0] 0x%02x\n"
1254*b35ce0c4SPankaj Gupta 	},
1255*b35ce0c4SPankaj Gupta 	{0x00040001,
1256*b35ce0c4SPankaj Gupta 	 "PMU0: Converting MR 0x%04x to vrefIdx\n"
1257*b35ce0c4SPankaj Gupta 	},
1258*b35ce0c4SPankaj Gupta 	{0x00050002,
1259*b35ce0c4SPankaj Gupta 	 "PMU0: DAC %d Range %d\n"
1260*b35ce0c4SPankaj Gupta 	},
1261*b35ce0c4SPankaj Gupta 	{0x00060003,
1262*b35ce0c4SPankaj Gupta 	 "PMU0: Range %d, Range_idx %d, vref_idx offset %d\n"
1263*b35ce0c4SPankaj Gupta 	},
1264*b35ce0c4SPankaj Gupta 	{0x00070002,
1265*b35ce0c4SPankaj Gupta 	 "PMU0: MR 0x%04x -> VrefIdx %d\n"
1266*b35ce0c4SPankaj Gupta 	},
1267*b35ce0c4SPankaj Gupta 	{0x00080001,
1268*b35ce0c4SPankaj Gupta 	 "PMU: Error: Illegal timing group number ,%d, in getPtrVrefDq\n"
1269*b35ce0c4SPankaj Gupta 	},
1270*b35ce0c4SPankaj Gupta 	{0x00090003,
1271*b35ce0c4SPankaj Gupta 	 "PMU1: VrefDqR%dNib%d = %d\n"
1272*b35ce0c4SPankaj Gupta 	},
1273*b35ce0c4SPankaj Gupta 	{0x000a0003,
1274*b35ce0c4SPankaj Gupta 	 "PMU0: VrefDqR%dNib%d = %d\n"
1275*b35ce0c4SPankaj Gupta 	},
1276*b35ce0c4SPankaj Gupta 	{0x000b0000,
1277*b35ce0c4SPankaj Gupta 	 "PMU0: ----------------MARGINS-------\n"
1278*b35ce0c4SPankaj Gupta 	},
1279*b35ce0c4SPankaj Gupta 	{0x000c0002,
1280*b35ce0c4SPankaj Gupta 	 "PMU0: R%d_RxClkDly_Margin = %d\n"
1281*b35ce0c4SPankaj Gupta 	},
1282*b35ce0c4SPankaj Gupta 	{0x000d0002,
1283*b35ce0c4SPankaj Gupta 	 "PMU0: R%d_VrefDac_Margin = %d\n"
1284*b35ce0c4SPankaj Gupta 	},
1285*b35ce0c4SPankaj Gupta 	{0x000e0002,
1286*b35ce0c4SPankaj Gupta 	 "PMU0: R%d_TxDqDly_Margin = %d\n"
1287*b35ce0c4SPankaj Gupta 	},
1288*b35ce0c4SPankaj Gupta 	{0x000f0002,
1289*b35ce0c4SPankaj Gupta 	 "PMU0: R%d_DeviceVref_Margin = %d\n"
1290*b35ce0c4SPankaj Gupta 	},
1291*b35ce0c4SPankaj Gupta 	{0x00100000,
1292*b35ce0c4SPankaj Gupta 	 "PMU0: -----------------------\n"
1293*b35ce0c4SPankaj Gupta 	},
1294*b35ce0c4SPankaj Gupta 	{0x00110003,
1295*b35ce0c4SPankaj Gupta 	 "PMU0: eye %d's for all TG's is [%d ... %d]\n"
1296*b35ce0c4SPankaj Gupta 	},
1297*b35ce0c4SPankaj Gupta 	{0x00120000,
1298*b35ce0c4SPankaj Gupta 	 "PMU0: ------- settingWeight -----\n"
1299*b35ce0c4SPankaj Gupta 	},
1300*b35ce0c4SPankaj Gupta 	{0x00130002,
1301*b35ce0c4SPankaj Gupta 	 "PMU0: Weight %d @ Setting %d\n"
1302*b35ce0c4SPankaj Gupta 	},
1303*b35ce0c4SPankaj Gupta 	{0x0014001f,
1304*b35ce0c4SPankaj Gupta 	 "PMU4: %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d >%3d< %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d %3d\n"
1305*b35ce0c4SPankaj Gupta 	},
1306*b35ce0c4SPankaj Gupta 	{0x00150002,
1307*b35ce0c4SPankaj Gupta 	 "PMU3: Voltage Range = [%d, %d]\n"
1308*b35ce0c4SPankaj Gupta 	},
1309*b35ce0c4SPankaj Gupta 	{0x00160004,
1310*b35ce0c4SPankaj Gupta 	 "PMU4: -- DB%d L%d -- centers: delay = %d, voltage = %d\n"
1311*b35ce0c4SPankaj Gupta 	},
1312*b35ce0c4SPankaj Gupta 	{0x00170001,
1313*b35ce0c4SPankaj Gupta 	 "PMU5: <<KEY>> 0 TxDqDlyTg%d <<KEY>> coarse(6:6) fine(5:0)\n"
1314*b35ce0c4SPankaj Gupta 	},
1315*b35ce0c4SPankaj Gupta 	{0x00180001,
1316*b35ce0c4SPankaj Gupta 	 "PMU5: <<KEY>> 0 messageBlock VrefDqR%d <<KEY>> MR6(6:0)\n"
1317*b35ce0c4SPankaj Gupta 	},
1318*b35ce0c4SPankaj Gupta 	{0x00190001,
1319*b35ce0c4SPankaj Gupta 	 "PMU5: <<KEY>> 0 RxClkDlyTg%d <<KEY>> fine(5:0)\n"
1320*b35ce0c4SPankaj Gupta 	},
1321*b35ce0c4SPankaj Gupta 	{0x001a0003,
1322*b35ce0c4SPankaj Gupta 	 "PMU0: tgToCsn: tg %d + 0x%04x -> csn %d\n"
1323*b35ce0c4SPankaj Gupta 	},
1324*b35ce0c4SPankaj Gupta 	{0x001b0002,
1325*b35ce0c4SPankaj Gupta 	 "PMU: Error: LP4 rank %d cannot be mapped on tg %d\n"
1326*b35ce0c4SPankaj Gupta 	},
1327*b35ce0c4SPankaj Gupta 	{0x001c0002,
1328*b35ce0c4SPankaj Gupta 	 "PMU3: Sending vref %d,  Mr = 0X%05x, to all devices\n"
1329*b35ce0c4SPankaj Gupta 	},
1330*b35ce0c4SPankaj Gupta 	{0x001d0004,
1331*b35ce0c4SPankaj Gupta 	 "PMU4: -------- %dD Write Scanning TG %d (CS 0x%x) Lanes 0x%03x --------\n"
1332*b35ce0c4SPankaj Gupta 	},
1333*b35ce0c4SPankaj Gupta 	{0x001e0002,
1334*b35ce0c4SPankaj Gupta 	 "PMU0: training lanes 0x%03x using lanes 0x%03x\n"
1335*b35ce0c4SPankaj Gupta 	},
1336*b35ce0c4SPankaj Gupta 	{0x001f0003,
1337*b35ce0c4SPankaj Gupta 	 "PMU4: ------- 2D-DFE Read Scanning TG %d (CS 0x%x) Lanes 0x%03x -------\n"
1338*b35ce0c4SPankaj Gupta 	},
1339*b35ce0c4SPankaj Gupta 	{0x00200004,
1340*b35ce0c4SPankaj Gupta 	 "PMU4: ------- %dD Read Scanning TG %d (CS 0x%x) Lanes 0x%03x -------\n"
1341*b35ce0c4SPankaj Gupta 	},
1342*b35ce0c4SPankaj Gupta 	{0x00210003,
1343*b35ce0c4SPankaj Gupta 	 "PMU4: TG%d MR1[13,6,5]=0x%x MR6[13,9,8]=0x%x\n"
1344*b35ce0c4SPankaj Gupta 	},
1345*b35ce0c4SPankaj Gupta 	{0x00220002,
1346*b35ce0c4SPankaj Gupta 	 "PMU0: training lanes 0x%03x using lanes 0x%03x\n"
1347*b35ce0c4SPankaj Gupta 	},
1348*b35ce0c4SPankaj Gupta 	{0x00230003,
1349*b35ce0c4SPankaj Gupta 	 "PMU4: ------- 2D-DFE Read Scanning TG %d (CS 0x%x) Lanes 0x%03x -------\n"
1350*b35ce0c4SPankaj Gupta 	},
1351*b35ce0c4SPankaj Gupta 	{0x00240004,
1352*b35ce0c4SPankaj Gupta 	 "PMU4: ------- %dD Read Scanning TG %d (CS 0x%x) Lanes 0x%03x -------\n"
1353*b35ce0c4SPankaj Gupta 	},
1354*b35ce0c4SPankaj Gupta 	{0x00250002,
1355*b35ce0c4SPankaj Gupta 	 "PMU0: training lanes 0x%03x using lanes 0x%03x\n"
1356*b35ce0c4SPankaj Gupta 	},
1357*b35ce0c4SPankaj Gupta 	{0x00260002,
1358*b35ce0c4SPankaj Gupta 	 "PMU3: Sending vref %d,  Mr = 0X%05x, to all devices\n"
1359*b35ce0c4SPankaj Gupta 	},
1360*b35ce0c4SPankaj Gupta 	{0x00270004,
1361*b35ce0c4SPankaj Gupta 	 "PMU4: -------- %dD Write Scanning TG %d (CS 0x%x) Lanes 0x%03x --------\n"
1362*b35ce0c4SPankaj Gupta 	},
1363*b35ce0c4SPankaj Gupta 	{0x00280001,
1364*b35ce0c4SPankaj Gupta 	 "PMU0: input %d\n"
1365*b35ce0c4SPankaj Gupta 	},
1366*b35ce0c4SPankaj Gupta 	{0x00290002,
1367*b35ce0c4SPankaj Gupta 	 "PMU4: Programmed Voltage Search Range [%d, %d]\n"
1368*b35ce0c4SPankaj Gupta 	},
1369*b35ce0c4SPankaj Gupta 	{0x002a0002,
1370*b35ce0c4SPankaj Gupta 	 "PMU3: Delay Stepsize = %d Fine, Voltage Stepsize = %d DAC\n"
1371*b35ce0c4SPankaj Gupta 	},
1372*b35ce0c4SPankaj Gupta 	{0x002b0002,
1373*b35ce0c4SPankaj Gupta 	 "PMU4: Delay Weight = %d, Voltage Weight = %d\n"
1374*b35ce0c4SPankaj Gupta 	},
1375*b35ce0c4SPankaj Gupta 	{0x002c0003,
1376*b35ce0c4SPankaj Gupta 	 "PMU0: raw 0x%x allFine %d incDec %d"
1377*b35ce0c4SPankaj Gupta 	},
1378*b35ce0c4SPankaj Gupta 	{0x002d0008,
1379*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d, voltage 0x%x (u_r %d) delay 0x%x (u_r %d) - lcdl %d mask 0x%x\n"
1380*b35ce0c4SPankaj Gupta 	},
1381*b35ce0c4SPankaj Gupta 	{0x002e0005,
1382*b35ce0c4SPankaj Gupta 	 "PMU0: DB%d L%d, Eye %d, Seed = (0x%x, 0x%x)\n"
1383*b35ce0c4SPankaj Gupta 	},
1384*b35ce0c4SPankaj Gupta 	{0x002f0002,
1385*b35ce0c4SPankaj Gupta 	 "PMU3: 2D Enables       : %d,                    1,                %d\n"
1386*b35ce0c4SPankaj Gupta 	},
1387*b35ce0c4SPankaj Gupta 	{0x00300006,
1388*b35ce0c4SPankaj Gupta 	 "PMU3: 2D Delay   Ranges: OOPL[0x%04x,0x%04x], IP[0x%04x,0x%04x], OOPR[0x%04x,0x%04x]\n"
1389*b35ce0c4SPankaj Gupta 	},
1390*b35ce0c4SPankaj Gupta 	{0x00310002,
1391*b35ce0c4SPankaj Gupta 	 "PMU3: 2D Voltage Search Range : [%d, %d]\n"
1392*b35ce0c4SPankaj Gupta 	},
1393*b35ce0c4SPankaj Gupta 	{0x00320002,
1394*b35ce0c4SPankaj Gupta 	 "PMU4: Found Voltage Search Range [%d, %d]\n"
1395*b35ce0c4SPankaj Gupta 	},
1396*b35ce0c4SPankaj Gupta 	{0x00330002,
1397*b35ce0c4SPankaj Gupta 	 "PMU0: User Weight = %d, Voltage Weight = %d\n"
1398*b35ce0c4SPankaj Gupta 	},
1399*b35ce0c4SPankaj Gupta 	{0x00340005,
1400*b35ce0c4SPankaj Gupta 	 "PMU0: D(%d,%d) V(%d,%d | %d)\n"
1401*b35ce0c4SPankaj Gupta 	},
1402*b35ce0c4SPankaj Gupta 	{0x00350002,
1403*b35ce0c4SPankaj Gupta 	 "PMU0: Norm Weight = %d, Voltage Weight = %d\n"
1404*b35ce0c4SPankaj Gupta 	},
1405*b35ce0c4SPankaj Gupta 	{0x00360002,
1406*b35ce0c4SPankaj Gupta 	 "PMU0: seed 0 = (%d,%d) (center)\n"
1407*b35ce0c4SPankaj Gupta 	},
1408*b35ce0c4SPankaj Gupta 	{0x00370003,
1409*b35ce0c4SPankaj Gupta 	 "PMU0: seed 1 = (%d,%d).min edge at idx %d\n"
1410*b35ce0c4SPankaj Gupta 	},
1411*b35ce0c4SPankaj Gupta 	{0x00380003,
1412*b35ce0c4SPankaj Gupta 	 "PMU0: seed 2 = (%d,%d) max edge at idx %d\n"
1413*b35ce0c4SPankaj Gupta 	},
1414*b35ce0c4SPankaj Gupta 	{0x00390003,
1415*b35ce0c4SPankaj Gupta 	 "PMU0: Search point %d = (%d,%d)\n"
1416*b35ce0c4SPankaj Gupta 	},
1417*b35ce0c4SPankaj Gupta 	{0x003a0005,
1418*b35ce0c4SPankaj Gupta 	 "PMU0: YMARGIN: ^ %d, - %d, v %d. rate %d = %d\n"
1419*b35ce0c4SPankaj Gupta 	},
1420*b35ce0c4SPankaj Gupta 	{0x003b0003,
1421*b35ce0c4SPankaj Gupta 	 "PMU0: XMARGIN: center %d, edge %d. = %d\n"
1422*b35ce0c4SPankaj Gupta 	},
1423*b35ce0c4SPankaj Gupta 	{0x003c0002,
1424*b35ce0c4SPankaj Gupta 	 "PMU0: ----------- weighting (%d,%d) ----------------\n"
1425*b35ce0c4SPankaj Gupta 	},
1426*b35ce0c4SPankaj Gupta 	{0x003d0003,
1427*b35ce0c4SPankaj Gupta 	 "PMU0: X margin - L %d R %d - Min %d\n"
1428*b35ce0c4SPankaj Gupta 	},
1429*b35ce0c4SPankaj Gupta 	{0x003e0003,
1430*b35ce0c4SPankaj Gupta 	 "PMU0: Y margin - L %d R %d - Min %d\n"
1431*b35ce0c4SPankaj Gupta 	},
1432*b35ce0c4SPankaj Gupta 	{0x003f0003,
1433*b35ce0c4SPankaj Gupta 	 "PMU0: center (%d,%d) weight = %d\n"
1434*b35ce0c4SPankaj Gupta 	},
1435*b35ce0c4SPankaj Gupta 	{0x00400003,
1436*b35ce0c4SPankaj Gupta 	 "PMU4: Eye argest blob area %d from %d to %d\n"
1437*b35ce0c4SPankaj Gupta 	},
1438*b35ce0c4SPankaj Gupta 	{0x00410002,
1439*b35ce0c4SPankaj Gupta 	 "PMU0: Compute centroid min_x %d max_x %d\n"
1440*b35ce0c4SPankaj Gupta 	},
1441*b35ce0c4SPankaj Gupta 	{0x00420003,
1442*b35ce0c4SPankaj Gupta 	 "PMU0: Compute centroid sumLnDlyWidth %d sumLnVrefWidth %d sumLnWidht %d\n"
1443*b35ce0c4SPankaj Gupta 	},
1444*b35ce0c4SPankaj Gupta 	{0x00430000,
1445*b35ce0c4SPankaj Gupta 	 "PMU: Error: No passing region found for 1 or more lanes. Set hdtCtrl=4 to see passing regions\n"
1446*b35ce0c4SPankaj Gupta 	},
1447*b35ce0c4SPankaj Gupta 	{0x00440003,
1448*b35ce0c4SPankaj Gupta 	 "PMU0: Centroid ( %d, %d ) found with sumLnWidht %d\n"
1449*b35ce0c4SPankaj Gupta 	},
1450*b35ce0c4SPankaj Gupta 	{0x00450003,
1451*b35ce0c4SPankaj Gupta 	 "PMU0: Optimal allFine Center ( %d + %d ,%d )\n"
1452*b35ce0c4SPankaj Gupta 	},
1453*b35ce0c4SPankaj Gupta 	{0x00460003,
1454*b35ce0c4SPankaj Gupta 	 "PMU3: point %d starting at (%d,%d)\n"
1455*b35ce0c4SPankaj Gupta 	},
1456*b35ce0c4SPankaj Gupta 	{0x00470002,
1457*b35ce0c4SPankaj Gupta 	 "PMU0: picking left (%d > %d)\n"
1458*b35ce0c4SPankaj Gupta 	},
1459*b35ce0c4SPankaj Gupta 	{0x00480002,
1460*b35ce0c4SPankaj Gupta 	 "PMU0: picking right (%d > %d)\n"
1461*b35ce0c4SPankaj Gupta 	},
1462*b35ce0c4SPankaj Gupta 	{0x00490002,
1463*b35ce0c4SPankaj Gupta 	 "PMU0: picking down (%d > %d)\n"
1464*b35ce0c4SPankaj Gupta 	},
1465*b35ce0c4SPankaj Gupta 	{0x004a0002,
1466*b35ce0c4SPankaj Gupta 	 "PMU0: picking up (%d > %d)\n"
1467*b35ce0c4SPankaj Gupta 	},
1468*b35ce0c4SPankaj Gupta 	{0x004b0009,
1469*b35ce0c4SPankaj Gupta 	 "PMU3: new center @ (%3d, %3d). Moved (%2i, %2i) -- L %d, R %d, C %d, U %d, D %d\n"
1470*b35ce0c4SPankaj Gupta 	},
1471*b35ce0c4SPankaj Gupta 	{0x004c0003,
1472*b35ce0c4SPankaj Gupta 	 "PMU3: cordNum %d imporved %d to %d\n"
1473*b35ce0c4SPankaj Gupta 	},
1474*b35ce0c4SPankaj Gupta 	{0x004d0000,
1475*b35ce0c4SPankaj Gupta 	 "PMU: Error: No passing region found for 1 or more lanes. Set hdtCtrl=4 to see passing regions\n"
1476*b35ce0c4SPankaj Gupta 	},
1477*b35ce0c4SPankaj Gupta 	{0x004e0004,
1478*b35ce0c4SPankaj Gupta 	 "PMU0: Optimal allFine Center ( %d + %d ,%d ), found with weight %d.\n"
1479*b35ce0c4SPankaj Gupta 	},
1480*b35ce0c4SPankaj Gupta 	{0x004f0003,
1481*b35ce0c4SPankaj Gupta 	 "PMU0: merging lanes=%d..%d, centerMerge_t %d\n"
1482*b35ce0c4SPankaj Gupta 	},
1483*b35ce0c4SPankaj Gupta 	{0x00500001,
1484*b35ce0c4SPankaj Gupta 	 "PMU0: laneVal %d is disable\n"
1485*b35ce0c4SPankaj Gupta 	},
1486*b35ce0c4SPankaj Gupta 	{0x00510002,
1487*b35ce0c4SPankaj Gupta 	 "PMU0: checking common center %d against current center %d\n"
1488*b35ce0c4SPankaj Gupta 	},
1489*b35ce0c4SPankaj Gupta 	{0x00520001,
1490*b35ce0c4SPankaj Gupta 	 "PMU: Error: getCompoundEye Called on lane%d eye with non-compatible centers\n"
1491*b35ce0c4SPankaj Gupta 	},
1492*b35ce0c4SPankaj Gupta 	{0x00530001,
1493*b35ce0c4SPankaj Gupta 	 "PMU0: laneItr %d is disable\n"
1494*b35ce0c4SPankaj Gupta 	},
1495*b35ce0c4SPankaj Gupta 	{0x00540005,
1496*b35ce0c4SPankaj Gupta 	 "PMU0: lane %d, data_idx %d, offset_idx %d, = [%d..%d]\n"
1497*b35ce0c4SPankaj Gupta 	},
1498*b35ce0c4SPankaj Gupta 	{0x00550003,
1499*b35ce0c4SPankaj Gupta 	 "PMU0: lane %d, data_idx %d, offset_idx %d, offset_idx out of range!\n"
1500*b35ce0c4SPankaj Gupta 	},
1501*b35ce0c4SPankaj Gupta 	{0x00560003,
1502*b35ce0c4SPankaj Gupta 	 "PMU0: mergeData[%d] = max_v_low %d, min_v_high %d\n"
1503*b35ce0c4SPankaj Gupta 	},
1504*b35ce0c4SPankaj Gupta 	{0x00570005,
1505*b35ce0c4SPankaj Gupta 	 "PMU1: writing merged center (%d,%d) back to dataBlock[%d]. doDelay %d, doVoltage %d\n"
1506*b35ce0c4SPankaj Gupta 	},
1507*b35ce0c4SPankaj Gupta 	{0x00580005,
1508*b35ce0c4SPankaj Gupta 	 "PMU0: applying relative (%i,%i) back to dataBlock[%d]. doDelay %d, doVoltage %d\n"
1509*b35ce0c4SPankaj Gupta 	},
1510*b35ce0c4SPankaj Gupta 	{0x00590002,
1511*b35ce0c4SPankaj Gupta 	 "PMU0: drvstren %x is idx %d in the table\n"
1512*b35ce0c4SPankaj Gupta 	},
1513*b35ce0c4SPankaj Gupta 	{0x005a0000,
1514*b35ce0c4SPankaj Gupta 	 "PMU4: truncating FFE drive strength search range. Out of drive strengths to check.\n"
1515*b35ce0c4SPankaj Gupta 	},
1516*b35ce0c4SPankaj Gupta 	{0x005b0002,
1517*b35ce0c4SPankaj Gupta 	 "PMU5: Weak 1 changed to pull-up %5d ohms, pull-down %5d ohms\n"
1518*b35ce0c4SPankaj Gupta 	},
1519*b35ce0c4SPankaj Gupta 	{0x005c0002,
1520*b35ce0c4SPankaj Gupta 	 "PMU5: Weak 0 changed to pull-up %5d ohms, pull-down %5d ohms\n"
1521*b35ce0c4SPankaj Gupta 	},
1522*b35ce0c4SPankaj Gupta 	{0x005d0003,
1523*b35ce0c4SPankaj Gupta 	 "PMU0: dlyMargin L %02d R %02d, min %02d\n"
1524*b35ce0c4SPankaj Gupta 	},
1525*b35ce0c4SPankaj Gupta 	{0x005e0003,
1526*b35ce0c4SPankaj Gupta 	 "PMU0: vrefMargin T %02d B %02d, min %02d\n"
1527*b35ce0c4SPankaj Gupta 	},
1528*b35ce0c4SPankaj Gupta 	{0x005f0002,
1529*b35ce0c4SPankaj Gupta 	 "PMU3: new minimum VrefMargin (%d < %d) recorded\n"
1530*b35ce0c4SPankaj Gupta 	},
1531*b35ce0c4SPankaj Gupta 	{0x00600002,
1532*b35ce0c4SPankaj Gupta 	 "PMU3: new minimum DlyMargin (%d < %d) recorded\n"
1533*b35ce0c4SPankaj Gupta 	},
1534*b35ce0c4SPankaj Gupta 	{0x00610000,
1535*b35ce0c4SPankaj Gupta 	 "PMU0: RX finding the per-nibble, per-tg rxClkDly values\n"
1536*b35ce0c4SPankaj Gupta 	},
1537*b35ce0c4SPankaj Gupta 	{0x00620003,
1538*b35ce0c4SPankaj Gupta 	 "PMU0: Merging collected eyes [%d..%d) and analyzing for nibble %d's optimal rxClkDly\n"
1539*b35ce0c4SPankaj Gupta 	},
1540*b35ce0c4SPankaj Gupta 	{0x00630002,
1541*b35ce0c4SPankaj Gupta 	 "PMU0: -- centers: delay = %d, voltage = %d\n"
1542*b35ce0c4SPankaj Gupta 	},
1543*b35ce0c4SPankaj Gupta 	{0x00640003,
1544*b35ce0c4SPankaj Gupta 	 "PMU0: dumping optimized eye -- centers: delay = %d (%d), voltage = %d\n"
1545*b35ce0c4SPankaj Gupta 	},
1546*b35ce0c4SPankaj Gupta 	{0x00650000,
1547*b35ce0c4SPankaj Gupta 	 "PMU0: TX optimizing txDqDelays\n"
1548*b35ce0c4SPankaj Gupta 	},
1549*b35ce0c4SPankaj Gupta 	{0x00660001,
1550*b35ce0c4SPankaj Gupta 	 "PMU3: Analyzing collected eye %d for a lane's optimal TxDqDly\n"
1551*b35ce0c4SPankaj Gupta 	},
1552*b35ce0c4SPankaj Gupta 	{0x00670001,
1553*b35ce0c4SPankaj Gupta 	 "PMU0: eye-lane %d is disable\n"
1554*b35ce0c4SPankaj Gupta 	},
1555*b35ce0c4SPankaj Gupta 	{0x00680000,
1556*b35ce0c4SPankaj Gupta 	 "PMU0: TX optimizing device voltages\n"
1557*b35ce0c4SPankaj Gupta 	},
1558*b35ce0c4SPankaj Gupta 	{0x00690002,
1559*b35ce0c4SPankaj Gupta 	 "PMU0: Merging collected eyes [%d..%d) and analyzing for optimal device txVref\n"
1560*b35ce0c4SPankaj Gupta 	},
1561*b35ce0c4SPankaj Gupta 	{0x006a0002,
1562*b35ce0c4SPankaj Gupta 	 "PMU0: -- centers: delay = %d, voltage = %d\n"
1563*b35ce0c4SPankaj Gupta 	},
1564*b35ce0c4SPankaj Gupta 	{0x006b0003,
1565*b35ce0c4SPankaj Gupta 	 "PMU0: dumping optimized eye -- centers: delay = %d (%d), voltage = %d\n"
1566*b35ce0c4SPankaj Gupta 	},
1567*b35ce0c4SPankaj Gupta 	{0x006c0000,
1568*b35ce0c4SPankaj Gupta 	 "PMU4: VrefDac (compound all TG) Bottom Top -> Center\n"
1569*b35ce0c4SPankaj Gupta 	},
1570*b35ce0c4SPankaj Gupta 	{0x006d0005,
1571*b35ce0c4SPankaj Gupta 	 "PMU4: DB%d L%d   %3d   %3d  ->  %3d (DISCONNECTED)\n"
1572*b35ce0c4SPankaj Gupta 	},
1573*b35ce0c4SPankaj Gupta 	{0x006e0005,
1574*b35ce0c4SPankaj Gupta 	 "PMU4: DB%d L%d   %3d   %3d  ->  %3d\n"
1575*b35ce0c4SPankaj Gupta 	},
1576*b35ce0c4SPankaj Gupta 	{0x006f0005,
1577*b35ce0c4SPankaj Gupta 	 "PMU0: writing rxClkDelay for tg%d db%1d nib%1d to 0x%02x from eye[%02d] (DISCONNECTED)\n"
1578*b35ce0c4SPankaj Gupta 	},
1579*b35ce0c4SPankaj Gupta 	{0x00700003,
1580*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d's optimal rxClkDly of 0x%x is out of bounds\n"
1581*b35ce0c4SPankaj Gupta 	},
1582*b35ce0c4SPankaj Gupta 	{0x00710005,
1583*b35ce0c4SPankaj Gupta 	 "PMU0: writing rxClkDelay for tg%d db%1d nib%1d to 0x%02x from eye[%02d]\n"
1584*b35ce0c4SPankaj Gupta 	},
1585*b35ce0c4SPankaj Gupta 	{0x00720005,
1586*b35ce0c4SPankaj Gupta 	 "PMU0: tx voltage for tg%2d nib%2d to %3d (%d) from eye[%02d]\n"
1587*b35ce0c4SPankaj Gupta 	},
1588*b35ce0c4SPankaj Gupta 	{0x00730001,
1589*b35ce0c4SPankaj Gupta 	 "PMU0: vref Sum = %d\n"
1590*b35ce0c4SPankaj Gupta 	},
1591*b35ce0c4SPankaj Gupta 	{0x00740004,
1592*b35ce0c4SPankaj Gupta 	 "PMU0: tx voltage total is %d/%d -> %d -> %d\n"
1593*b35ce0c4SPankaj Gupta 	},
1594*b35ce0c4SPankaj Gupta 	{0x00750007,
1595*b35ce0c4SPankaj Gupta 	 "PMU0: writing txDqDelay for tg%1d db%1d ln%1d to  0x%02x (%d coarse, %d fine) from eye[%02d] (DISCONNECTED)\n"
1596*b35ce0c4SPankaj Gupta 	},
1597*b35ce0c4SPankaj Gupta 	{0x00760003,
1598*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d's optimal txDqDly of 0x%x is out of bounds\n"
1599*b35ce0c4SPankaj Gupta 	},
1600*b35ce0c4SPankaj Gupta 	{0x00770007,
1601*b35ce0c4SPankaj Gupta 	 "PMU0: writing txDqDelay for tg%1d db%1d l%1d to  0x%02x (%d coarse, %d fine) from eye[%02d]\n"
1602*b35ce0c4SPankaj Gupta 	},
1603*b35ce0c4SPankaj Gupta 	{0x00780002,
1604*b35ce0c4SPankaj Gupta 	 "PMU0: %d (0=tx, 1=rx) TgMask for this simulation: %x\n"
1605*b35ce0c4SPankaj Gupta 	},
1606*b35ce0c4SPankaj Gupta 	{0x00790001,
1607*b35ce0c4SPankaj Gupta 	 "PMU0: eye-byte %d is disable\n"
1608*b35ce0c4SPankaj Gupta 	},
1609*b35ce0c4SPankaj Gupta 	{0x007a0001,
1610*b35ce0c4SPankaj Gupta 	 "PMU0: eye-lane %d is disable\n"
1611*b35ce0c4SPankaj Gupta 	},
1612*b35ce0c4SPankaj Gupta 	{0x007b0003,
1613*b35ce0c4SPankaj Gupta 	 "PMU10: Start d4_2d_lrdimm_rx_dfe dimm %d nbTap %d biasStepMode %d\n"
1614*b35ce0c4SPankaj Gupta 	},
1615*b35ce0c4SPankaj Gupta 	{0x007c0001,
1616*b35ce0c4SPankaj Gupta 	 "PMU10: DB DFE feature not fully supported, F2BCEx value is 0x%02x\n"
1617*b35ce0c4SPankaj Gupta 	},
1618*b35ce0c4SPankaj Gupta 	{0x007d0001,
1619*b35ce0c4SPankaj Gupta 	 "PMU10: DB DFE feature fully supported, F2BCEx value is 0x%02x\n"
1620*b35ce0c4SPankaj Gupta 	},
1621*b35ce0c4SPankaj Gupta 	{0x007e0002,
1622*b35ce0c4SPankaj Gupta 	 "PMU8: Start d4_2d_lrdimm_rx_dfe for tap %d biasStepInc %d\n"
1623*b35ce0c4SPankaj Gupta 	},
1624*b35ce0c4SPankaj Gupta 	{0x007f0001,
1625*b35ce0c4SPankaj Gupta 	 "PMU7: Start d4_2d_lrdimm_rx_dfe tapCoff 0x%0x\n"
1626*b35ce0c4SPankaj Gupta 	},
1627*b35ce0c4SPankaj Gupta 	{0x00800003,
1628*b35ce0c4SPankaj Gupta 	 "PMU6: d4_2d_lrdimm_rx_dfe db %d lane %d area %d\n"
1629*b35ce0c4SPankaj Gupta 	},
1630*b35ce0c4SPankaj Gupta 	{0x00810004,
1631*b35ce0c4SPankaj Gupta 	 "PMU7: d4_2d_lrdimm_rx_dfe db %d lane %d max area %d best bias 0x%0x\n"
1632*b35ce0c4SPankaj Gupta 	},
1633*b35ce0c4SPankaj Gupta 	{0x00820001,
1634*b35ce0c4SPankaj Gupta 	 "PMU0: eye-lane %d is disable\n"
1635*b35ce0c4SPankaj Gupta 	},
1636*b35ce0c4SPankaj Gupta 	{0x00830003,
1637*b35ce0c4SPankaj Gupta 	 "PMU5: Setting 0x%x improved rank weight (%4d < %4d)\n"
1638*b35ce0c4SPankaj Gupta 	},
1639*b35ce0c4SPankaj Gupta 	{0x00840001,
1640*b35ce0c4SPankaj Gupta 	 "PMU4: Setting 0x%x still optimal\n"
1641*b35ce0c4SPankaj Gupta 	},
1642*b35ce0c4SPankaj Gupta 	{0x00850002,
1643*b35ce0c4SPankaj Gupta 	 "PMU5: ---- Training CS%d MR%d DRAM Equalization ----\n"
1644*b35ce0c4SPankaj Gupta 	},
1645*b35ce0c4SPankaj Gupta 	{0x00860001,
1646*b35ce0c4SPankaj Gupta 	 "PMU0: eye-lane %d is disable\n"
1647*b35ce0c4SPankaj Gupta 	},
1648*b35ce0c4SPankaj Gupta 	{0x00870003,
1649*b35ce0c4SPankaj Gupta 	 "PMU0: eye %d weight %d allTgWeight %d\n"
1650*b35ce0c4SPankaj Gupta 	},
1651*b35ce0c4SPankaj Gupta 	{0x00880002,
1652*b35ce0c4SPankaj Gupta 	 "PMU5: FFE figure of merit improved from %d to %d\n"
1653*b35ce0c4SPankaj Gupta 	},
1654*b35ce0c4SPankaj Gupta 	{0x00890002,
1655*b35ce0c4SPankaj Gupta 	 "PMU: Error: LP4 rank %d cannot be mapped on tg %d\n"
1656*b35ce0c4SPankaj Gupta 	},
1657*b35ce0c4SPankaj Gupta 	{0x008a0000,
1658*b35ce0c4SPankaj Gupta 	 "PMU4: Adjusting vrefDac0 for just 1->x transitions\n"
1659*b35ce0c4SPankaj Gupta 	},
1660*b35ce0c4SPankaj Gupta 	{0x008b0000,
1661*b35ce0c4SPankaj Gupta 	 "PMU4: Adjusting vrefDac1 for just 0->x transitions\n"
1662*b35ce0c4SPankaj Gupta 	},
1663*b35ce0c4SPankaj Gupta 	{0x008c0001,
1664*b35ce0c4SPankaj Gupta 	 "PMU5: Strong 1, pull-up %d ohms\n"
1665*b35ce0c4SPankaj Gupta 	},
1666*b35ce0c4SPankaj Gupta 	{0x008d0001,
1667*b35ce0c4SPankaj Gupta 	 "PMU5: Strong 0, pull-down %d ohms\n"
1668*b35ce0c4SPankaj Gupta 	},
1669*b35ce0c4SPankaj Gupta 	{0x008e0000,
1670*b35ce0c4SPankaj Gupta 	 "PMU4: Enabling weak drive strengths (FFE)\n"
1671*b35ce0c4SPankaj Gupta 	},
1672*b35ce0c4SPankaj Gupta 	{0x008f0000,
1673*b35ce0c4SPankaj Gupta 	 "PMU5: Changing all weak driver strengths\n"
1674*b35ce0c4SPankaj Gupta 	},
1675*b35ce0c4SPankaj Gupta 	{0x00900000,
1676*b35ce0c4SPankaj Gupta 	 "PMU5: Finalizing weak drive strengths\n"
1677*b35ce0c4SPankaj Gupta 	},
1678*b35ce0c4SPankaj Gupta 	{0x00910000,
1679*b35ce0c4SPankaj Gupta 	 "PMU4: retraining with optimal drive strength settings\n"
1680*b35ce0c4SPankaj Gupta 	},
1681*b35ce0c4SPankaj Gupta 	{0x00920002,
1682*b35ce0c4SPankaj Gupta 	 "PMU0: targeting CsX = %d and CsY = %d\n"
1683*b35ce0c4SPankaj Gupta 	},
1684*b35ce0c4SPankaj Gupta 	{0x00930001,
1685*b35ce0c4SPankaj Gupta 	 "PMU1:prbsGenCtl:%x\n"
1686*b35ce0c4SPankaj Gupta 	},
1687*b35ce0c4SPankaj Gupta 	{0x00940000,
1688*b35ce0c4SPankaj Gupta 	 "PMU1: loading 2D acsm sequence\n"
1689*b35ce0c4SPankaj Gupta 	},
1690*b35ce0c4SPankaj Gupta 	{0x00950000,
1691*b35ce0c4SPankaj Gupta 	 "PMU1: loading 1D acsm sequence\n"
1692*b35ce0c4SPankaj Gupta 	},
1693*b35ce0c4SPankaj Gupta 	{0x00960002,
1694*b35ce0c4SPankaj Gupta 	 "PMU3: %d memclocks @ %d to get half of 300ns\n"
1695*b35ce0c4SPankaj Gupta 	},
1696*b35ce0c4SPankaj Gupta 	{0x00970000,
1697*b35ce0c4SPankaj Gupta 	 "PMU: Error: User requested MPR read pattern for read DQS training in DDR3 Mode\n"
1698*b35ce0c4SPankaj Gupta 	},
1699*b35ce0c4SPankaj Gupta 	{0x00980000,
1700*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search for left eye edge\n"
1701*b35ce0c4SPankaj Gupta 	},
1702*b35ce0c4SPankaj Gupta 	{0x00990001,
1703*b35ce0c4SPankaj Gupta 	 "PMU1: In Phase Left Edge Search cs %d\n"
1704*b35ce0c4SPankaj Gupta 	},
1705*b35ce0c4SPankaj Gupta 	{0x009a0001,
1706*b35ce0c4SPankaj Gupta 	 "PMU1: Out of Phase Left Edge Search cs %d\n"
1707*b35ce0c4SPankaj Gupta 	},
1708*b35ce0c4SPankaj Gupta 	{0x009b0000,
1709*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search for right eye edge\n"
1710*b35ce0c4SPankaj Gupta 	},
1711*b35ce0c4SPankaj Gupta 	{0x009c0001,
1712*b35ce0c4SPankaj Gupta 	 "PMU1: In Phase Right Edge Search cs %d\n"
1713*b35ce0c4SPankaj Gupta 	},
1714*b35ce0c4SPankaj Gupta 	{0x009d0001,
1715*b35ce0c4SPankaj Gupta 	 "PMU1: Out of Phase Right Edge Search cs %d\n"
1716*b35ce0c4SPankaj Gupta 	},
1717*b35ce0c4SPankaj Gupta 	{0x009e0001,
1718*b35ce0c4SPankaj Gupta 	 "PMU1: mxRdLat training pstate %d\n"
1719*b35ce0c4SPankaj Gupta 	},
1720*b35ce0c4SPankaj Gupta 	{0x009f0001,
1721*b35ce0c4SPankaj Gupta 	 "PMU1: mxRdLat search for cs %d\n"
1722*b35ce0c4SPankaj Gupta 	},
1723*b35ce0c4SPankaj Gupta 	{0x00a00001,
1724*b35ce0c4SPankaj Gupta 	 "PMU0: MaxRdLat non consistent DtsmLoThldXingInd 0x%03x\n"
1725*b35ce0c4SPankaj Gupta 	},
1726*b35ce0c4SPankaj Gupta 	{0x00a10003,
1727*b35ce0c4SPankaj Gupta 	 "PMU4: CS %d Dbyte %d worked with DFIMRL = %d DFICLKs\n"
1728*b35ce0c4SPankaj Gupta 	},
1729*b35ce0c4SPankaj Gupta 	{0x00a20004,
1730*b35ce0c4SPankaj Gupta 	 "PMU3: MaxRdLat Read Lane err mask for csn %d, DFIMRL %2d DFIClks, dbyte %d = 0x%03x\n"
1731*b35ce0c4SPankaj Gupta 	},
1732*b35ce0c4SPankaj Gupta 	{0x00a30003,
1733*b35ce0c4SPankaj Gupta 	 "PMU3: MaxRdLat Read Lane err mask for csn %d DFIMRL %2d, All dbytes = 0x%03x\n"
1734*b35ce0c4SPankaj Gupta 	},
1735*b35ce0c4SPankaj Gupta 	{0x00a40001,
1736*b35ce0c4SPankaj Gupta 	 "PMU: Error: CS%d failed to find a DFIMRL setting that worked for all bytes during MaxRdLat training\n"
1737*b35ce0c4SPankaj Gupta 	},
1738*b35ce0c4SPankaj Gupta 	{0x00a50002,
1739*b35ce0c4SPankaj Gupta 	 "PMU3: Smallest passing DFIMRL for all dbytes in CS%d = %d DFIClks\n"
1740*b35ce0c4SPankaj Gupta 	},
1741*b35ce0c4SPankaj Gupta 	{0x00a60000,
1742*b35ce0c4SPankaj Gupta 	 "PMU: Error: No passing DFIMRL value found for any chip select during MaxRdLat training\n"
1743*b35ce0c4SPankaj Gupta 	},
1744*b35ce0c4SPankaj Gupta 	{0x00a70003,
1745*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly passing region is too small (width = %d)\n"
1746*b35ce0c4SPankaj Gupta 	},
1747*b35ce0c4SPankaj Gupta 	{0x00a80006,
1748*b35ce0c4SPankaj Gupta 	 "PMU10: Adjusting rxclkdly db %d nib %d from %d+%d=%d->%d\n"
1749*b35ce0c4SPankaj Gupta 	},
1750*b35ce0c4SPankaj Gupta 	{0x00a90000,
1751*b35ce0c4SPankaj Gupta 	 "PMU4: TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
1752*b35ce0c4SPankaj Gupta 	},
1753*b35ce0c4SPankaj Gupta 	{0x00aa0005,
1754*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
1755*b35ce0c4SPankaj Gupta 	},
1756*b35ce0c4SPankaj Gupta 	{0x00ab0002,
1757*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayLeft[%2d] = %3d (DISCONNECTED)\n"
1758*b35ce0c4SPankaj Gupta 	},
1759*b35ce0c4SPankaj Gupta 	{0x00ac0004,
1760*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayLeft[%2d] = %3d oopScaled = %3d selectOop %d\n"
1761*b35ce0c4SPankaj Gupta 	},
1762*b35ce0c4SPankaj Gupta 	{0x00ad0002,
1763*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayRight[%2d] = %3d (DISCONNECTED)\n"
1764*b35ce0c4SPankaj Gupta 	},
1765*b35ce0c4SPankaj Gupta 	{0x00ae0004,
1766*b35ce0c4SPankaj Gupta 	 "PMU2: TXDQ delayRight[%2d] = %3d oopScaled = %3d selectOop %d\n"
1767*b35ce0c4SPankaj Gupta 	},
1768*b35ce0c4SPankaj Gupta 	{0x00af0003,
1769*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly passing region is too small (width = %d)\n"
1770*b35ce0c4SPankaj Gupta 	},
1771*b35ce0c4SPankaj Gupta 	{0x00b00000,
1772*b35ce0c4SPankaj Gupta 	 "PMU4: TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
1773*b35ce0c4SPankaj Gupta 	},
1774*b35ce0c4SPankaj Gupta 	{0x00b10002,
1775*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: (DISCONNECTED)\n"
1776*b35ce0c4SPankaj Gupta 	},
1777*b35ce0c4SPankaj Gupta 	{0x00b20005,
1778*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
1779*b35ce0c4SPankaj Gupta 	},
1780*b35ce0c4SPankaj Gupta 	{0x00b30002,
1781*b35ce0c4SPankaj Gupta 	 "PMU3: Running 1D search csn %d for DM Right/NotLeft(%d) eye edge\n"
1782*b35ce0c4SPankaj Gupta 	},
1783*b35ce0c4SPankaj Gupta 	{0x00b40002,
1784*b35ce0c4SPankaj Gupta 	 "PMU3: WrDq DM byte%2d with Errcnt %d\n"
1785*b35ce0c4SPankaj Gupta 	},
1786*b35ce0c4SPankaj Gupta 	{0x00b50002,
1787*b35ce0c4SPankaj Gupta 	 "PMU3: WrDq DM byte%2d avgDly 0x%04x\n"
1788*b35ce0c4SPankaj Gupta 	},
1789*b35ce0c4SPankaj Gupta 	{0x00b60002,
1790*b35ce0c4SPankaj Gupta 	 "PMU1: WrDq DM byte%2d with Errcnt %d\n"
1791*b35ce0c4SPankaj Gupta 	},
1792*b35ce0c4SPankaj Gupta 	{0x00b70001,
1793*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d txDqDly DM training did not start inside the eye\n"
1794*b35ce0c4SPankaj Gupta 	},
1795*b35ce0c4SPankaj Gupta 	{0x00b80000,
1796*b35ce0c4SPankaj Gupta 	 "PMU4: DM TxDqDly Passing Regions (EyeLeft EyeRight -> EyeCenter) Units=1/32 UI\n"
1797*b35ce0c4SPankaj Gupta 	},
1798*b35ce0c4SPankaj Gupta 	{0x00b90002,
1799*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: (DISCONNECTED)\n"
1800*b35ce0c4SPankaj Gupta 	},
1801*b35ce0c4SPankaj Gupta 	{0x00ba0005,
1802*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d Lane %d: %3d %3d -> %3d\n"
1803*b35ce0c4SPankaj Gupta 	},
1804*b35ce0c4SPankaj Gupta 	{0x00bb0003,
1805*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d lane %d txDqDly DM passing region is too small (width = %d)\n"
1806*b35ce0c4SPankaj Gupta 	},
1807*b35ce0c4SPankaj Gupta 	{0x00bc0004,
1808*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for MRD/MWD search nib %2d delay = (%d, 0x%02x) = %d\n"
1809*b35ce0c4SPankaj Gupta 	},
1810*b35ce0c4SPankaj Gupta 	{0x00bd0000,
1811*b35ce0c4SPankaj Gupta 	 "PMU3: Precharge all open banks\n"
1812*b35ce0c4SPankaj Gupta 	},
1813*b35ce0c4SPankaj Gupta 	{0x00be0002,
1814*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d found mutliple working coarse delay setting for MRD/MWD\n"
1815*b35ce0c4SPankaj Gupta 	},
1816*b35ce0c4SPankaj Gupta 	{0x00bf0000,
1817*b35ce0c4SPankaj Gupta 	 "PMU4: MRD Passing Regions (coarseVal, fineLeft fineRight -> fineCenter)\n"
1818*b35ce0c4SPankaj Gupta 	},
1819*b35ce0c4SPankaj Gupta 	{0x00c00000,
1820*b35ce0c4SPankaj Gupta 	 "PMU4: MWD Passing Regions (coarseVal, fineLeft fineRight -> fineCenter)\n"
1821*b35ce0c4SPankaj Gupta 	},
1822*b35ce0c4SPankaj Gupta 	{0x00c10004,
1823*b35ce0c4SPankaj Gupta 	 "PMU10: Warning: DB %d nibble %d has multiple working coarse delays, %d and %d, choosing the smaller delay\n"
1824*b35ce0c4SPankaj Gupta 	},
1825*b35ce0c4SPankaj Gupta 	{0x00c20003,
1826*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d MRD/MWD passing region is too small (width = %d)\n"
1827*b35ce0c4SPankaj Gupta 	},
1828*b35ce0c4SPankaj Gupta 	{0x00c30006,
1829*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: %3d, %3d %3d -> %3d\n"
1830*b35ce0c4SPankaj Gupta 	},
1831*b35ce0c4SPankaj Gupta 	{0x00c40002,
1832*b35ce0c4SPankaj Gupta 	 "PMU1: Start MRD/nMWD %d for csn %d\n"
1833*b35ce0c4SPankaj Gupta 	},
1834*b35ce0c4SPankaj Gupta 	{0x00c50002,
1835*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayLeft[%2d] = %3d (DISCONNECTED)\n"
1836*b35ce0c4SPankaj Gupta 	},
1837*b35ce0c4SPankaj Gupta 	{0x00c60006,
1838*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayLeft[%2d] = %3d delayOop[%2d] = %3d OopScaled %4d, selectOop %d\n"
1839*b35ce0c4SPankaj Gupta 	},
1840*b35ce0c4SPankaj Gupta 	{0x00c70002,
1841*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayRight[%2d] = %3d (DISCONNECTED)\n"
1842*b35ce0c4SPankaj Gupta 	},
1843*b35ce0c4SPankaj Gupta 	{0x00c80006,
1844*b35ce0c4SPankaj Gupta 	 "PMU2: RXDQS delayRight[%2d] = %3d delayOop[%2d] = %4d OopScaled %4d, selectOop %d\n"
1845*b35ce0c4SPankaj Gupta 	},
1846*b35ce0c4SPankaj Gupta 	{0x00c90000,
1847*b35ce0c4SPankaj Gupta 	 "PMU4: RxClkDly Passing Regions (EyeLeft EyeRight -> EyeCenter)\n"
1848*b35ce0c4SPankaj Gupta 	},
1849*b35ce0c4SPankaj Gupta 	{0x00ca0002,
1850*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: (DISCONNECTED)\n"
1851*b35ce0c4SPankaj Gupta 	},
1852*b35ce0c4SPankaj Gupta 	{0x00cb0005,
1853*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d nibble %d: %3d %3d -> %3d\n"
1854*b35ce0c4SPankaj Gupta 	},
1855*b35ce0c4SPankaj Gupta 	{0x00cc0003,
1856*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d nibble %d rxClkDly passing region is too small (width = %d)\n"
1857*b35ce0c4SPankaj Gupta 	},
1858*b35ce0c4SPankaj Gupta 	{0x00cd0002,
1859*b35ce0c4SPankaj Gupta 	 "PMU0: goodbar = %d for RDWR_BLEN %d\n"
1860*b35ce0c4SPankaj Gupta 	},
1861*b35ce0c4SPankaj Gupta 	{0x00ce0001,
1862*b35ce0c4SPankaj Gupta 	 "PMU3: RxClkDly = %d\n"
1863*b35ce0c4SPankaj Gupta 	},
1864*b35ce0c4SPankaj Gupta 	{0x00cf0005,
1865*b35ce0c4SPankaj Gupta 	 "PMU0: db %d l %d absLane %d -> bottom %d top %d\n"
1866*b35ce0c4SPankaj Gupta 	},
1867*b35ce0c4SPankaj Gupta 	{0x00d00009,
1868*b35ce0c4SPankaj Gupta 	 "PMU3: BYTE %d - %3d %3d %3d %3d %3d %3d %3d %3d\n"
1869*b35ce0c4SPankaj Gupta 	},
1870*b35ce0c4SPankaj Gupta 	{0x00d10002,
1871*b35ce0c4SPankaj Gupta 	 "PMU: Error: dbyte %d lane %d's per-lane vrefDAC's had no passing region\n"
1872*b35ce0c4SPankaj Gupta 	},
1873*b35ce0c4SPankaj Gupta 	{0x00d20004,
1874*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d - %d %d\n"
1875*b35ce0c4SPankaj Gupta 	},
1876*b35ce0c4SPankaj Gupta 	{0x00d30002,
1877*b35ce0c4SPankaj Gupta 	 "PMU0: goodbar = %d for RDWR_BLEN %d\n"
1878*b35ce0c4SPankaj Gupta 	},
1879*b35ce0c4SPankaj Gupta 	{0x00d40004,
1880*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d saw %d issues at rxClkDly %d\n"
1881*b35ce0c4SPankaj Gupta 	},
1882*b35ce0c4SPankaj Gupta 	{0x00d50003,
1883*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d first saw a pass->fail edge at rxClkDly %d\n"
1884*b35ce0c4SPankaj Gupta 	},
1885*b35ce0c4SPankaj Gupta 	{0x00d60002,
1886*b35ce0c4SPankaj Gupta 	 "PMU3: lane %d PBD = %d\n"
1887*b35ce0c4SPankaj Gupta 	},
1888*b35ce0c4SPankaj Gupta 	{0x00d70003,
1889*b35ce0c4SPankaj Gupta 	 "PMU3: db%d l%d first saw a DBI pass->fail edge at rxClkDly %d\n"
1890*b35ce0c4SPankaj Gupta 	},
1891*b35ce0c4SPankaj Gupta 	{0x00d80003,
1892*b35ce0c4SPankaj Gupta 	 "PMU2: db%d l%d already passed rxPBD = %d\n"
1893*b35ce0c4SPankaj Gupta 	},
1894*b35ce0c4SPankaj Gupta 	{0x00d90003,
1895*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d, PBD = %d\n"
1896*b35ce0c4SPankaj Gupta 	},
1897*b35ce0c4SPankaj Gupta 	{0x00da0002,
1898*b35ce0c4SPankaj Gupta 	 "PMU: Error: dbyte %d lane %d failed read deskew\n"
1899*b35ce0c4SPankaj Gupta 	},
1900*b35ce0c4SPankaj Gupta 	{0x00db0003,
1901*b35ce0c4SPankaj Gupta 	 "PMU0: db%d l%d, inc PBD = %d\n"
1902*b35ce0c4SPankaj Gupta 	},
1903*b35ce0c4SPankaj Gupta 	{0x00dc0003,
1904*b35ce0c4SPankaj Gupta 	 "PMU1: Running lane deskew on pstate %d csn %d rdDBIEn %d\n"
1905*b35ce0c4SPankaj Gupta 	},
1906*b35ce0c4SPankaj Gupta 	{0x00dd0000,
1907*b35ce0c4SPankaj Gupta 	 "PMU: Error: Read deskew training has been requested, but csrMajorModeDbyte[2] is set\n"
1908*b35ce0c4SPankaj Gupta 	},
1909*b35ce0c4SPankaj Gupta 	{0x00de0002,
1910*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
1911*b35ce0c4SPankaj Gupta 	},
1912*b35ce0c4SPankaj Gupta 	{0x00df0002,
1913*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
1914*b35ce0c4SPankaj Gupta 	},
1915*b35ce0c4SPankaj Gupta 	{0x00e00001,
1916*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D3U Type\n"
1917*b35ce0c4SPankaj Gupta 	},
1918*b35ce0c4SPankaj Gupta 	{0x00e10001,
1919*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D3R Type\n"
1920*b35ce0c4SPankaj Gupta 	},
1921*b35ce0c4SPankaj Gupta 	{0x00e20001,
1922*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4U Type\n"
1923*b35ce0c4SPankaj Gupta 	},
1924*b35ce0c4SPankaj Gupta 	{0x00e30001,
1925*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4R Type\n"
1926*b35ce0c4SPankaj Gupta 	},
1927*b35ce0c4SPankaj Gupta 	{0x00e40001,
1928*b35ce0c4SPankaj Gupta 	 "PMU: Error: Wrong PMU image loaded. message Block DramType = 0x%02x, but image built for D4LR Type\n"
1929*b35ce0c4SPankaj Gupta 	},
1930*b35ce0c4SPankaj Gupta 	{0x00e50000,
1931*b35ce0c4SPankaj Gupta 	 "PMU: Error: Both 2t timing mode and ddr4 geardown mode specified in the messageblock's PhyCfg and MR3 fields. Only one can be enabled\n"
1932*b35ce0c4SPankaj Gupta 	},
1933*b35ce0c4SPankaj Gupta 	{0x00e60003,
1934*b35ce0c4SPankaj Gupta 	 "PMU10: PHY TOTALS - NUM_DBYTES %d NUM_NIBBLES %d NUM_ANIBS %d\n"
1935*b35ce0c4SPankaj Gupta 	},
1936*b35ce0c4SPankaj Gupta 	{0x00e70006,
1937*b35ce0c4SPankaj Gupta 	 "PMU10: CSA=0x%02x, CSB=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, MMISC=%d DRAMFreq=%dMT DramType=LPDDR3\n"
1938*b35ce0c4SPankaj Gupta 	},
1939*b35ce0c4SPankaj Gupta 	{0x00e80006,
1940*b35ce0c4SPankaj Gupta 	 "PMU10: CSA=0x%02x, CSB=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, MMISC=%d DRAMFreq=%dMT DramType=LPDDR4\n"
1941*b35ce0c4SPankaj Gupta 	},
1942*b35ce0c4SPankaj Gupta 	{0x00e90008,
1943*b35ce0c4SPankaj Gupta 	 "PMU10: CS=0x%02x, TSTAGES=0x%04x, HDTOUT=%d, 2T=%d, MMISC=%d AddrMirror=%d DRAMFreq=%dMT DramType=%d\n"
1944*b35ce0c4SPankaj Gupta 	},
1945*b35ce0c4SPankaj Gupta 	{0x00ea0004,
1946*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MR0=0x%04x MR1=0x%04x MR2=0x%04x\n"
1947*b35ce0c4SPankaj Gupta 	},
1948*b35ce0c4SPankaj Gupta 	{0x00eb0008,
1949*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR0=0x%04x MR1=0x%04x MR2=0x%04x MR3=0x%04x MR4=0x%04x MR5=0x%04x MR6=0x%04x\n"
1950*b35ce0c4SPankaj Gupta 	},
1951*b35ce0c4SPankaj Gupta 	{0x00ec0005,
1952*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR1_A0=0x%04x MR2_A0=0x%04x MR3_A0=0x%04x MR11_A0=0x%04x\n"
1953*b35ce0c4SPankaj Gupta 	},
1954*b35ce0c4SPankaj Gupta 	{0x00ed0000,
1955*b35ce0c4SPankaj Gupta 	 "PMU10: UseBroadcastMR set. All ranks and channels use MRXX_A0 for MR settings.\n"
1956*b35ce0c4SPankaj Gupta 	},
1957*b35ce0c4SPankaj Gupta 	{0x00ee0005,
1958*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_A0=0x%02x MR02_A0=0x%02x MR03_A0=0x%02x MR11_A0=0x%02x\n"
1959*b35ce0c4SPankaj Gupta 	},
1960*b35ce0c4SPankaj Gupta 	{0x00ef0005,
1961*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_A0=0x%02x MR13_A0=0x%02x MR14_A0=0x%02x MR22_A0=0x%02x\n"
1962*b35ce0c4SPankaj Gupta 	},
1963*b35ce0c4SPankaj Gupta 	{0x00f00005,
1964*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_A1=0x%02x MR02_A1=0x%02x MR03_A1=0x%02x MR11_A1=0x%02x\n"
1965*b35ce0c4SPankaj Gupta 	},
1966*b35ce0c4SPankaj Gupta 	{0x00f10005,
1967*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_A1=0x%02x MR13_A1=0x%02x MR14_A1=0x%02x MR22_A1=0x%02x\n"
1968*b35ce0c4SPankaj Gupta 	},
1969*b35ce0c4SPankaj Gupta 	{0x00f20005,
1970*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_B0=0x%02x MR02_B0=0x%02x MR03_B0=0x%02x MR11_B0=0x%02x\n"
1971*b35ce0c4SPankaj Gupta 	},
1972*b35ce0c4SPankaj Gupta 	{0x00f30005,
1973*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_B0=0x%02x MR13_B0=0x%02x MR14_B0=0x%02x MR22_B0=0x%02x\n"
1974*b35ce0c4SPankaj Gupta 	},
1975*b35ce0c4SPankaj Gupta 	{0x00f40005,
1976*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR01_B1=0x%02x MR02_B1=0x%02x MR03_B1=0x%02x MR11_B1=0x%02x\n"
1977*b35ce0c4SPankaj Gupta 	},
1978*b35ce0c4SPankaj Gupta 	{0x00f50005,
1979*b35ce0c4SPankaj Gupta 	 "PMU10: Pstate%d MRS MR12_B1=0x%02x MR13_B1=0x%02x MR14_B1=0x%02x MR22_B1=0x%02x\n"
1980*b35ce0c4SPankaj Gupta 	},
1981*b35ce0c4SPankaj Gupta 	{0x00f60002,
1982*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmOdtCtrl%02d 0x%02x\n"
1983*b35ce0c4SPankaj Gupta 	},
1984*b35ce0c4SPankaj Gupta 	{0x00f70002,
1985*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
1986*b35ce0c4SPankaj Gupta 	},
1987*b35ce0c4SPankaj Gupta 	{0x00f80002,
1988*b35ce0c4SPankaj Gupta 	 "PMU1: AcsmCsMapCtrl%02d 0x%04x\n"
1989*b35ce0c4SPankaj Gupta 	},
1990*b35ce0c4SPankaj Gupta 	{0x00f90000,
1991*b35ce0c4SPankaj Gupta 	 "PMU1: HwtCAMode set\n"
1992*b35ce0c4SPankaj Gupta 	},
1993*b35ce0c4SPankaj Gupta 	{0x00fa0001,
1994*b35ce0c4SPankaj Gupta 	 "PMU3: DDR4 infinite preamble enter/exit mode %d\n"
1995*b35ce0c4SPankaj Gupta 	},
1996*b35ce0c4SPankaj Gupta 	{0x00fb0002,
1997*b35ce0c4SPankaj Gupta 	 "PMU1: In rxenb_train() csn=%d pstate=%d\n"
1998*b35ce0c4SPankaj Gupta 	},
1999*b35ce0c4SPankaj Gupta 	{0x00fc0000,
2000*b35ce0c4SPankaj Gupta 	 "PMU3: Finding DQS falling edge\n"
2001*b35ce0c4SPankaj Gupta 	},
2002*b35ce0c4SPankaj Gupta 	{0x00fd0000,
2003*b35ce0c4SPankaj Gupta 	 "PMU3: Searching for DDR3/LPDDR3/LPDDR4 read preamble\n"
2004*b35ce0c4SPankaj Gupta 	},
2005*b35ce0c4SPankaj Gupta 	{0x00fe0009,
2006*b35ce0c4SPankaj Gupta 	 "PMU3: dtsm fails Even Nibbles : %2x %2x %2x %2x %2x %2x %2x %2x %2x\n"
2007*b35ce0c4SPankaj Gupta 	},
2008*b35ce0c4SPankaj Gupta 	{0x00ff0009,
2009*b35ce0c4SPankaj Gupta 	 "PMU3: dtsm fails Odd  Nibbles : %2x %2x %2x %2x %2x %2x %2x %2x %2x\n"
2010*b35ce0c4SPankaj Gupta 	},
2011*b35ce0c4SPankaj Gupta 	{0x01000002,
2012*b35ce0c4SPankaj Gupta 	 "PMU3: Preamble search pass=%d anyfail=%d\n"
2013*b35ce0c4SPankaj Gupta 	},
2014*b35ce0c4SPankaj Gupta 	{0x01010000,
2015*b35ce0c4SPankaj Gupta 	 "PMU: Error: RxEn training preamble not found\n"
2016*b35ce0c4SPankaj Gupta 	},
2017*b35ce0c4SPankaj Gupta 	{0x01020000,
2018*b35ce0c4SPankaj Gupta 	 "PMU3: Found DQS pre-amble\n"
2019*b35ce0c4SPankaj Gupta 	},
2020*b35ce0c4SPankaj Gupta 	{0x01030001,
2021*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d couldn't find the rising edge of DQS during RxEn Training\n"
2022*b35ce0c4SPankaj Gupta 	},
2023*b35ce0c4SPankaj Gupta 	{0x01040000,
2024*b35ce0c4SPankaj Gupta 	 "PMU3: RxEn aligning to first rising edge of burst\n"
2025*b35ce0c4SPankaj Gupta 	},
2026*b35ce0c4SPankaj Gupta 	{0x01050001,
2027*b35ce0c4SPankaj Gupta 	 "PMU3: Decreasing RxEn delay by %d fine step to allow full capture of reads\n"
2028*b35ce0c4SPankaj Gupta 	},
2029*b35ce0c4SPankaj Gupta 	{0x01060001,
2030*b35ce0c4SPankaj Gupta 	 "PMU3: MREP Delay = %d\n"
2031*b35ce0c4SPankaj Gupta 	},
2032*b35ce0c4SPankaj Gupta 	{0x01070003,
2033*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for MREP nib %2d delay = %2d is %d\n"
2034*b35ce0c4SPankaj Gupta 	},
2035*b35ce0c4SPankaj Gupta 	{0x01080002,
2036*b35ce0c4SPankaj Gupta 	 "PMU3: MREP nibble %d sampled a 1 at data buffer delay %d\n"
2037*b35ce0c4SPankaj Gupta 	},
2038*b35ce0c4SPankaj Gupta 	{0x01090002,
2039*b35ce0c4SPankaj Gupta 	 "PMU3: MREP nibble %d saw a 0 to 1 transition at data buffer delay %d\n"
2040*b35ce0c4SPankaj Gupta 	},
2041*b35ce0c4SPankaj Gupta 	{0x010a0000,
2042*b35ce0c4SPankaj Gupta 	 "PMU2:  MREP did not find a 0 to 1 transition for all nibbles. Failing nibbles assumed to have rising edge close to fine delay 63\n"
2043*b35ce0c4SPankaj Gupta 	},
2044*b35ce0c4SPankaj Gupta 	{0x010b0002,
2045*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge found in alias window, setting rxDly for nibble %d = %d\n"
2046*b35ce0c4SPankaj Gupta 	},
2047*b35ce0c4SPankaj Gupta 	{0x010c0002,
2048*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed MREP for nib %d with %d one\n"
2049*b35ce0c4SPankaj Gupta 	},
2050*b35ce0c4SPankaj Gupta 	{0x010d0003,
2051*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge not found in alias window with %d one, leaving rxDly for nibble %d = %d\n"
2052*b35ce0c4SPankaj Gupta 	},
2053*b35ce0c4SPankaj Gupta 	{0x010e0002,
2054*b35ce0c4SPankaj Gupta 	 "PMU3: Training DIMM %d CSn %d\n"
2055*b35ce0c4SPankaj Gupta 	},
2056*b35ce0c4SPankaj Gupta 	{0x010f0001,
2057*b35ce0c4SPankaj Gupta 	 "PMU3: exitCAtrain_lp3 cs 0x%x\n"
2058*b35ce0c4SPankaj Gupta 	},
2059*b35ce0c4SPankaj Gupta 	{0x01100001,
2060*b35ce0c4SPankaj Gupta 	 "PMU3: enterCAtrain_lp3 cs 0x%x\n"
2061*b35ce0c4SPankaj Gupta 	},
2062*b35ce0c4SPankaj Gupta 	{0x01110001,
2063*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_switchmsb_lp3 cs 0x%x\n"
2064*b35ce0c4SPankaj Gupta 	},
2065*b35ce0c4SPankaj Gupta 	{0x01120001,
2066*b35ce0c4SPankaj Gupta 	 "PMU3: CATrain_rdwr_lp3 looking for pattern %x\n"
2067*b35ce0c4SPankaj Gupta 	},
2068*b35ce0c4SPankaj Gupta 	{0x01130000,
2069*b35ce0c4SPankaj Gupta 	 "PMU3: exitCAtrain_lp4\n"
2070*b35ce0c4SPankaj Gupta 	},
2071*b35ce0c4SPankaj Gupta 	{0x01140001,
2072*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 1: cs 0x%x\n"
2073*b35ce0c4SPankaj Gupta 	},
2074*b35ce0c4SPankaj Gupta 	{0x01150001,
2075*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 3: Put dbyte %d in async mode\n"
2076*b35ce0c4SPankaj Gupta 	},
2077*b35ce0c4SPankaj Gupta 	{0x01160000,
2078*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 5: Send MR13 to turn on CA training\n"
2079*b35ce0c4SPankaj Gupta 	},
2080*b35ce0c4SPankaj Gupta 	{0x01170003,
2081*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG enterCAtrain_lp4 7: idx = %d vref = %x mr12 = %x\n"
2082*b35ce0c4SPankaj Gupta 	},
2083*b35ce0c4SPankaj Gupta 	{0x01180001,
2084*b35ce0c4SPankaj Gupta 	 "PMU3: CATrain_rdwr_lp4 looking for pattern %x\n"
2085*b35ce0c4SPankaj Gupta 	},
2086*b35ce0c4SPankaj Gupta 	{0x01190004,
2087*b35ce0c4SPankaj Gupta 	 "PMU3: Phase %d CAreadbackA db:%d %x xo:%x\n"
2088*b35ce0c4SPankaj Gupta 	},
2089*b35ce0c4SPankaj Gupta 	{0x011a0005,
2090*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG lp4SetCatrVref 1: cs=%d chan=%d mr12=%x vref=%d.%d%%\n"
2091*b35ce0c4SPankaj Gupta 	},
2092*b35ce0c4SPankaj Gupta 	{0x011b0003,
2093*b35ce0c4SPankaj Gupta 	 "PMU3: DEBUG lp4SetCatrVref 3: mr12 = %x send vref= %x to db=%d\n"
2094*b35ce0c4SPankaj Gupta 	},
2095*b35ce0c4SPankaj Gupta 	{0x011c0000,
2096*b35ce0c4SPankaj Gupta 	 "PMU10:Optimizing vref\n"
2097*b35ce0c4SPankaj Gupta 	},
2098*b35ce0c4SPankaj Gupta 	{0x011d0004,
2099*b35ce0c4SPankaj Gupta 	 "PMU4:mr12:%2x cs:%d chan %d r:%4x\n"
2100*b35ce0c4SPankaj Gupta 	},
2101*b35ce0c4SPankaj Gupta 	{0x011e0005,
2102*b35ce0c4SPankaj Gupta 	 "PMU3: i:%2d bstr:%2d bsto:%2d st:%d r:%d\n"
2103*b35ce0c4SPankaj Gupta 	},
2104*b35ce0c4SPankaj Gupta 	{0x011f0002,
2105*b35ce0c4SPankaj Gupta 	 "Failed to find sufficient CA Vref Passing Region for CS %d ch. %d\n"
2106*b35ce0c4SPankaj Gupta 	},
2107*b35ce0c4SPankaj Gupta 	{0x01200005,
2108*b35ce0c4SPankaj Gupta 	 "PMU3:Found %d.%d%% MR12:%x for cs:%d chan %d\n"
2109*b35ce0c4SPankaj Gupta 	},
2110*b35ce0c4SPankaj Gupta 	{0x01210002,
2111*b35ce0c4SPankaj Gupta 	 "PMU3:Calculated %d for AtxImpedence from acx %d.\n"
2112*b35ce0c4SPankaj Gupta 	},
2113*b35ce0c4SPankaj Gupta 	{0x01220000,
2114*b35ce0c4SPankaj Gupta 	 "PMU3:CA Odt impedence ==0.  Use default vref.\n"
2115*b35ce0c4SPankaj Gupta 	},
2116*b35ce0c4SPankaj Gupta 	{0x01230003,
2117*b35ce0c4SPankaj Gupta 	 "PMU3:Calculated %d.%d%% for Vref MR12=0x%x.\n"
2118*b35ce0c4SPankaj Gupta 	},
2119*b35ce0c4SPankaj Gupta 	{0x01240000,
2120*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_lp\n"
2121*b35ce0c4SPankaj Gupta 	},
2122*b35ce0c4SPankaj Gupta 	{0x01250000,
2123*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain Begins.\n"
2124*b35ce0c4SPankaj Gupta 	},
2125*b35ce0c4SPankaj Gupta 	{0x01260001,
2126*b35ce0c4SPankaj Gupta 	 "PMU3: CAtrain_lp testing dly %d\n"
2127*b35ce0c4SPankaj Gupta 	},
2128*b35ce0c4SPankaj Gupta 	{0x01270001,
2129*b35ce0c4SPankaj Gupta 	 "PMU5: CA bitmap dump for cs %x\n"
2130*b35ce0c4SPankaj Gupta 	},
2131*b35ce0c4SPankaj Gupta 	{0x01280001,
2132*b35ce0c4SPankaj Gupta 	 "PMU5: CAA%d "
2133*b35ce0c4SPankaj Gupta 	},
2134*b35ce0c4SPankaj Gupta 	{0x01290001, "%02x"
2135*b35ce0c4SPankaj Gupta 	},
2136*b35ce0c4SPankaj Gupta 	{0x012a0000, "\n"
2137*b35ce0c4SPankaj Gupta 	},
2138*b35ce0c4SPankaj Gupta 	{0x012b0001,
2139*b35ce0c4SPankaj Gupta 	 "PMU5: CAB%d "
2140*b35ce0c4SPankaj Gupta 	},
2141*b35ce0c4SPankaj Gupta 	{0x012c0001, "%02x"
2142*b35ce0c4SPankaj Gupta 	},
2143*b35ce0c4SPankaj Gupta 	{0x012d0000, "\n"
2144*b35ce0c4SPankaj Gupta 	},
2145*b35ce0c4SPankaj Gupta 	{0x012e0003,
2146*b35ce0c4SPankaj Gupta 	 "PMU3: anibi=%d, anibichan[anibi]=%d ,chan=%d\n"
2147*b35ce0c4SPankaj Gupta 	},
2148*b35ce0c4SPankaj Gupta 	{0x012f0001, "%02x"
2149*b35ce0c4SPankaj Gupta 	},
2150*b35ce0c4SPankaj Gupta 	{0x01300001, "\nPMU3:Raw CA setting :%x"
2151*b35ce0c4SPankaj Gupta 	},
2152*b35ce0c4SPankaj Gupta 	{0x01310002, "\nPMU3:ATxDly setting:%x margin:%d\n"
2153*b35ce0c4SPankaj Gupta 	},
2154*b35ce0c4SPankaj Gupta 	{0x01320002, "\nPMU3:InvClk ATxDly setting:%x margin:%d\n"
2155*b35ce0c4SPankaj Gupta 	},
2156*b35ce0c4SPankaj Gupta 	{0x01330000, "\nPMU3:No Range found!\n"
2157*b35ce0c4SPankaj Gupta 	},
2158*b35ce0c4SPankaj Gupta 	{0x01340003,
2159*b35ce0c4SPankaj Gupta 	 "PMU3: 2 anibi=%d, anibichan[anibi]=%d ,chan=%d"
2160*b35ce0c4SPankaj Gupta 	},
2161*b35ce0c4SPankaj Gupta 	{0x01350002, "\nPMU3: no neg clock => CA setting anib=%d, :%d\n"
2162*b35ce0c4SPankaj Gupta 	},
2163*b35ce0c4SPankaj Gupta 	{0x01360001,
2164*b35ce0c4SPankaj Gupta 	 "PMU3:Normal margin:%d\n"
2165*b35ce0c4SPankaj Gupta 	},
2166*b35ce0c4SPankaj Gupta 	{0x01370001,
2167*b35ce0c4SPankaj Gupta 	 "PMU3:Inverted margin:%d\n"
2168*b35ce0c4SPankaj Gupta 	},
2169*b35ce0c4SPankaj Gupta 	{0x01380000,
2170*b35ce0c4SPankaj Gupta 	 "PMU3:Using Inverted clock\n"
2171*b35ce0c4SPankaj Gupta 	},
2172*b35ce0c4SPankaj Gupta 	{0x01390000,
2173*b35ce0c4SPankaj Gupta 	 "PMU3:Using normal clk\n"
2174*b35ce0c4SPankaj Gupta 	},
2175*b35ce0c4SPankaj Gupta 	{0x013a0003,
2176*b35ce0c4SPankaj Gupta 	 "PMU3: 3 anibi=%d, anibichan[anibi]=%d ,chan=%d\n"
2177*b35ce0c4SPankaj Gupta 	},
2178*b35ce0c4SPankaj Gupta 	{0x013b0002,
2179*b35ce0c4SPankaj Gupta 	 "PMU3: Setting ATxDly for anib %x to %x\n"
2180*b35ce0c4SPankaj Gupta 	},
2181*b35ce0c4SPankaj Gupta 	{0x013c0000,
2182*b35ce0c4SPankaj Gupta 	 "PMU: Error: CA Training Failed.\n"
2183*b35ce0c4SPankaj Gupta 	},
2184*b35ce0c4SPankaj Gupta 	{0x013d0000,
2185*b35ce0c4SPankaj Gupta 	 "PMU1: Writing MRs\n"
2186*b35ce0c4SPankaj Gupta 	},
2187*b35ce0c4SPankaj Gupta 	{0x013e0000,
2188*b35ce0c4SPankaj Gupta 	 "PMU4:Using MR12 values from 1D CA VREF training.\n"
2189*b35ce0c4SPankaj Gupta 	},
2190*b35ce0c4SPankaj Gupta 	{0x013f0000,
2191*b35ce0c4SPankaj Gupta 	 "PMU3:Writing all MRs to fsp 1\n"
2192*b35ce0c4SPankaj Gupta 	},
2193*b35ce0c4SPankaj Gupta 	{0x01400000,
2194*b35ce0c4SPankaj Gupta 	 "PMU10:Lp4Quickboot mode.\n"
2195*b35ce0c4SPankaj Gupta 	},
2196*b35ce0c4SPankaj Gupta 	{0x01410000,
2197*b35ce0c4SPankaj Gupta 	 "PMU3: Writing MRs\n"
2198*b35ce0c4SPankaj Gupta 	},
2199*b35ce0c4SPankaj Gupta 	{0x01420001,
2200*b35ce0c4SPankaj Gupta 	 "PMU10: Setting boot clock divider to %d\n"
2201*b35ce0c4SPankaj Gupta 	},
2202*b35ce0c4SPankaj Gupta 	{0x01430000,
2203*b35ce0c4SPankaj Gupta 	 "PMU3: Resetting DRAM\n"
2204*b35ce0c4SPankaj Gupta 	},
2205*b35ce0c4SPankaj Gupta 	{0x01440000,
2206*b35ce0c4SPankaj Gupta 	 "PMU3: setup for RCD initalization\n"
2207*b35ce0c4SPankaj Gupta 	},
2208*b35ce0c4SPankaj Gupta 	{0x01450000,
2209*b35ce0c4SPankaj Gupta 	 "PMU3: pmu_exit_SR from dev_init()\n"
2210*b35ce0c4SPankaj Gupta 	},
2211*b35ce0c4SPankaj Gupta 	{0x01460000,
2212*b35ce0c4SPankaj Gupta 	 "PMU3: initializing RCD\n"
2213*b35ce0c4SPankaj Gupta 	},
2214*b35ce0c4SPankaj Gupta 	{0x01470000,
2215*b35ce0c4SPankaj Gupta 	 "PMU10: **** Executing 2D Image ****\n"
2216*b35ce0c4SPankaj Gupta 	},
2217*b35ce0c4SPankaj Gupta 	{0x01480001,
2218*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start DDR4 Training. PMU Firmware Revision 0x%04x ****\n"
2219*b35ce0c4SPankaj Gupta 	},
2220*b35ce0c4SPankaj Gupta 	{0x01490001,
2221*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start DDR3 Training. PMU Firmware Revision 0x%04x ****\n"
2222*b35ce0c4SPankaj Gupta 	},
2223*b35ce0c4SPankaj Gupta 	{0x014a0001,
2224*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start LPDDR3 Training. PMU Firmware Revision 0x%04x ****\n"
2225*b35ce0c4SPankaj Gupta 	},
2226*b35ce0c4SPankaj Gupta 	{0x014b0001,
2227*b35ce0c4SPankaj Gupta 	 "PMU10: **** Start LPDDR4 Training. PMU Firmware Revision 0x%04x ****\n"
2228*b35ce0c4SPankaj Gupta 	},
2229*b35ce0c4SPankaj Gupta 	{0x014c0000,
2230*b35ce0c4SPankaj Gupta 	 "PMU: Error: Mismatched internal revision between DCCM and ICCM images\n"
2231*b35ce0c4SPankaj Gupta 	},
2232*b35ce0c4SPankaj Gupta 	{0x014d0001,
2233*b35ce0c4SPankaj Gupta 	 "PMU10: **** Testchip %d Specific Firmware ****\n"
2234*b35ce0c4SPankaj Gupta 	},
2235*b35ce0c4SPankaj Gupta 	{0x014e0000,
2236*b35ce0c4SPankaj Gupta 	 "PMU1: LRDIMM with EncodedCS mode, one DIMM\n"
2237*b35ce0c4SPankaj Gupta 	},
2238*b35ce0c4SPankaj Gupta 	{0x014f0000,
2239*b35ce0c4SPankaj Gupta 	 "PMU1: LRDIMM with EncodedCS mode, two DIMMs\n"
2240*b35ce0c4SPankaj Gupta 	},
2241*b35ce0c4SPankaj Gupta 	{0x01500000,
2242*b35ce0c4SPankaj Gupta 	 "PMU1: RDIMM with EncodedCS mode, one DIMM\n"
2243*b35ce0c4SPankaj Gupta 	},
2244*b35ce0c4SPankaj Gupta 	{0x01510000,
2245*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MREP training for all ranks\n"
2246*b35ce0c4SPankaj Gupta 	},
2247*b35ce0c4SPankaj Gupta 	{0x01520000,
2248*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MREP training for all ranks completed\n"
2249*b35ce0c4SPankaj Gupta 	},
2250*b35ce0c4SPankaj Gupta 	{0x01530000,
2251*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM DWL training for all ranks\n"
2252*b35ce0c4SPankaj Gupta 	},
2253*b35ce0c4SPankaj Gupta 	{0x01540000,
2254*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM DWL training for all ranks completed\n"
2255*b35ce0c4SPankaj Gupta 	},
2256*b35ce0c4SPankaj Gupta 	{0x01550000,
2257*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MRD training for all ranks\n"
2258*b35ce0c4SPankaj Gupta 	},
2259*b35ce0c4SPankaj Gupta 	{0x01560000,
2260*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MRD training for all ranks completed\n"
2261*b35ce0c4SPankaj Gupta 	},
2262*b35ce0c4SPankaj Gupta 	{0x01570000,
2263*b35ce0c4SPankaj Gupta 	 "PMU2: Starting RXEN training for all ranks\n"
2264*b35ce0c4SPankaj Gupta 	},
2265*b35ce0c4SPankaj Gupta 	{0x01580000,
2266*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling fine delay training for all ranks\n"
2267*b35ce0c4SPankaj Gupta 	},
2268*b35ce0c4SPankaj Gupta 	{0x01590000,
2269*b35ce0c4SPankaj Gupta 	 "PMU2: Starting LRDIMM MWD training for all ranks\n"
2270*b35ce0c4SPankaj Gupta 	},
2271*b35ce0c4SPankaj Gupta 	{0x015a0000,
2272*b35ce0c4SPankaj Gupta 	 "PMU199: LRDIMM MWD training for all ranks completed\n"
2273*b35ce0c4SPankaj Gupta 	},
2274*b35ce0c4SPankaj Gupta 	{0x015b0000,
2275*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling fine delay training for all ranks\n"
2276*b35ce0c4SPankaj Gupta 	},
2277*b35ce0c4SPankaj Gupta 	{0x015c0000,
2278*b35ce0c4SPankaj Gupta 	 "PMU2: Starting read deskew training\n"
2279*b35ce0c4SPankaj Gupta 	},
2280*b35ce0c4SPankaj Gupta 	{0x015d0000,
2281*b35ce0c4SPankaj Gupta 	 "PMU2: Starting SI friendly 1d RdDqs training for all ranks\n"
2282*b35ce0c4SPankaj Gupta 	},
2283*b35ce0c4SPankaj Gupta 	{0x015e0000,
2284*b35ce0c4SPankaj Gupta 	 "PMU2: Starting write leveling coarse delay training for all ranks\n"
2285*b35ce0c4SPankaj Gupta 	},
2286*b35ce0c4SPankaj Gupta 	{0x015f0000,
2287*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 1d WrDq training for all ranks\n"
2288*b35ce0c4SPankaj Gupta 	},
2289*b35ce0c4SPankaj Gupta 	{0x01600000,
2290*b35ce0c4SPankaj Gupta 	 "PMU2: Running DQS2DQ Oscillator for all ranks\n"
2291*b35ce0c4SPankaj Gupta 	},
2292*b35ce0c4SPankaj Gupta 	{0x01610000,
2293*b35ce0c4SPankaj Gupta 	 "PMU2: Starting again read deskew training but with PRBS\n"
2294*b35ce0c4SPankaj Gupta 	},
2295*b35ce0c4SPankaj Gupta 	{0x01620000,
2296*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 1d RdDqs training for all ranks\n"
2297*b35ce0c4SPankaj Gupta 	},
2298*b35ce0c4SPankaj Gupta 	{0x01630000,
2299*b35ce0c4SPankaj Gupta 	 "PMU2: Starting again 1d WrDq training for all ranks\n"
2300*b35ce0c4SPankaj Gupta 	},
2301*b35ce0c4SPankaj Gupta 	{0x01640000,
2302*b35ce0c4SPankaj Gupta 	 "PMU2: Starting MaxRdLat training\n"
2303*b35ce0c4SPankaj Gupta 	},
2304*b35ce0c4SPankaj Gupta 	{0x01650000,
2305*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 2d WrDq training for all ranks\n"
2306*b35ce0c4SPankaj Gupta 	},
2307*b35ce0c4SPankaj Gupta 	{0x01660000,
2308*b35ce0c4SPankaj Gupta 	 "PMU2: Starting 2d RdDqs training for all ranks\n"
2309*b35ce0c4SPankaj Gupta 	},
2310*b35ce0c4SPankaj Gupta 	{0x01670002,
2311*b35ce0c4SPankaj Gupta 	 "PMU3:read_fifo %x %x\n"
2312*b35ce0c4SPankaj Gupta 	},
2313*b35ce0c4SPankaj Gupta 	{0x01680001,
2314*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid PhyDrvImpedance of 0x%x specified in message block.\n"
2315*b35ce0c4SPankaj Gupta 	},
2316*b35ce0c4SPankaj Gupta 	{0x01690001,
2317*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid PhyOdtImpedance of 0x%x specified in message block.\n"
2318*b35ce0c4SPankaj Gupta 	},
2319*b35ce0c4SPankaj Gupta 	{0x016a0001,
2320*b35ce0c4SPankaj Gupta 	 "PMU: Error: Invalid BPZNResVal of 0x%x specified in message block.\n"
2321*b35ce0c4SPankaj Gupta 	},
2322*b35ce0c4SPankaj Gupta 	{0x016b0005,
2323*b35ce0c4SPankaj Gupta 	 "PMU3: fixRxEnBackOff csn:%d db:%d dn:%d bo:%d dly:%x\n"
2324*b35ce0c4SPankaj Gupta 	},
2325*b35ce0c4SPankaj Gupta 	{0x016c0001,
2326*b35ce0c4SPankaj Gupta 	 "PMU3: fixRxEnBackOff dly:%x\n"
2327*b35ce0c4SPankaj Gupta 	},
2328*b35ce0c4SPankaj Gupta 	{0x016d0000,
2329*b35ce0c4SPankaj Gupta 	 "PMU3: Entering setupPpt\n"
2330*b35ce0c4SPankaj Gupta 	},
2331*b35ce0c4SPankaj Gupta 	{0x016e0000,
2332*b35ce0c4SPankaj Gupta 	 "PMU3: Start lp4PopulateHighLowBytes\n"
2333*b35ce0c4SPankaj Gupta 	},
2334*b35ce0c4SPankaj Gupta 	{0x016f0002,
2335*b35ce0c4SPankaj Gupta 	 "PMU3:Dbyte Detect: db%d received %x\n"
2336*b35ce0c4SPankaj Gupta 	},
2337*b35ce0c4SPankaj Gupta 	{0x01700002,
2338*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq read %x from dbyte %d\n"
2339*b35ce0c4SPankaj Gupta 	},
2340*b35ce0c4SPankaj Gupta 	{0x01710002,
2341*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq(2) read %x from dbyte %d\n"
2342*b35ce0c4SPankaj Gupta 	},
2343*b35ce0c4SPankaj Gupta 	{0x01720001,
2344*b35ce0c4SPankaj Gupta 	 "PMU: Error: Dbyte %d read 0 from the DQS oscillator it is connected to\n"
2345*b35ce0c4SPankaj Gupta 	},
2346*b35ce0c4SPankaj Gupta 	{0x01730002,
2347*b35ce0c4SPankaj Gupta 	 "PMU4: Dbyte %d dqs2dq = %d/32 UI\n"
2348*b35ce0c4SPankaj Gupta 	},
2349*b35ce0c4SPankaj Gupta 	{0x01740003,
2350*b35ce0c4SPankaj Gupta 	 "PMU3:getDqs2Dq set dqs2dq:%d/32 ui (%d ps) from dbyte %d\n"
2351*b35ce0c4SPankaj Gupta 	},
2352*b35ce0c4SPankaj Gupta 	{0x01750003,
2353*b35ce0c4SPankaj Gupta 	 "PMU3: Setting coarse delay in AtxDly chiplet %d from 0x%02x to 0x%02x\n"
2354*b35ce0c4SPankaj Gupta 	},
2355*b35ce0c4SPankaj Gupta 	{0x01760003,
2356*b35ce0c4SPankaj Gupta 	 "PMU3: Clearing coarse delay in AtxDly chiplet %d from 0x%02x to 0x%02x\n"
2357*b35ce0c4SPankaj Gupta 	},
2358*b35ce0c4SPankaj Gupta 	{0x01770000,
2359*b35ce0c4SPankaj Gupta 	 "PMU3: Performing DDR4 geardown sync sequence\n"
2360*b35ce0c4SPankaj Gupta 	},
2361*b35ce0c4SPankaj Gupta 	{0x01780000,
2362*b35ce0c4SPankaj Gupta 	 "PMU1: Enter self refresh\n"
2363*b35ce0c4SPankaj Gupta 	},
2364*b35ce0c4SPankaj Gupta 	{0x01790000,
2365*b35ce0c4SPankaj Gupta 	 "PMU1: Exit self refresh\n"
2366*b35ce0c4SPankaj Gupta 	},
2367*b35ce0c4SPankaj Gupta 	{0x017a0000,
2368*b35ce0c4SPankaj Gupta 	 "PMU: Error: No dbiEnable with lp4\n"
2369*b35ce0c4SPankaj Gupta 	},
2370*b35ce0c4SPankaj Gupta 	{0x017b0000,
2371*b35ce0c4SPankaj Gupta 	 "PMU: Error: No dbiDisable with lp4\n"
2372*b35ce0c4SPankaj Gupta 	},
2373*b35ce0c4SPankaj Gupta 	{0x017c0001,
2374*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update Rx DBI Setting disable %d\n"
2375*b35ce0c4SPankaj Gupta 	},
2376*b35ce0c4SPankaj Gupta 	{0x017d0001,
2377*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update 2nCk WPre Setting disable %d\n"
2378*b35ce0c4SPankaj Gupta 	},
2379*b35ce0c4SPankaj Gupta 	{0x017e0005,
2380*b35ce0c4SPankaj Gupta 	 "PMU1: read_delay: db%d lane%d delays[%2d] = 0x%02x (max 0x%02x)\n"
2381*b35ce0c4SPankaj Gupta 	},
2382*b35ce0c4SPankaj Gupta 	{0x017f0004,
2383*b35ce0c4SPankaj Gupta 	 "PMU1: write_delay: db%d lane%d delays[%2d] = 0x%04x\n"
2384*b35ce0c4SPankaj Gupta 	},
2385*b35ce0c4SPankaj Gupta 	{0x01800001,
2386*b35ce0c4SPankaj Gupta 	 "PMU5: ID=%d -- db0  db1  db2  db3  db4  db5  db6  db7  db8  db9 --\n"
2387*b35ce0c4SPankaj Gupta 	},
2388*b35ce0c4SPankaj Gupta 	{0x0181000b,
2389*b35ce0c4SPankaj Gupta 	 "PMU5: [%d]:0x %04x %04x %04x %04x %04x %04x %04x %04x %04x %04x\n"
2390*b35ce0c4SPankaj Gupta 	},
2391*b35ce0c4SPankaj Gupta 	{0x01820003,
2392*b35ce0c4SPankaj Gupta 	 "PMU2: dump delays - pstate=%d dimm=%d csn=%d\n"
2393*b35ce0c4SPankaj Gupta 	},
2394*b35ce0c4SPankaj Gupta 	{0x01830000,
2395*b35ce0c4SPankaj Gupta 	 "PMU3: Printing Mid-Training Delay Information\n"
2396*b35ce0c4SPankaj Gupta 	},
2397*b35ce0c4SPankaj Gupta 	{0x01840001,
2398*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 TrainingCntr <<KEY>> coarse(15:10) fine(9:0)\n"
2399*b35ce0c4SPankaj Gupta 	},
2400*b35ce0c4SPankaj Gupta 	{0x01850001,
2401*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 RxEnDly, 1 RxClkDly <<KEY>> coarse(10:6) fine(5:0)\n"
2402*b35ce0c4SPankaj Gupta 	},
2403*b35ce0c4SPankaj Gupta 	{0x01860001,
2404*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 TxDqsDly, 1 TxDqDly <<KEY>> coarse(9:6) fine(5:0)\n"
2405*b35ce0c4SPankaj Gupta 	},
2406*b35ce0c4SPankaj Gupta 	{0x01870001,
2407*b35ce0c4SPankaj Gupta 	 "PMU5: CS%d <<KEY>> 0 RxPBDly <<KEY>> 1 Delay Unit ~= 7ps\n"
2408*b35ce0c4SPankaj Gupta 	},
2409*b35ce0c4SPankaj Gupta 	{0x01880000,
2410*b35ce0c4SPankaj Gupta 	 "PMU5: all CS <<KEY>> 0 DFIMRL <<KEY>> Units = DFI clocks\n"
2411*b35ce0c4SPankaj Gupta 	},
2412*b35ce0c4SPankaj Gupta 	{0x01890000,
2413*b35ce0c4SPankaj Gupta 	 "PMU5: all CS <<KEY>> VrefDACs <<KEY>> DAC(6:0)\n"
2414*b35ce0c4SPankaj Gupta 	},
2415*b35ce0c4SPankaj Gupta 	{0x018a0000,
2416*b35ce0c4SPankaj Gupta 	 "PMU1: Set DMD in MR13 and wrDBI in MR3 for training\n"
2417*b35ce0c4SPankaj Gupta 	},
2418*b35ce0c4SPankaj Gupta 	{0x018b0000,
2419*b35ce0c4SPankaj Gupta 	 "PMU: Error: getMaxRxen() failed to find largest rxen nibble delay\n"
2420*b35ce0c4SPankaj Gupta 	},
2421*b35ce0c4SPankaj Gupta 	{0x018c0003,
2422*b35ce0c4SPankaj Gupta 	 "PMU2: getMaxRxen(): maxDly %d maxTg %d maxNib %d\n"
2423*b35ce0c4SPankaj Gupta 	},
2424*b35ce0c4SPankaj Gupta 	{0x018d0003,
2425*b35ce0c4SPankaj Gupta 	 "PMU2: getRankMaxRxen(): maxDly %d Tg %d maxNib %d\n"
2426*b35ce0c4SPankaj Gupta 	},
2427*b35ce0c4SPankaj Gupta 	{0x018e0000,
2428*b35ce0c4SPankaj Gupta 	 "PMU1: skipping CDD calculation in 2D image\n"
2429*b35ce0c4SPankaj Gupta 	},
2430*b35ce0c4SPankaj Gupta 	{0x018f0001,
2431*b35ce0c4SPankaj Gupta 	 "PMU3: Calculating CDDs for pstate %d\n"
2432*b35ce0c4SPankaj Gupta 	},
2433*b35ce0c4SPankaj Gupta 	{0x01900003,
2434*b35ce0c4SPankaj Gupta 	 "PMU3: rxFromDly[%d][%d] = %d\n"
2435*b35ce0c4SPankaj Gupta 	},
2436*b35ce0c4SPankaj Gupta 	{0x01910003,
2437*b35ce0c4SPankaj Gupta 	 "PMU3: rxToDly  [%d][%d] = %d\n"
2438*b35ce0c4SPankaj Gupta 	},
2439*b35ce0c4SPankaj Gupta 	{0x01920003,
2440*b35ce0c4SPankaj Gupta 	 "PMU3: rxDly    [%d][%d] = %d\n"
2441*b35ce0c4SPankaj Gupta 	},
2442*b35ce0c4SPankaj Gupta 	{0x01930003,
2443*b35ce0c4SPankaj Gupta 	 "PMU3: txDly    [%d][%d] = %d\n"
2444*b35ce0c4SPankaj Gupta 	},
2445*b35ce0c4SPankaj Gupta 	{0x01940003,
2446*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_RR_%d_%d = %d\n"
2447*b35ce0c4SPankaj Gupta 	},
2448*b35ce0c4SPankaj Gupta 	{0x01950003,
2449*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_WW_%d_%d = %d\n"
2450*b35ce0c4SPankaj Gupta 	},
2451*b35ce0c4SPankaj Gupta 	{0x01960003,
2452*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_RR_%d_%d = %d\n"
2453*b35ce0c4SPankaj Gupta 	},
2454*b35ce0c4SPankaj Gupta 	{0x01970003,
2455*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_WW_%d_%d = %d\n"
2456*b35ce0c4SPankaj Gupta 	},
2457*b35ce0c4SPankaj Gupta 	{0x01980003,
2458*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_RW_%d_%d = %d\n"
2459*b35ce0c4SPankaj Gupta 	},
2460*b35ce0c4SPankaj Gupta 	{0x01990003,
2461*b35ce0c4SPankaj Gupta 	 "PMU3: allFine CDD_WR_%d_%d = %d\n"
2462*b35ce0c4SPankaj Gupta 	},
2463*b35ce0c4SPankaj Gupta 	{0x019a0003,
2464*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_RW_%d_%d = %d\n"
2465*b35ce0c4SPankaj Gupta 	},
2466*b35ce0c4SPankaj Gupta 	{0x019b0003,
2467*b35ce0c4SPankaj Gupta 	 "PMU3: CDD_WR_%d_%d = %d\n"
2468*b35ce0c4SPankaj Gupta 	},
2469*b35ce0c4SPankaj Gupta 	{0x019c0004,
2470*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC2x_B%d_D%d = 0x%02x\n"
2471*b35ce0c4SPankaj Gupta 	},
2472*b35ce0c4SPankaj Gupta 	{0x019d0004,
2473*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC3x_B%d_D%d = 0x%02x\n"
2474*b35ce0c4SPankaj Gupta 	},
2475*b35ce0c4SPankaj Gupta 	{0x019e0004,
2476*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC4x_B%d_D%d = 0x%02x\n"
2477*b35ce0c4SPankaj Gupta 	},
2478*b35ce0c4SPankaj Gupta 	{0x019f0004,
2479*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC5x_B%d_D%d = 0x%02x\n"
2480*b35ce0c4SPankaj Gupta 	},
2481*b35ce0c4SPankaj Gupta 	{0x01a00004,
2482*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC8x_B%d_D%d = 0x%02x\n"
2483*b35ce0c4SPankaj Gupta 	},
2484*b35ce0c4SPankaj Gupta 	{0x01a10004,
2485*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBC9x_B%d_D%d = 0x%02x\n"
2486*b35ce0c4SPankaj Gupta 	},
2487*b35ce0c4SPankaj Gupta 	{0x01a20004,
2488*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBCAx_B%d_D%d = 0x%02x\n"
2489*b35ce0c4SPankaj Gupta 	},
2490*b35ce0c4SPankaj Gupta 	{0x01a30004,
2491*b35ce0c4SPankaj Gupta 	 "PMU3: F%dBCBx_B%d_D%d = 0x%02x\n"
2492*b35ce0c4SPankaj Gupta 	},
2493*b35ce0c4SPankaj Gupta 	{0x01a40000,
2494*b35ce0c4SPankaj Gupta 	 "PMU10: Entering context_switch_postamble\n"
2495*b35ce0c4SPankaj Gupta 	},
2496*b35ce0c4SPankaj Gupta 	{0x01a50003,
2497*b35ce0c4SPankaj Gupta 	 "PMU10: context_switch_postamble is enabled for DIMM %d, RC0A=0x%x, RC3x=0x%x\n"
2498*b35ce0c4SPankaj Gupta 	},
2499*b35ce0c4SPankaj Gupta 	{0x01a60000,
2500*b35ce0c4SPankaj Gupta 	 "PMU10: Setting bcw fspace 0\n"
2501*b35ce0c4SPankaj Gupta 	},
2502*b35ce0c4SPankaj Gupta 	{0x01a70001,
2503*b35ce0c4SPankaj Gupta 	 "PMU10: Sending BC0A = 0x%x\n"
2504*b35ce0c4SPankaj Gupta 	},
2505*b35ce0c4SPankaj Gupta 	{0x01a80001,
2506*b35ce0c4SPankaj Gupta 	 "PMU10: Sending BC6x = 0x%x\n"
2507*b35ce0c4SPankaj Gupta 	},
2508*b35ce0c4SPankaj Gupta 	{0x01a90001,
2509*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC0A = 0x%x\n"
2510*b35ce0c4SPankaj Gupta 	},
2511*b35ce0c4SPankaj Gupta 	{0x01aa0001,
2512*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC3x = 0x%x\n"
2513*b35ce0c4SPankaj Gupta 	},
2514*b35ce0c4SPankaj Gupta 	{0x01ab0001,
2515*b35ce0c4SPankaj Gupta 	 "PMU10: Sending RC0A = 0x%x\n"
2516*b35ce0c4SPankaj Gupta 	},
2517*b35ce0c4SPankaj Gupta 	{0x01ac0001,
2518*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pstate = %d\n"
2519*b35ce0c4SPankaj Gupta 	},
2520*b35ce0c4SPankaj Gupta 	{0x01ad0001,
2521*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: dfifreqxlat_pstate = %d\n"
2522*b35ce0c4SPankaj Gupta 	},
2523*b35ce0c4SPankaj Gupta 	{0x01ae0001,
2524*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllbypass = %d\n"
2525*b35ce0c4SPankaj Gupta 	},
2526*b35ce0c4SPankaj Gupta 	{0x01af0001,
2527*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: forcecal = %d\n"
2528*b35ce0c4SPankaj Gupta 	},
2529*b35ce0c4SPankaj Gupta 	{0x01b00001,
2530*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllmaxrange = 0x%x\n"
2531*b35ce0c4SPankaj Gupta 	},
2532*b35ce0c4SPankaj Gupta 	{0x01b10001,
2533*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: dacval_out = 0x%x\n"
2534*b35ce0c4SPankaj Gupta 	},
2535*b35ce0c4SPankaj Gupta 	{0x01b20001,
2536*b35ce0c4SPankaj Gupta 	 "PMU1: enter_lp3: DEBUG: pllctrl3 = 0x%x\n"
2537*b35ce0c4SPankaj Gupta 	},
2538*b35ce0c4SPankaj Gupta 	{0x01b30000,
2539*b35ce0c4SPankaj Gupta 	 "PMU3: Loading DRAM with BIOS supplied MR values and entering self refresh prior to exiting PMU code.\n"
2540*b35ce0c4SPankaj Gupta 	},
2541*b35ce0c4SPankaj Gupta 	{0x01b40002,
2542*b35ce0c4SPankaj Gupta 	 "PMU3: Setting DataBuffer function space of dimmcs 0x%02x to %d\n"
2543*b35ce0c4SPankaj Gupta 	},
2544*b35ce0c4SPankaj Gupta 	{0x01b50002,
2545*b35ce0c4SPankaj Gupta 	 "PMU4: Setting RCW FxRC%Xx = 0x%02x\n"
2546*b35ce0c4SPankaj Gupta 	},
2547*b35ce0c4SPankaj Gupta 	{0x01b60002,
2548*b35ce0c4SPankaj Gupta 	 "PMU4: Setting RCW FxRC%02x = 0x%02x\n"
2549*b35ce0c4SPankaj Gupta 	},
2550*b35ce0c4SPankaj Gupta 	{0x01b70001,
2551*b35ce0c4SPankaj Gupta 	 "PMU1: DDR4 update Rd Pre Setting disable %d\n"
2552*b35ce0c4SPankaj Gupta 	},
2553*b35ce0c4SPankaj Gupta 	{0x01b80002,
2554*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW FxBC%Xx = 0x%02x\n"
2555*b35ce0c4SPankaj Gupta 	},
2556*b35ce0c4SPankaj Gupta 	{0x01b90002,
2557*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW BC%02x = 0x%02x\n"
2558*b35ce0c4SPankaj Gupta 	},
2559*b35ce0c4SPankaj Gupta 	{0x01ba0002,
2560*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW PBA mode FxBC%Xx = 0x%02x\n"
2561*b35ce0c4SPankaj Gupta 	},
2562*b35ce0c4SPankaj Gupta 	{0x01bb0002,
2563*b35ce0c4SPankaj Gupta 	 "PMU2: Setting BCW PBA mode BC%02x = 0x%02x\n"
2564*b35ce0c4SPankaj Gupta 	},
2565*b35ce0c4SPankaj Gupta 	{0x01bc0003,
2566*b35ce0c4SPankaj Gupta 	 "PMU4: BCW value for dimm %d, fspace %d, addr 0x%04x\n"
2567*b35ce0c4SPankaj Gupta 	},
2568*b35ce0c4SPankaj Gupta 	{0x01bd0002,
2569*b35ce0c4SPankaj Gupta 	 "PMU4: DB %d, value 0x%02x\n"
2570*b35ce0c4SPankaj Gupta 	},
2571*b35ce0c4SPankaj Gupta 	{0x01be0000,
2572*b35ce0c4SPankaj Gupta 	 "PMU6: WARNING MREP underflow, set to min value -2 coarse, 0 fine\n"
2573*b35ce0c4SPankaj Gupta 	},
2574*b35ce0c4SPankaj Gupta 	{0x01bf0004,
2575*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing final data buffer fine delay value nib %2d, trainDly %3d, fineDly code %2d, new MREP fine %2d\n"
2576*b35ce0c4SPankaj Gupta 	},
2577*b35ce0c4SPankaj Gupta 	{0x01c00003,
2578*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing final data buffer fine delay value nib %2d, trainDly %3d, fineDly code %2d\n"
2579*b35ce0c4SPankaj Gupta 	},
2580*b35ce0c4SPankaj Gupta 	{0x01c10003,
2581*b35ce0c4SPankaj Gupta 	 "PMU6: LRDIMM Writing data buffer fine delay type %d nib %2d, code %2d\n"
2582*b35ce0c4SPankaj Gupta 	},
2583*b35ce0c4SPankaj Gupta 	{0x01c20002,
2584*b35ce0c4SPankaj Gupta 	 "PMU6: Writing final data buffer coarse delay value dbyte %2d, coarse = 0x%02x\n"
2585*b35ce0c4SPankaj Gupta 	},
2586*b35ce0c4SPankaj Gupta 	{0x01c30003,
2587*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x saved at CSR addr 0x%08x\n"
2588*b35ce0c4SPankaj Gupta 	},
2589*b35ce0c4SPankaj Gupta 	{0x01c40003,
2590*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x restored from CSR addr 0x%08x\n"
2591*b35ce0c4SPankaj Gupta 	},
2592*b35ce0c4SPankaj Gupta 	{0x01c50003,
2593*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x saved at CSR addr 0x%08x\n"
2594*b35ce0c4SPankaj Gupta 	},
2595*b35ce0c4SPankaj Gupta 	{0x01c60003,
2596*b35ce0c4SPankaj Gupta 	 "PMU4: data 0x%04x at MB addr 0x%08x restored from CSR addr 0x%08x\n"
2597*b35ce0c4SPankaj Gupta 	},
2598*b35ce0c4SPankaj Gupta 	{0x01c70001,
2599*b35ce0c4SPankaj Gupta 	 "PMU3: Update BC00, BC01, BC02 for rank-dimm 0x%02x\n"
2600*b35ce0c4SPankaj Gupta 	},
2601*b35ce0c4SPankaj Gupta 	{0x01c80000,
2602*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F0RC00 -> F0RC0F\n"
2603*b35ce0c4SPankaj Gupta 	},
2604*b35ce0c4SPankaj Gupta 	{0x01c90000,
2605*b35ce0c4SPankaj Gupta 	 "PMU3: Disable parity in F0RC0E\n"
2606*b35ce0c4SPankaj Gupta 	},
2607*b35ce0c4SPankaj Gupta 	{0x01ca0000,
2608*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F1RC00 -> F1RC05\n"
2609*b35ce0c4SPankaj Gupta 	},
2610*b35ce0c4SPankaj Gupta 	{0x01cb0000,
2611*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 RDIMM RCD Control words F1RC1x -> F1RC9x\n"
2612*b35ce0c4SPankaj Gupta 	},
2613*b35ce0c4SPankaj Gupta 	{0x01cc0000,
2614*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D4 Data buffer Control words BC00 -> BC0E\n"
2615*b35ce0c4SPankaj Gupta 	},
2616*b35ce0c4SPankaj Gupta 	{0x01cd0002,
2617*b35ce0c4SPankaj Gupta 	 "PMU1: setAltCL Sending MR0 0x%x cl=%d\n"
2618*b35ce0c4SPankaj Gupta 	},
2619*b35ce0c4SPankaj Gupta 	{0x01ce0002,
2620*b35ce0c4SPankaj Gupta 	 "PMU1: restoreFromAltCL Sending MR0 0x%x cl=%d\n"
2621*b35ce0c4SPankaj Gupta 	},
2622*b35ce0c4SPankaj Gupta 	{0x01cf0002,
2623*b35ce0c4SPankaj Gupta 	 "PMU1: restoreAcsmFromAltCL Sending MR0 0x%x cl=%d\n"
2624*b35ce0c4SPankaj Gupta 	},
2625*b35ce0c4SPankaj Gupta 	{0x01d00002,
2626*b35ce0c4SPankaj Gupta 	 "PMU2: Setting D3R RC%d = 0x%01x\n"
2627*b35ce0c4SPankaj Gupta 	},
2628*b35ce0c4SPankaj Gupta 	{0x01d10000,
2629*b35ce0c4SPankaj Gupta 	 "PMU3: Writing D3 RDIMM RCD Control words RC0 -> RC11\n"
2630*b35ce0c4SPankaj Gupta 	},
2631*b35ce0c4SPankaj Gupta 	{0x01d20002,
2632*b35ce0c4SPankaj Gupta 	 "PMU0: VrefDAC0/1 vddqStart %d dacToVddq %d\n"
2633*b35ce0c4SPankaj Gupta 	},
2634*b35ce0c4SPankaj Gupta 	{0x01d30001,
2635*b35ce0c4SPankaj Gupta 	 "PMU: Error: Messageblock phyVref=0x%x is above the limit for TSMC28's attenuated LPDDR4 receivers. Please see the pub databook\n"
2636*b35ce0c4SPankaj Gupta 	},
2637*b35ce0c4SPankaj Gupta 	{0x01d40001,
2638*b35ce0c4SPankaj Gupta 	 "PMU: Error: Messageblock phyVref=0x%x is above the limit for TSMC28's attenuated DDR4 receivers. Please see the pub databook\n"
2639*b35ce0c4SPankaj Gupta 	},
2640*b35ce0c4SPankaj Gupta 	{0x01d50001,
2641*b35ce0c4SPankaj Gupta 	 "PMU0: PHY VREF @ (%d/1000) VDDQ\n"
2642*b35ce0c4SPankaj Gupta 	},
2643*b35ce0c4SPankaj Gupta 	{0x01d60002,
2644*b35ce0c4SPankaj Gupta 	 "PMU0: initalizing phy vrefDacs to %d ExtVrefRange %x\n"
2645*b35ce0c4SPankaj Gupta 	},
2646*b35ce0c4SPankaj Gupta 	{0x01d70002,
2647*b35ce0c4SPankaj Gupta 	 "PMU0: initalizing global vref to %d range %d\n"
2648*b35ce0c4SPankaj Gupta 	},
2649*b35ce0c4SPankaj Gupta 	{0x01d80002,
2650*b35ce0c4SPankaj Gupta 	 "PMU4: Setting initial device vrefDQ for CS%d to MR6 = 0x%04x\n"
2651*b35ce0c4SPankaj Gupta 	},
2652*b35ce0c4SPankaj Gupta 	{0x01d90003,
2653*b35ce0c4SPankaj Gupta 	 "PMU1: In write_level_fine() csn=%d dimm=%d pstate=%d\n"
2654*b35ce0c4SPankaj Gupta 	},
2655*b35ce0c4SPankaj Gupta 	{0x01da0000,
2656*b35ce0c4SPankaj Gupta 	 "PMU3: Fine write leveling hardware search increasing TxDqsDly until full bursts are seen\n"
2657*b35ce0c4SPankaj Gupta 	},
2658*b35ce0c4SPankaj Gupta 	{0x01db0000,
2659*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ........................|........................\n"
2660*b35ce0c4SPankaj Gupta 	},
2661*b35ce0c4SPankaj Gupta 	{0x01dc0007,
2662*b35ce0c4SPankaj Gupta 	 "PMU4: WL margin for nib %2d: %08x%08x%08x%08x%08x%08x\n"
2663*b35ce0c4SPankaj Gupta 	},
2664*b35ce0c4SPankaj Gupta 	{0x01dd0000,
2665*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ........................|........................\n"
2666*b35ce0c4SPankaj Gupta 	},
2667*b35ce0c4SPankaj Gupta 	{0x01de0000,
2668*b35ce0c4SPankaj Gupta 	 "PMU3: Exiting write leveling mode\n"
2669*b35ce0c4SPankaj Gupta 	},
2670*b35ce0c4SPankaj Gupta 	{0x01df0001,
2671*b35ce0c4SPankaj Gupta 	 "PMU3: got %d for cl in load_wrlvl_acsm\n"
2672*b35ce0c4SPankaj Gupta 	},
2673*b35ce0c4SPankaj Gupta 	{0x01e00003,
2674*b35ce0c4SPankaj Gupta 	 "PMU1: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
2675*b35ce0c4SPankaj Gupta 	},
2676*b35ce0c4SPankaj Gupta 	{0x01e10003,
2677*b35ce0c4SPankaj Gupta 	 "PMU3: left eye edge search db:%d ln:%d dly:0x%x\n"
2678*b35ce0c4SPankaj Gupta 	},
2679*b35ce0c4SPankaj Gupta 	{0x01e20003,
2680*b35ce0c4SPankaj Gupta 	 "PMU3: right eye edge search db:%d ln:%d dly:0x%x\n"
2681*b35ce0c4SPankaj Gupta 	},
2682*b35ce0c4SPankaj Gupta 	{0x01e30004,
2683*b35ce0c4SPankaj Gupta 	 "PMU3: eye center db:%d ln:%d dly:0x%x (maxdq:%x)\n"
2684*b35ce0c4SPankaj Gupta 	},
2685*b35ce0c4SPankaj Gupta 	{0x01e40003,
2686*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db:%d ln:%d dly:0x%x\n"
2687*b35ce0c4SPankaj Gupta 	},
2688*b35ce0c4SPankaj Gupta 	{0x01e50003,
2689*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db:%d ln:%d dly:0x%x\n"
2690*b35ce0c4SPankaj Gupta 	},
2691*b35ce0c4SPankaj Gupta 	{0x01e60002,
2692*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling dbyte%2d is still failing for TxDqsDly=0x%04x\n"
2693*b35ce0c4SPankaj Gupta 	},
2694*b35ce0c4SPankaj Gupta 	{0x01e70002,
2695*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
2696*b35ce0c4SPankaj Gupta 	},
2697*b35ce0c4SPankaj Gupta 	{0x01e80000,
2698*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
2699*b35ce0c4SPankaj Gupta 	},
2700*b35ce0c4SPankaj Gupta 	{0x01e90001,
2701*b35ce0c4SPankaj Gupta 	 "PMU3: got %d for cl in load_wrlvl_acsm\n"
2702*b35ce0c4SPankaj Gupta 	},
2703*b35ce0c4SPankaj Gupta 	{0x01ea0003,
2704*b35ce0c4SPankaj Gupta 	 "PMU3: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
2705*b35ce0c4SPankaj Gupta 	},
2706*b35ce0c4SPankaj Gupta 	{0x01eb0003,
2707*b35ce0c4SPankaj Gupta 	 "PMU3: left eye edge search db:%d ln:%d dly:0x%x\n"
2708*b35ce0c4SPankaj Gupta 	},
2709*b35ce0c4SPankaj Gupta 	{0x01ec0003,
2710*b35ce0c4SPankaj Gupta 	 "PMU3: right eye edge search db: %d ln: %d dly: 0x%x\n"
2711*b35ce0c4SPankaj Gupta 	},
2712*b35ce0c4SPankaj Gupta 	{0x01ed0004,
2713*b35ce0c4SPankaj Gupta 	 "PMU3: eye center db: %d ln: %d dly: 0x%x (maxdq: 0x%x)\n"
2714*b35ce0c4SPankaj Gupta 	},
2715*b35ce0c4SPankaj Gupta 	{0x01ee0003,
2716*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db: %d ln: %d dly: 0x%x\n"
2717*b35ce0c4SPankaj Gupta 	},
2718*b35ce0c4SPankaj Gupta 	{0x01ef0003,
2719*b35ce0c4SPankaj Gupta 	 "PMU3: Wrote to TxDqDly db: %d ln: %d dly: 0x%x\n"
2720*b35ce0c4SPankaj Gupta 	},
2721*b35ce0c4SPankaj Gupta 	{0x01f00002,
2722*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling nibble%2d is still failing for TxDqsDly=0x%04x\n"
2723*b35ce0c4SPankaj Gupta 	},
2724*b35ce0c4SPankaj Gupta 	{0x01f10002,
2725*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
2726*b35ce0c4SPankaj Gupta 	},
2727*b35ce0c4SPankaj Gupta 	{0x01f20000,
2728*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
2729*b35ce0c4SPankaj Gupta 	},
2730*b35ce0c4SPankaj Gupta 	{0x01f30000,
2731*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ................................|................................\n"
2732*b35ce0c4SPankaj Gupta 	},
2733*b35ce0c4SPankaj Gupta 	{0x01f40009,
2734*b35ce0c4SPankaj Gupta 	 "PMU4: WL margin for nib %2d: %08x%08x%08x%08x%08x%08x%08x%08x\n"
2735*b35ce0c4SPankaj Gupta 	},
2736*b35ce0c4SPankaj Gupta 	{0x01f50000,
2737*b35ce0c4SPankaj Gupta 	 "PMU4: WL normalized pos   : ................................|................................\n"
2738*b35ce0c4SPankaj Gupta 	},
2739*b35ce0c4SPankaj Gupta 	{0x01f60001,
2740*b35ce0c4SPankaj Gupta 	 "PMU8: Adjust margin after WL coarse to be larger than %d\n"
2741*b35ce0c4SPankaj Gupta 	},
2742*b35ce0c4SPankaj Gupta 	{0x01f70001,
2743*b35ce0c4SPankaj Gupta 	 "PMU: Error: All margin after write leveling coarse are smaller than minMargin %d\n"
2744*b35ce0c4SPankaj Gupta 	},
2745*b35ce0c4SPankaj Gupta 	{0x01f80002,
2746*b35ce0c4SPankaj Gupta 	 "PMU8: Decrement nib %d TxDqsDly by %d fine step\n"
2747*b35ce0c4SPankaj Gupta 	},
2748*b35ce0c4SPankaj Gupta 	{0x01f90003,
2749*b35ce0c4SPankaj Gupta 	 "PMU3: In write_level_coarse() csn=%d dimm=%d pstate=%d\n"
2750*b35ce0c4SPankaj Gupta 	},
2751*b35ce0c4SPankaj Gupta 	{0x01fa0005,
2752*b35ce0c4SPankaj Gupta 	 "PMU2: Write level: dbyte %d nib%d dq/dmbi %2d dqsfine 0x%04x dqDly 0x%04x\n"
2753*b35ce0c4SPankaj Gupta 	},
2754*b35ce0c4SPankaj Gupta 	{0x01fb0002,
2755*b35ce0c4SPankaj Gupta 	 "PMU3: Coarse write leveling nibble%2d is still failing for TxDqsDly=0x%04x\n"
2756*b35ce0c4SPankaj Gupta 	},
2757*b35ce0c4SPankaj Gupta 	{0x01fc0002,
2758*b35ce0c4SPankaj Gupta 	 "PMU4: Coarse write leveling iteration %d saw %d data miscompares across the entire phy\n"
2759*b35ce0c4SPankaj Gupta 	},
2760*b35ce0c4SPankaj Gupta 	{0x01fd0000,
2761*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed write leveling coarse\n"
2762*b35ce0c4SPankaj Gupta 	},
2763*b35ce0c4SPankaj Gupta 	{0x01fe0001,
2764*b35ce0c4SPankaj Gupta 	 "PMU3: DWL delay = %d\n"
2765*b35ce0c4SPankaj Gupta 	},
2766*b35ce0c4SPankaj Gupta 	{0x01ff0003,
2767*b35ce0c4SPankaj Gupta 	 "PMU3: Errcnt for DWL nib %2d delay = %2d is %d\n"
2768*b35ce0c4SPankaj Gupta 	},
2769*b35ce0c4SPankaj Gupta 	{0x02000002,
2770*b35ce0c4SPankaj Gupta 	 "PMU3: DWL nibble %d sampled a 1 at delay %d\n"
2771*b35ce0c4SPankaj Gupta 	},
2772*b35ce0c4SPankaj Gupta 	{0x02010003,
2773*b35ce0c4SPankaj Gupta 	 "PMU3: DWL nibble %d passed at delay %d. Rising edge was at %d\n"
2774*b35ce0c4SPankaj Gupta 	},
2775*b35ce0c4SPankaj Gupta 	{0x02020000,
2776*b35ce0c4SPankaj Gupta 	 "PMU2: DWL did nto find a rising edge of memclk for all nibbles. Failing nibbles assumed to have rising edge close to fine delay 63\n"
2777*b35ce0c4SPankaj Gupta 	},
2778*b35ce0c4SPankaj Gupta 	{0x02030002,
2779*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge found in alias window, setting wrlvlDly for nibble %d = %d\n"
2780*b35ce0c4SPankaj Gupta 	},
2781*b35ce0c4SPankaj Gupta 	{0x02040002,
2782*b35ce0c4SPankaj Gupta 	 "PMU: Error: Failed DWL for nib %d with %d one\n"
2783*b35ce0c4SPankaj Gupta 	},
2784*b35ce0c4SPankaj Gupta 	{0x02050003,
2785*b35ce0c4SPankaj Gupta 	 "PMU2:  Rising edge not found in alias window with %d one, leaving wrlvlDly for nibble %d = %d\n"
2786*b35ce0c4SPankaj Gupta 	},
2787*b35ce0c4SPankaj Gupta 	{0x04000000,
2788*b35ce0c4SPankaj Gupta 	 "PMU: Error:Mailbox Buffer Overflowed.\n"
2789*b35ce0c4SPankaj Gupta 	},
2790*b35ce0c4SPankaj Gupta 	{0x04010000,
2791*b35ce0c4SPankaj Gupta 	 "PMU: Error:Mailbox Buffer Overflowed.\n"
2792*b35ce0c4SPankaj Gupta 	},
2793*b35ce0c4SPankaj Gupta 	{0x04020000,
2794*b35ce0c4SPankaj Gupta 	 "PMU: ***** Assertion Error - terminating *****\n"
2795*b35ce0c4SPankaj Gupta 	},
2796*b35ce0c4SPankaj Gupta 	{0x04030002,
2797*b35ce0c4SPankaj Gupta 	 "PMU1: swapByte db %d by %d\n"
2798*b35ce0c4SPankaj Gupta 	},
2799*b35ce0c4SPankaj Gupta 	{0x04040003,
2800*b35ce0c4SPankaj Gupta 	 "PMU3: get_cmd_dly max(%d ps, %d memclk) = %d\n"
2801*b35ce0c4SPankaj Gupta 	},
2802*b35ce0c4SPankaj Gupta 	{0x04050002,
2803*b35ce0c4SPankaj Gupta 	 "PMU0: Write CSR 0x%06x 0x%04x\n"
2804*b35ce0c4SPankaj Gupta 	},
2805*b35ce0c4SPankaj Gupta 	{0x04060002,
2806*b35ce0c4SPankaj Gupta 	 "PMU0: hwt_init_ppgc_prbs(): Polynomial: %x, Deg: %d\n"
2807*b35ce0c4SPankaj Gupta 	},
2808*b35ce0c4SPankaj Gupta 	{0x04070001,
2809*b35ce0c4SPankaj Gupta 	 "PMU: Error: acsm_set_cmd to non existent instruction address %d\n"
2810*b35ce0c4SPankaj Gupta 	},
2811*b35ce0c4SPankaj Gupta 	{0x04080001,
2812*b35ce0c4SPankaj Gupta 	 "PMU: Error: acsm_set_cmd with unknown ddr cmd 0x%x\n"
2813*b35ce0c4SPankaj Gupta 	},
2814*b35ce0c4SPankaj Gupta 	{0x0409000c,
2815*b35ce0c4SPankaj Gupta 	 "PMU1: acsm_addr %02x, acsm_flgs %04x, ddr_cmd %02x, cmd_dly %02x, ddr_addr %04x, ddr_bnk %02x, ddr_cs %02x, cmd_rcnt %02x, AcsmSeq0/1/2/3 %04x %04x %04x %04x\n"
2816*b35ce0c4SPankaj Gupta 	},
2817*b35ce0c4SPankaj Gupta 	{0x040a0000,
2818*b35ce0c4SPankaj Gupta 	 "PMU: Error: Polling on ACSM done failed to complete in acsm_poll_done()...\n"
2819*b35ce0c4SPankaj Gupta 	},
2820*b35ce0c4SPankaj Gupta 	{0x040b0000,
2821*b35ce0c4SPankaj Gupta 	 "PMU1: acsm RUN\n"
2822*b35ce0c4SPankaj Gupta 	},
2823*b35ce0c4SPankaj Gupta 	{0x040c0000,
2824*b35ce0c4SPankaj Gupta 	 "PMU1: acsm STOPPED\n"
2825*b35ce0c4SPankaj Gupta 	},
2826*b35ce0c4SPankaj Gupta 	{0x040d0002,
2827*b35ce0c4SPankaj Gupta 	 "PMU1: acsm_init: acsm_mode %04x mxrdlat %04x\n"
2828*b35ce0c4SPankaj Gupta 	},
2829*b35ce0c4SPankaj Gupta 	{0x040e0002,
2830*b35ce0c4SPankaj Gupta 	 "PMU: Error: setAcsmCLCWL: cl and cwl must be each >= 2 and 5, resp. CL=%d CWL=%d\n"
2831*b35ce0c4SPankaj Gupta 	},
2832*b35ce0c4SPankaj Gupta 	{0x040f0002,
2833*b35ce0c4SPankaj Gupta 	 "PMU: Error: setAcsmCLCWL: cl and cwl must be each >= 5. CL=%d CWL=%d\n"
2834*b35ce0c4SPankaj Gupta 	},
2835*b35ce0c4SPankaj Gupta 	{0x04100002,
2836*b35ce0c4SPankaj Gupta 	 "PMU1: setAcsmCLCWL: CASL %04d WCASL %04d\n"
2837*b35ce0c4SPankaj Gupta 	},
2838*b35ce0c4SPankaj Gupta 	{0x04110001,
2839*b35ce0c4SPankaj Gupta 	 "PMU: Error: Reserved value of register F0RC0F found in message block: 0x%04x\n"
2840*b35ce0c4SPankaj Gupta 	},
2841*b35ce0c4SPankaj Gupta 	{0x04120001,
2842*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
2843*b35ce0c4SPankaj Gupta 	},
2844*b35ce0c4SPankaj Gupta 	{0x04130001,
2845*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
2846*b35ce0c4SPankaj Gupta 	},
2847*b35ce0c4SPankaj Gupta 	{0x04140000,
2848*b35ce0c4SPankaj Gupta 	 "PMU3: Entering Boot Freq Mode.\n"
2849*b35ce0c4SPankaj Gupta 	},
2850*b35ce0c4SPankaj Gupta 	{0x04150001,
2851*b35ce0c4SPankaj Gupta 	 "PMU: Error: Boot clock divider setting of %d is too small\n"
2852*b35ce0c4SPankaj Gupta 	},
2853*b35ce0c4SPankaj Gupta 	{0x04160000,
2854*b35ce0c4SPankaj Gupta 	 "PMU3: Exiting Boot Freq Mode.\n"
2855*b35ce0c4SPankaj Gupta 	},
2856*b35ce0c4SPankaj Gupta 	{0x04170002,
2857*b35ce0c4SPankaj Gupta 	 "PMU3: Writing MR%d OP=%x\n"
2858*b35ce0c4SPankaj Gupta 	},
2859*b35ce0c4SPankaj Gupta 	{0x04180000,
2860*b35ce0c4SPankaj Gupta 	 "PMU: Error: Delay too large in slomo\n"
2861*b35ce0c4SPankaj Gupta 	},
2862*b35ce0c4SPankaj Gupta 	{0x04190001,
2863*b35ce0c4SPankaj Gupta 	 "PMU3: Written MRS to CS=0x%02x\n"
2864*b35ce0c4SPankaj Gupta 	},
2865*b35ce0c4SPankaj Gupta 	{0x041a0000,
2866*b35ce0c4SPankaj Gupta 	 "PMU3: Enable Channel A\n"
2867*b35ce0c4SPankaj Gupta 	},
2868*b35ce0c4SPankaj Gupta 	{0x041b0000,
2869*b35ce0c4SPankaj Gupta 	 "PMU3: Enable Channel B\n"
2870*b35ce0c4SPankaj Gupta 	},
2871*b35ce0c4SPankaj Gupta 	{0x041c0000,
2872*b35ce0c4SPankaj Gupta 	 "PMU3: Enable All Channels\n"
2873*b35ce0c4SPankaj Gupta 	},
2874*b35ce0c4SPankaj Gupta 	{0x041d0002,
2875*b35ce0c4SPankaj Gupta 	 "PMU2: Use PDA mode to set MR%d with value 0x%02x\n"
2876*b35ce0c4SPankaj Gupta 	},
2877*b35ce0c4SPankaj Gupta 	{0x041e0001,
2878*b35ce0c4SPankaj Gupta 	 "PMU3: Written Vref with PDA to CS=0x%02x\n"
2879*b35ce0c4SPankaj Gupta 	},
2880*b35ce0c4SPankaj Gupta 	{0x041f0000,
2881*b35ce0c4SPankaj Gupta 	 "PMU1: start_cal: DEBUG: setting CalRun to 1\n"
2882*b35ce0c4SPankaj Gupta 	},
2883*b35ce0c4SPankaj Gupta 	{0x04200000,
2884*b35ce0c4SPankaj Gupta 	 "PMU1: start_cal: DEBUG: setting CalRun to 0\n"
2885*b35ce0c4SPankaj Gupta 	},
2886*b35ce0c4SPankaj Gupta 	{0x04210001,
2887*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: pstate = %d\n"
2888*b35ce0c4SPankaj Gupta 	},
2889*b35ce0c4SPankaj Gupta 	{0x04220001,
2890*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: dfifreqxlat_pstate = %d\n"
2891*b35ce0c4SPankaj Gupta 	},
2892*b35ce0c4SPankaj Gupta 	{0x04230001,
2893*b35ce0c4SPankaj Gupta 	 "PMU1: lock_pll_dll: DEBUG: pllbypass = %d\n"
2894*b35ce0c4SPankaj Gupta 	},
2895*b35ce0c4SPankaj Gupta 	{0x04240001,
2896*b35ce0c4SPankaj Gupta 	 "PMU3: SaveLcdlSeed: Saving seed %d\n"
2897*b35ce0c4SPankaj Gupta 	},
2898*b35ce0c4SPankaj Gupta 	{0x04250000,
2899*b35ce0c4SPankaj Gupta 	 "PMU1: in phy_defaults()\n"
2900*b35ce0c4SPankaj Gupta 	},
2901*b35ce0c4SPankaj Gupta 	{0x04260003,
2902*b35ce0c4SPankaj Gupta 	 "PMU3: ACXConf:%d MaxNumDbytes:%d NumDfi:%d\n"
2903*b35ce0c4SPankaj Gupta 	},
2904*b35ce0c4SPankaj Gupta 	{0x04270005,
2905*b35ce0c4SPankaj Gupta 	 "PMU1: setAltAcsmCLCWL setting cl=%d cwl=%d\n"
2906*b35ce0c4SPankaj Gupta 	},
2907*b35ce0c4SPankaj Gupta };
2908*b35ce0c4SPankaj Gupta #endif /* DEBUG */
2909*b35ce0c4SPankaj Gupta #endif
2910