mirror of
https://gitee.com/Armink/EasyFlash.git
synced 2024-12-01 19:58:43 +08:00
针对ENV添加大小端MCU的适配
This commit is contained in:
parent
16056b8a01
commit
d3182370d7
@ -40,6 +40,9 @@
|
||||
* Please change it when your firmware add a new ENV to default_env_set.
|
||||
*/
|
||||
#define EF_ENV_VER_NUM /* @note you must define it for a value, such as 0 */
|
||||
|
||||
#define LITTLE_ENDIAN 1 /* @note you must define it reference to MCU Order*/
|
||||
|
||||
#endif /* EF_USING_ENV */
|
||||
|
||||
/* using IAP function */
|
||||
|
@ -495,7 +495,11 @@ static uint32_t find_next_env_addr(uint32_t start, uint32_t end)
|
||||
for (; start < end; start += (sizeof(buf) - sizeof(uint32_t))) {
|
||||
ef_port_read(start, (uint32_t *) buf, sizeof(buf));
|
||||
for (i = 0; i < sizeof(buf) - sizeof(uint32_t) && start + i < end; i++) {
|
||||
#if LITTLE_ENDIAN // Little Endian Order
|
||||
magic = buf[i] + (buf[i + 1] << 8) + (buf[i + 2] << 16) + (buf[i + 3] << 24);
|
||||
#else // Big Endian Order
|
||||
magic = buf[i + 3] + (buf[i + 2] << 8) + (buf[i + 1] << 16) + (buf[i] << 24);
|
||||
#endif
|
||||
if (magic == ENV_MAGIC_WORD && (start + i - ENV_MAGIC_OFFSET) >= start_bak) {
|
||||
return start + i - ENV_MAGIC_OFFSET;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user