<html><body><p><font size="2">I have a few things you could look at at. Can you reach out to me? One thing I would like to know is the manufacturer of the buffers on your DIMMs as well as when you pulled the the firmware procedures. We had an issue we know about and I think you might have gotten caught in it. </font><br><font size="2"><br><br><br><br>Edgar R. Cordero<br>Senior Technical Staff Member<br>IBM Systems<br>ecordero@us.ibm.com<br>(512) 286-5788  (t/l 363-5788)<br></font><br><br><img width="16" height="16" src="cid:1__=09BB0EB4DFC230388f9e8a93df938690918c09B@" border="0" alt="Inactive hide details for Alexandre Ghiti ---06/28/2019 12:25:33 AM---Le jeu. 27 juin 2019 à 20:05, Oliver O'Halloran <oohall@g"><font size="2" color="#424282">Alexandre Ghiti ---06/28/2019 12:25:33 AM---Le jeu. 27 juin 2019 à 20:05, Oliver O'Halloran <oohall@gmail.com> a écrit : > On Thu, Jun 27, 2019</font><br><br><font size="2" color="#5F5F5F">From:        </font><font size="2">Alexandre Ghiti <aghiti@upmem.com></font><br><font size="2" color="#5F5F5F">To:        </font><font size="2">"Oliver O'Halloran" <oohall@gmail.com></font><br><font size="2" color="#5F5F5F">Cc:        </font><font size="2">skiboot list <skiboot@lists.ozlabs.org>, ecordero@us.ibm.com</font><br><font size="2" color="#5F5F5F">Date:        </font><font size="2">06/28/2019 12:25 AM</font><br><font size="2" color="#5F5F5F">Subject:        </font><font size="2">[EXTERNAL] Re: [Skiboot] DDR4 Calibration and address inversion</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br><br>Le jeu. 27 juin 2019 à 20:05, Oliver O'Halloran <<a href="mailto:oohall@gmail.com"><u><font color="#0000FF">oohall@gmail.com</font></u></a>> a écrit :
<ul>On Thu, Jun 27, 2019 at 10:00 PM Alexandre Ghiti <<a href="mailto:aghiti@upmem.com" target="_blank"><u><font color="#0000FF">aghiti@upmem.com</font></u></a>> wrote:<br>><br>> Le jeu. 27 juin 2019 à 12:38, Oliver O'Halloran <<a href="mailto:oohall@gmail.com" target="_blank"><u><font color="#0000FF">oohall@gmail.com</font></u></a>> a écrit :<br>>><br>>> On Thu, Jun 27, 2019 at 7:54 PM Alexandre Ghiti <<a href="mailto:aghiti@upmem.com" target="_blank"><u><font color="#0000FF">aghiti@upmem.com</font></u></a>> wrote:<br>>> ><br>>> > Hi everyone,<br>>> ><br>>> > We are currently testing our RDIMM in a Talos server which runs custom hostboot/skiboot from RaptorCS team.<br>>> > Our RDIMM (single-rank) is 'rejected' during calibration as half the DRAMs fail the DQS alignment step. We know, for some internal reasons, that if this step tries to access the DRAMs with BG1=1, it will fail, which will happen if address inversion is enabled (see RCD jedec JESD82-31 section 2.9): so half the failing DRAMs would represent the side-b.<br>>> ><br>>> > I did not succeed to disable address inversion, certainly because the piece of HW that does the actual calibration supposes the address inversion is activated and then invert the corresponding bits to prevent RCD inversion.<br>>> ><br>>> > My questions are:<br>>> > - Is the CCS responsible for executing the calibrations ?<br>>> > - Is there anyway to modify its behaviour ? (I don't think the calibration steps are purely HW...)<br>>> ><br>>> > Thanks for your answers, and if this is not the place to discuss such things, please do not hesitate to say so.<br>>><br>>> We don't mind hearing about this sort of thing, but it's very outside<br>>> our area of expertise. Memory training is handled by the hardware<br>>> procedures in hostboot, but it sounds like you've already tried to<br>>> fiddle with the stuff in src/import/chips/p9/procedures/hwp/memory<br>>> without luck? I'll see if I can find someone who might have more of a<br>>> clue.<br>><br>><br>><br>> Yes, I know that the memory training happens in the function p9_mss_draminit_training.<br>><br>> From my understanding, it is done by setting the register DDRPHY_PC_INIT_CAL_CONFIG0_P0 (Power9<br>> Processor Registers Specification, Volume 3) with the calibration steps we want to do.<br>><br>> Then, those steps are indeed executed by setting the field CCS_INST_ARR1_00_DDR_CALIBRATION_ENABLE<br>> of MC01.MCBIST.CCS.CCS_INST_ARR1_00 register. So to me it seems those steps are entirely HW.<br>><br>> Note that we do not have a Centaur platform, our processor is the Nimbus version.<br>><br>> Thanks again for your quick answer,<br>><br>> Alex<br><br>I asked around and Edgar (+cc) from the memory team said he might be<br>able to help. He does have some questions for you though.</ul><br>Great, whatever he needs :)<br>Thanks Oliver,<br><br>Alex<br> 
<ul><br>Oliver<br><br></ul><BR>
</body></html>