Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

Configuring, Changing, and Measuring Boot Wait Time for I2C Bootloader of CCGx Firmware – KBA228266

Configuring, Changing, and Measuring Boot Wait Time for I2C Bootloader of CCGx Firmware – KBA228266

ChaitanyaV_61
Employee
Employee
50 questions asked 25 likes received 25 sign-ins

Author: LisaZ_26           Version: **

Translation - Japanese: CCGxファームウェアのI2Cブートローダーの起動待機時間の設定、変更、および測定 – KBA228266 - Community Translated (JA)

Question 1: What is the default boot wait time for I2C bootloader?

Answer 1: Bootloader waits for a default timeout of 32 ms for I2C bootloader of CCG1/CCG2 and 50 ms for I2C bootloader of CCG3, CCG4, CCG4M, CCG5, and CCG6.

Question 2: Which macros are related to the boot wait window of I2C bootloader in the SDK firmware project?

Answer 2: The following macros in the boot.h file are related with the boot wait window of the I2C bootloader:

#define CCG_BL_WAIT_DEFAULT                             (50)

/**< Default boot-wait window for CCGx boot-loader: 50 ms */

#define CCG_BL_WAIT_MINIMUM                             (20)

/**< Minimum boot-wait window duration supported: 20 ms */

#define CCG_BL_WAIT_MAXIMUM                             (1000)

/**< Maximum boot-wait window duration supported: 1000 ms */

#define CCG_FWMETA_APPID_WAIT_DEF                       (0xFFFFu)

/**< FW metadata application ID value requesting default boot-wait window. */

#define CCG_FWMETA_APPID_WAIT_0                         (0x4359)

/**< FW metadata application ID value requesting a zero boot-wait window. */

Question 3: How do I change the tBootWait period from 50 ms to 0 ms in the firmware project?

Answer 3:  You can change the tBootWait period from 50 ms to 0 ms by changing the Application ID of the parameter “Bootoadable_1” from 0xFFFF to 0x4359 in the firmware project as shown in
Figure 1.

Figure 1. Changing Bootloadable_1 Parameter

   pastedImage_0.png

Question 4: How can I measure tBootWait in the system?

Answer 4: You can measure the tBootWait time period by adding a timer function. This function is called once the boot_start sequence initializes for a non-zero wait time defined by the variable boot_get_wait_time();.

See the following code snippet and the function timer_start() for more details.

pastedImage_5.png

0 Likes
314 Views
Contributors