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.

TMS320F28386S: Register assignments

Part Number: TMS320F28386S
Other Parts Discussed in Thread: C2000WARE

My project is in C under CCS.

Is there a file where registers like BOOTPIN_CONFIG, BOOT_DEF_LOW, and BOOT_DEF_HIGH are usually assigned?

Thanks,

John

  • John,

    If you are looking for some code where it uses that, then please take a look at Boot ROM code.

    C:/ti/c2000/C2000Ware_4_02_00_00/libraries/boot_rom/f2838x/revA/rom_sources/cpu1/F2838x_ROM/bootROM/source/cpu1brom_select_bootmode.c

    Thanks & Regards,

    Santosh

  • Hi Santosh,

    You have been a big help to me but perhaps my question was poorly formed. I need to change some of these values and thus I wanted to know where they are usually initialized.

  • Hi John,

    This register is in OTP. So you do not want to write this in your code. Usually, it is done in production environment. Please refer to Technical Reference Manual, section 5.4.3 for detailed sequence. I referred you to ROM code, so that you can see how ROM is using it to boot.

    Thanks & Regards,

    Santosh

  • Santosh,

    I have configured my board per TI document SPRACN1.

    In the file 2838x_flash_lnk_cpu1.cmd I have inserted the following at the beginning.

    // Per SPRACN1
    MEMORY
    {
    PAGE 0:
    DCSM_ZSEL_Z1_P0: origin = 0x07800C, length = 0x000002
    DCSM_ZSEL_Z1_P1: origin = 0x07801C, length = 0x000002
    }
    SECTIONS
    {
    dcsm_zsel_z1_1 : > DCSM_ZSEL_Z1_P0, PAGE = 0
    dcsm_zsel_z1_2 : > DCSM_ZSEL_Z1_P1, PAGE = 0
    }
    //End SPRACN1
    

    In source file I have this at the top:

    // Per SPRACN1
    #pragma RETAIN(otp_z1_data)
    #pragma DATA_SECTION(otp_z1_data,"dcsm_zsel_z1_1");
    const long otp_z1_data = 0x5AFFFF39; // GPIO567
    #pragma RETAIN(otp_z1_data_2)
    #pragma DATA_SECTION(otp_z1_data_2,"dcsm_zsel_z1_2");
    const long otp_z1_data_2 = 0xFFFF0103;
    // End SPRACN1

    And later in the code:

      GPIO_setPadConfig(57U, GPIO_PIN_TYPE_STD);
      GPIO_setDirectionMode(57U, GPIO_DIR_MODE_OUT);

    It seems to work. Does it look correct?

    Thanks,

    John

  • John,

    Looks good to me. 

    Regards, Santosh