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.

TMDS62LEVM: (RTOS eMMC) will enable boot from eMMC uda be supported in later SDK release?

Part Number: TMDS62LEVM

Tool/software:

Hi,

I am playing around to enable different boot options for ECSD[179], seems currently enable UDA is not supported by the SDK, should I write my own or Ti will provide a function to enable it?

Thank you,

Dazong

  • Hi Prashant,

    I went to the link, and I think you are referring this function?

    The API supports to enable boot 1 and boot 2, but no UDA since partitionNum == 7 is not handled.

    Thanks,

    Dazong

  • Hi Dazong,

    The API I referred to is "MMCSD_disableBootPartition". This enables only the access to the UDA partition for R/W at run time. If you want to enable booting from the UDA RAW bootmode, you could modify this API to program the BOOT_PARTITION_ENABLE bits as well with a value of 0x7.

    Regards,

    Prashant

  • Hi Prashant,
    Enable boot partition and disable boot partition APIs are mostly same. I modified enable boot partition API to this:
    if((partitionNum == 1) || (partitionNum == 2) || (partitionNum == 7))
    When I tried partitionNum 7, seems something went wrong by reading ECSD[179]
    if(MMCSD_enableBootPartition(g_nand_config.hmmcsd, partition_num) != SystemP_SUCCESS)
    {
    	error("enable boot parititon config %d failed\n", partition_num);
    	fail = true;
    }
    
    else 
    {
    	nandflash_ReadECSD(&g_nand_config);
    	info("boot partition is 0x%02x\n", gEmmcData0.ECSD[179]);
    	
    	if( ((gEmmcData0.ECSD[179] >> 3) & partition_num) != partition_num)
    	{
    		fail = true;
    		error("expect boot partition %d, read %d\n", partition_num, (gEmmcData0.ECSD[179] >> 3) & 0x7);
    	}
    }
    
    
    <ERROR> expect boot partition 7, read 0
    I went into the function a little bit more, seems the issue is caused by this field:
    Bit[2:0] : PARTITION_ACCESS (before BOOT_PARTITION_ACCESS, R/W/E_P)
    uint8_t bootPartition = ((bootAck << 6U) | (partitionNum << 3));// | partitionNum);
    Can Ti add support for enable UDA in a patch or next release?
    Thanks,
    Dazong
  • Prashant -

     I just found what the eMMC UDA (User Data Area) is; in Dazong's last question "Can Ti add support for enable UDA in a patch or next release?" - I'm thinking that if the Sitara team enables this for the MCU+ SDKs in FreeRTOS, then we should also consider the same for the future v12.0 Linux SDKs {unless this question raised is on the Linux SDKs originally)

    thanks

    Jim