diff --git a/firmware/config/stm32f7ems/efifeatures.h b/firmware/config/stm32f7ems/efifeatures.h index dbacc90c30..cfeefaf1d8 100644 --- a/firmware/config/stm32f7ems/efifeatures.h +++ b/firmware/config/stm32f7ems/efifeatures.h @@ -56,6 +56,11 @@ #define EFI_USE_COMPRESSED_INI_MSD +// Disable ini ramdisk as a mitigation of https://github.com/rusefi/rusefi/issues/3775 +// See STM32F7.ld for more info +#undef EFI_EMBED_INI_MSD +#define EFI_EMBED_INI_MSD FALSE + #undef ENABLE_PERF_TRACE #define ENABLE_PERF_TRACE TRUE diff --git a/firmware/config/stm32h7ems/efifeatures.h b/firmware/config/stm32h7ems/efifeatures.h index 040e248974..014a1e794d 100644 --- a/firmware/config/stm32h7ems/efifeatures.h +++ b/firmware/config/stm32h7ems/efifeatures.h @@ -26,6 +26,9 @@ #define EFI_USE_COMPRESSED_INI_MSD +#undef EFI_EMBED_INI_MSD +#define EFI_EMBED_INI_MSD TRUE + // H7 has dual bank, so flash on its own (low priority) thread so as to not block any other operations #define EFI_FLASH_WRITE_THREAD TRUE diff --git a/firmware/hw_layer/ports/stm32/stm32f7/STM32F7.ld b/firmware/hw_layer/ports/stm32/stm32f7/STM32F7.ld index c0ab2184db..794453617e 100644 --- a/firmware/hw_layer/ports/stm32/stm32f7/STM32F7.ld +++ b/firmware/hw_layer/ports/stm32/stm32f7/STM32F7.ld @@ -27,7 +27,8 @@ MEMORY { bl : org = 0x08000000, len = 16k /* bootloader section */ - flash0 (rx) : org = DEFINED(BOOTLOADER) ? 0x08008000 : 0x08000000, len = DEFINED(BOOTLOADER) ? (768k - 32k) : 768k /* change address & length if bootloader */ + /* TODO: 512k flash limit is a mitigation for https://github.com/rusefi/rusefi/issues/3566 and https://github.com/rusefi/rusefi/issues/3775 */ + flash0 (rx) : org = DEFINED(BOOTLOADER) ? 0x08008000 : 0x08000000, len = DEFINED(BOOTLOADER) ? (512k - 32k) : 512k /* change address & length if bootloader */ flash1 (rx) : org = DEFINED(BOOTLOADER) ? 0x00208000 : 0x00200000, len = DEFINED(BOOTLOADER) ? (2m - 32k) : 2m /* Flash as ITCM */ flash2 (rx) : org = 0x00000000, len = 0 flash3 (rx) : org = 0x00000000, len = 0