Merge pull request #705 from bigbrett/tc3-self-update-fixes

Tc3 self-update fixes
pull/760/head
David Garske 2026-03-02 11:43:07 -08:00 committed by GitHub
commit 5075db7a10
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 13 additions and 8 deletions

View File

@ -1362,7 +1362,6 @@ ifeq ($(ARCH), AURIX_TC3)
# TC3xx specific
ifeq ($(TARGET), aurix_tc3xx)
USE_GCC?=1
ARCH_FLASH_OFFSET=0x00000000
CFLAGS += -I$(TC3_DIR) -Ihal
@ -1408,6 +1407,7 @@ ifeq ($(ARCH), AURIX_TC3)
endif
ifeq ($(AURIX_TC3_HSM),1)
ARCH_FLASH_OFFSET=0x80028000
# HSM compiler flags, build options, source code, etc
ifeq ($(USE_GCC),1)
# Just arm-none-eabi-gcc for now
@ -1476,6 +1476,7 @@ ifeq ($(ARCH), AURIX_TC3)
else
# Tricore compiler settings
ARCH_FLASH_OFFSET=0x800A0000
ifeq ($(USE_GCC),1)
HT_ROOT?=/opt/hightec/gnutri_v4.9.4.1-11fcedf-lin64
CROSS_COMPILE?=$(HT_ROOT)/bin/tricore-

View File

@ -348,9 +348,13 @@ void do_boot(const uint32_t* app_offset)
}
#endif
void arch_reboot(void)
RAMFUNCTION void arch_reboot(void)
{
#ifdef WOLFBOOT_AURIX_TC3XX_HSM
tc3arm_HsmBridgeSysReset();
#else
tc3_Scu_TriggerSwReset(1, WOLFBOOT_AURIX_RESET_REASON);
#endif
}
/* Programs unaligned input data to flash, assuming the underlying memory is
@ -612,15 +616,15 @@ int RAMFUNCTION hal_flash_erase(uint32_t address, int len)
/* If the IAP interface of the flash memory of the target requires it, this
* function is called before every write and erase operations to unlock write
* access to the flash. On some targets, this function may be empty. */
void hal_flash_unlock(void) {}
RAMFUNCTION void hal_flash_unlock(void) {}
/* If the IAP interface of the flash memory requires locking/unlocking, this
* function restores the flash write protection by excluding write accesses.
* This function is called by the bootloader at the end of every write and erase
* operations. */
void hal_flash_lock(void) {}
RAMFUNCTION void hal_flash_lock(void) {}
int ext_flash_write(uintptr_t address, const uint8_t* data, int len)
RAMFUNCTION int ext_flash_write(uintptr_t address, const uint8_t* data, int len)
{
return hal_flash_write(address, data, len);
}
@ -685,17 +689,17 @@ int RAMFUNCTION ext_flash_read(uintptr_t address, uint8_t* data, int len)
return 0;
}
int ext_flash_erase(uintptr_t address, int len)
RAMFUNCTION int ext_flash_erase(uintptr_t address, int len)
{
return hal_flash_erase(address, len);
}
void ext_flash_lock(void)
RAMFUNCTION void ext_flash_lock(void)
{
hal_flash_lock();
}
void ext_flash_unlock(void)
RAMFUNCTION void ext_flash_unlock(void)
{
hal_flash_unlock();
}