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.

CCSTUDIO-SITARA: syscfg DDR initialization problem

Part Number: CCSTUDIO-SITARA

Hi.

I used syscfg to add DDR to my existing project configuration. After rebuilding, I found that I was not completing the project generated initialization. It appears that I hit an error in Sciclient_init() at the last line, the call to CSL_getProxyGetMaxMsgSize(), and end up at HwiP_data_abort_handler().

It appears that gSciClientSecProxyCfg is empty at this point. Is this supposed to be initialized at some point? If not, what else could lead to this problem and how can I approach correcting it? Thanks.

Lee Thalblum

  • Hi,

    Did you load the DMSC firmware as mentioned in section Getting Started -> EVM Setup -> AM64X EVM -> Additional Details -> SOC Initialization ->SOC Initialization Using CCS scripting of the the MCU+ SDK manual available at dev.ti.com/.../node.

    Regards

  • Hi,

    Yes, I run 

    loadJSFile "C:/ti/mcu_plus_sdk_{soc}_{sdk version}/tools/ccs_load/am64x/load_dmsc.js" and
    "AM64_DDR_Initialization_ECC_Disabled" before each debug run.

    Regards,
    Lee
  • Hi,

    In my opinion the issue is not with the gSciClientSecProxyCfg structure. Sysconfig does not generate this structure. To confirm you can add the gSciClientSecProxyCfg  to watch window and validate its content.

    The gSciClientSecProxyCfg  is declared as extern in sciclient.c and is defined in <mcu_plus_sdk_install>\source\drivers\sciclient\soc\am64x_am243x\sciclient_soc_priv.c.

    I am not able to reproduce the issue at my end. 

    Can you assist me with your project, SDK version and steps to reproduce the issue.


    Regards

  • Hi,

    I'm currently using mcu_plus_sdk_am64x_08_01_00_36. Before starting debug I run the two scripts mentioned above. Currently I always end up at  HwiP_data_abort_handler().

    How can I send you the project file? I don't see a way to attach a file.

    Regards,

    Lee 

  • Hi,

    You can attach your project using Insert->Image/video/file -> Upload.

    Regards

  • Hi,

    After debugging your code I observe that the issue is caused by the MPU configuration. I deleted MPU region 6 from your sysconfig and rebuild the project,  now I am able to pass system init.

    The issue is that the MPU region 6 overlaps with MPU region 0 causing uintended caching.

    Let me know if that resolves your issue.

    Regards

  • Hi Rajat,

    I deleted MPU region 6 from sysconfig. I now get the message "Register SP not found. (C:\ti\mcu_plus_sdk_am64x_08_01_00_36\tools\ccs_load\am64x_am243x\load_dmsc.js#194)" after running the "load_dmsc.js"" script. 

    I also notice that MPU region 7 has the same configuration as region 6. Does that need to be removed as well?

    I also crash with the following messages:

    abort() at C:/TI\mcu_plus_sdk_am64x_08_01_00_36\tools\ccs_load\am64x_am243x\sciclient_set_boardcfg.release.out:{3} 0x70093890{
    exit + 0x48 () at C:/TI\mcu_plus_sdk_am64x_08_01_00_36\tools\ccs_load\am64x_am243x\sciclient_set_boardcfg.release.out:{3} 0x70091808{4}"

    Regards,

    Lee

  • Hi Lee,

    Are you still referring to the FDIC project you have attached in the previous conversation. As I only see MPU_REGION 0-6 configured.
    May be there is a miscommunication so just to clarify when I speak for MPU region x the index for x starts from 0.
    So you need to delete MPU_REGION_6 that has the following attributes:-

    Region Start Address (hex)
    0x0
    Region Size (bytes)
    4GB
    Access Permissions
    Supervisor RD+WR, User RD+WR
    Region Attributes Cached
    I deleted MPU region 6 from sysconfig. I now get the message "Register SP not found. (C:\ti\mcu_plus_sdk_am64x_08_01_00_36\tools\ccs_load\am64x_am243x\load_dmsc.js#194)" after running the "load_dmsc.js"" script.

    I did not face any such issue. Anyways to make your life easy you can use steps under Getting Started -> EVM Setup -> Flash SOC Binary Initialization

    The default_sbl_null.cfg that will get programmed as part of the setup steps will load dmsc firmware and perform DDR initialization automatically while booting. So you donot have to perform these steps manually by running ccs script.

    Hope that helps

  • Hi Rajat,

    Yes, the FDIC project I sent you had 7 MPU regions. Region 7 has the same attributes as region 6 has. I had to scroll down in the list of regions to find it.

    Do I not have to run both the load dmsc script or the DDR initialization scripts at startup? Just start debugging the application?

    Regards

  • Hi,

    Once you program the default_sbl_null.cfg and set boot mode to OSPI then you donot need to do any dmsc load or ddr init the sbl will do it.

    Yes, the FDIC project I sent you had 7 MPU regions. Region 7 has the same attributes as region 6 has. I had to scroll down in the list of regions to find it.

    I looked at the project again and i can see only MPU region 0-6 configured as shown in image below

    Regards

     

  • Hi Rajat,

    I programmed the new .cfg file and set the boot mode to OSPI. I also deleted CONFIG_MPU_REGION7. Now when I run I get stuck in LPDDR4_PollCtlIrq(). I ran several tests and always get the same result. 

    Regards

  • Hi,

    Can you comment out DDR_init() in ti_drivers_config.c or take it out from sysconfig as sbl is initializing and setting up DDR.

    Let me know if this resolves the issue.

    Regards

  • Hi Rajat,

    I removed the DDR setting from sysconfig and I seem to be running normally again. Thanks for all your help. One last (I hope) question: Which CONFIG_MPU_REGION is the DDR memory?

  • Hi Lee,

    I removed the DDR setting from sysconfig and I seem to be running normally again.

    Glad to know that all the issues are now resolved.

    One last (I hope) question: Which CONFIG_MPU_REGION is the DDR memory?

    Looking at your project it is MPU_REGION_5 that starts at address 0x80000000 with size 2GB.

    Let me know if this ticket can be closed.

    Regards

  • Thanks Rajat, for all your help. Yes, you can close the ticket. Have a great day.

    Regards,

    Lee