This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM623: LPDDR4: How to Enable/Disable Periodic Calibration

Part Number: AM623
Other Parts Discussed in Thread: SYSCONFIG

By initial look at sysconfig for LPDDR4, it was not clear if the Periodic calibration is enabled by default or not for LPDDR4 sysconfig.

If enabled by default, is it possible to disable the same?

which parameter to configure in sysconfig to enable/disable and set time period using sysconfig tool?

  • Hi Vinay, 

    actually, a new version of the sysconfig tool (v0.10.01) was just pushed publicly recently, which includes a setting to enable/disable periodic zq calibration.  

    Regards,

    James

  • Hi James,

    Thank you for the details, But after changing this parameter Periodic ZQ calibration to 'Enabled-256ms period', it is only reflecting in settings_info.syscfg and Configuration Script .syscfg file in generated files. It did not change any register values in generated .dtsi file, which makes no difference in device tree file of u-boot.

    Regards,

    Vinay

     

  • Vinay, you are correct.  There is a bug in the tool which does not properly enable this for AM62x.  I have it fixed now, but the tool won't be updated publicly for a few days.

    In the meantime, you can make the following changes in your configuration file to enable this:

    #define DDRSS_CTL_300_DATA 0x61A80000
    #define DDRSS_CTL_301_DATA 0x0000FFFF

    #define DDRSS_CTL_315_DATA 0x01010100

    Regards,

    James

  • Hi james,

     Thank you for the update. Also is there any recommendation for what time interval to give for the re-calibration and which parameter to configure for time interval?

    Regards,

    Vinay

  • I've seen the time interval typically chosen in ms (like 128ms or 256ms), it just depends on your system and how often you think calibration needs to run based on environment and other factors.

    You can see the value 0x61A8 in the upper portion of CTL_300, this is the interval time.  This should represent an interval time of 256ms.  If you want to change to 128ms for example, just divide this number by 2.  

    Regards,

    James

  • Ok Thank you James