2 Replies Latest reply on Sep 14, 2020 6:52 AM by ivle_1343546

    [Host SDK] change application start address

    ivle_1343546

      CCG5 workspace incudes two projects:

      1). backup_fw ( image-0)

      2). CYPD5225 notebook ( image-1 )

       

      How to change image-1 start address and meta data address ?

        • 1. Re: [Host SDK] change application start address
          ShifangZ_26

          Hi Ivan,

           

          Before tell the parameters, I could like to introduce the latest CCG5 firmware structure at first, so that you can change the concerned parameters/define as per your requirements.

          So that the bootloader last row defined in the flash_config.h and com0gcc.ld is below for CCG5 project:

          1. In firmware project: (@file flash_config.h)

          /* Last Boot loader row. This field should be changed only when there is a

          * project level change. A change to this field should be synchronous with

          * the following fields:

          *   -> boot-loader cm0gcc.ld file configSection location:

          *      = ((CY_PD_BOOT_LOADER_LAST_ROW + 1) << CY_PD_FLASH_ROW_SHIFT_NUM)

          *   -> firmware boot-loadable component firmware start location:

          *      = (CY_PD_CONFIG_TABLE_ADDRESS + CY_PD_CONFIG_TABLE_SIZE) */

          #define CCG_BOOT_LOADER_LAST_ROW                (0x13)

           

           

          /* This MACRO defines the last row occupied by FW Image 1. FW Image 1 uses

          * this information to determine the section of flash assigned for FW Image 2. */

          #define CCG_IMG1_LAST_FLASH_ROW_NUM             (0x9F)

           

           

          /* This MACRO defines the last row occupied by FW Image 2. */

          #define CCG_IMG2_LAST_FLASH_ROW_NUM             (CCG_IMG2_METADATA_ROW_NUM - 1)

           

           

          /* Configuration table is located at a fixed offset of 0x100 from start of firmware location. */

          #define CCG_FW_CONFTABLE_OFFSET                 (0x100)

           

           

          /* Config table address boundary used to distinguish between FW1 and FW2. */

          #define CCG_FW1_CONFTABLE_MAX_ADDR              (0x8000)

           

          You shall update those defines of your project to match your design.

          2. cm0gcc.ld

          /*

          * Place the image at an offset of 0xC000. The space before is reserved for the

          * bootloader and back-up image.

          */

          CY_APPL_ORIGIN                  = 0xC000;

           

           

          CY_FLASH_ROW_SIZE               = 256;

          CY_APPL_NUM                     = 1;

          CY_APPL_MAX                     = 2;

          CY_METADATA_SIZE                = 64;

          CY_APPL_LOADABLE                = 1;

          CY_CHECKSUM_EXCLUDE_SIZE        = ALIGN(0, CY_FLASH_ROW_SIZE);

          CY_APP_FOR_STACK_AND_COPIER     = 0;

           

          Best Regards,

          Lisa

          • 2. Re: [Host SDK] change application start address
            ivle_1343546

            for example , i want change image1's start address to "row number 0xA5"

             

            I only need to modify below defines, correct??

            1. modify flash_config.h file, change  CCG_IMG1_LAST_FLASH_ROW_NUM   to 0xA5

            /* This MACRO defines the last row occupied by FW Image 1. FW Image 1 uses

            * this information to determine the section of flash assigned for FW Image 2. */

            #define CCG_IMG1_LAST_FLASH_ROW_NUM             (0xA5)      // (0xA2)

             

            2. modify cm0mdk.scat file, chagne CY_APP_ORIGIN to 0xA500

            #define CY_APPL_ORIGIN                  0xA500