diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml
index 8335ee1b6a..2af404fba5 100644
--- a/.github/workflows/action.yml
+++ b/.github/workflows/action.yml
@@ -140,6 +140,7 @@ jobs:
- name: Install Tools
shell: bash
run: |
+ sudo apt-get update
sudo apt-get -qq install gcc-multilib libsdl-dev scons
echo "RTT_ROOT=${{ github.workspace }}" >> $GITHUB_ENV
echo "RTT_CC=gcc" >> $GITHUB_ENV
diff --git a/bsp/stm32/libraries/STM32MPxx_HAL/SConscript b/bsp/stm32/libraries/STM32MPxx_HAL/SConscript
index 9e1d85e005..447ecaaa1f 100644
--- a/bsp/stm32/libraries/STM32MPxx_HAL/SConscript
+++ b/bsp/stm32/libraries/STM32MPxx_HAL/SConscript
@@ -104,10 +104,6 @@ if GetDepend(['BSP_USING_DFSDM']):
src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_hal_dfsdm.c']
src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_hal_dfsdm_ex.c']
-if GetDepend(['BSP_USING_SDMMC']):
- src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_ll_sdmmc.c']
- src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_hal_sd.c']
-
if GetDepend(['BSP_USING_HASH']):
src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_hal_hash.c']
src += ['STM32MP1xx_HAL_Driver/Src/stm32mp1xx_hal_hash_ex.c']
diff --git a/bsp/stm32/stm32mp157a-st-discovery/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c b/bsp/stm32/stm32mp157a-st-discovery/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
index 2ddf367caa..3a6fac25d7 100644
--- a/bsp/stm32/stm32mp157a-st-discovery/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
+++ b/bsp/stm32/stm32mp157a-st-discovery/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
@@ -74,10 +74,10 @@ void HAL_MspInit(void)
/* System interrupt init*/
/* USER CODE BEGIN MspInit 1 */
-#if !defined(BSP_USING_OPENAMP)
- __HAL_RCC_SYSRAM_CLK_ENABLE();
- __HAL_RCC_RETRAM_CLK_ENABLE();
-#endif
+ if (IS_ENGINEERING_BOOT_MODE())
+ {
+ __HAL_RCC_SYSRAM_CLK_ENABLE();
+ }
HAL_NVIC_SetPriority(RCC_WAKEUP_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(RCC_WAKEUP_IRQn);
diff --git a/bsp/stm32/stm32mp157a-st-discovery/board/board.h b/bsp/stm32/stm32mp157a-st-discovery/board/board.h
index 18cab2141c..2472d96400 100644
--- a/bsp/stm32/stm32mp157a-st-discovery/board/board.h
+++ b/bsp/stm32/stm32mp157a-st-discovery/board/board.h
@@ -23,23 +23,22 @@ extern "C" {
#endif
#define STM32_FLASH_START_ADRESS ((uint32_t)0x10000000)
-#if defined(BSP_USING_OPENAMP)
-#define STM32_FLASH_SIZE (64 * 1024)
-#else
-#define STM32_FLASH_SIZE (256 * 1024)
-#endif
+#define STM32_FLASH_SIZE (192 * 1024)
#define STM32_FLASH_END_ADDRESS ((uint32_t)(STM32_FLASH_START_ADRESS + STM32_FLASH_SIZE))
+
+#define STM32_SRAM_SIZE (64)
+#define STM32_SRAM_END (0x10030000 + 64 * 1024)
-
-#if defined(BSP_USING_OPENAMP)
-#define STM32_SRAM_BEGIN (uint32_t)0x10030000
+#if defined(__CC_ARM) || defined(__CLANG_ARM)
+extern int Image$$RW_IRAM1$$ZI$$Limit;
+#define HEAP_BEGIN (&Image$$RW_IRAM1$$ZI$$Limit)
+#elif __ICCARM__
+#pragma section="CSTACK"
+#define HEAP_BEGIN (__segment_end("CSTACK"))
#else
-#define STM32_SRAM_BEGIN (uint32_t)0x2FFF0000
+extern int __bss_end;
+#define HEAP_BEGIN (&__bss_end)
#endif
-#define STM32_SRAM_SIZE (64)
-#define STM32_SRAM_END (STM32_SRAM_BEGIN + (STM32_SRAM_SIZE * 1024))
-
-#define HEAP_BEGIN STM32_SRAM_BEGIN
#define HEAP_END STM32_SRAM_END
void SystemClock_Config(void);
@@ -51,4 +50,3 @@ extern void _Error_Handler(char *s, int num);
#endif
#endif
-
diff --git a/bsp/stm32/stm32mp157a-st-discovery/board/linker_scripts/link.sct b/bsp/stm32/stm32mp157a-st-discovery/board/linker_scripts/link.sct
index df7bcadf06..a64b8cc98b 100644
--- a/bsp/stm32/stm32mp157a-st-discovery/board/linker_scripts/link.sct
+++ b/bsp/stm32/stm32mp157a-st-discovery/board/linker_scripts/link.sct
@@ -8,28 +8,20 @@ LR_VECTORS 0x00000000 0x00000400 { ; load region size_region
}
}
-LR_IROM1 0x10000000 0x00020000 { ; load region size_region
- ER_IROM1 0x10000000 0x00020000 { ; load address = execution address
+LR_IROM1 0x10000000 0x00030000 { ; load region size_region
+ ER_IROM1 0x10000000 0x00030000 { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
.ANY (+XO)
}
- RW_IRAM1 0x10020000 0x00050000 { ; RW data
+ RW_IRAM1 0x10030000 0x00010000 { ; RW data
.ANY (+RW +ZI)
}
-; RW_IRAM2 0x10020000 0x00020000 { ; RW data
-; .ANY (+RW +ZI)
-; }
-; RW_IRAM3 0x10040000 0x00010000 { ; RW data
-; .ANY (+RW +ZI)
-; }
-; RW_IRAM4 0x10050000 0x00010000 { ; RW data
-; .ANY (+RW +ZI)
-; }
-; ***** To uncomment these 4 lines if OPENAMP used *****
-; *** Create region for OPENAMP ***
+
+
+; ***** Create region for OPENAMP *****
+; *** These 4 lines can be commented if OPENAMP is not used *****
.resource_table +0 ALIGN 4 { ; resource table
*(.resource_table)
- }
- __OpenAMP_SHMEM__ 0x10050000 EMPTY 0x8000 {} ; Shared Memory area used by OpenAMP
+ } __OpenAMP_SHMEM__ 0x10040000 EMPTY 0x8000 {} ; Shared Memory area used by OpenAMP
}
diff --git a/bsp/stm32/stm32mp157a-st-discovery/template.uvoptx b/bsp/stm32/stm32mp157a-st-discovery/template.uvoptx
index cd7d5cc09b..b43797349c 100644
--- a/bsp/stm32/stm32mp157a-st-discovery/template.uvoptx
+++ b/bsp/stm32/stm32mp157a-st-discovery/template.uvoptx
@@ -10,7 +10,7 @@
*.s*; *.src; *.a*
*.obj; *.o
*.lib
- *.txt; *.h; *.inc
+ *.txt; *.h; *.inc; *.md
*.plm
*.cpp
0
@@ -125,7 +125,7 @@
0
ST-LINKIII-KEIL_SWO
- -U066DFF343339415043182234 -O206 -SF10000 -C0 -A2 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(6BA02477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD10020000 -FC1000 -FN0
+ -U0666FF343339415043182420 -O206 -SF10000 -C0 -A2 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP") -D00(6BA02477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD10030000 -FC1000 -FN0
diff --git a/bsp/stm32/stm32mp157a-st-discovery/template.uvprojx b/bsp/stm32/stm32mp157a-st-discovery/template.uvprojx
index bc7e6847ac..8c076e73ef 100644
--- a/bsp/stm32/stm32mp157a-st-discovery/template.uvprojx
+++ b/bsp/stm32/stm32mp157a-st-discovery/template.uvprojx
@@ -276,7 +276,7 @@
1
0x10000000
- 0x20000
+ 0x30000
1
@@ -300,8 +300,8 @@
0
- 0x10020000
- 0x20000
+ 0x10030000
+ 0x10000
0
@@ -397,11 +397,6 @@
<Project Info>
-
-
-
-
-
0
1
diff --git a/bsp/stm32/stm32mp157a-st-ev1/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c b/bsp/stm32/stm32mp157a-st-ev1/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
index 6442f98075..20f6aa2d63 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
+++ b/bsp/stm32/stm32mp157a-st-ev1/board/CubeMX_Config/CM4/Src/stm32mp1xx_hal_msp.c
@@ -81,10 +81,10 @@ void HAL_MspInit(void)
/* System interrupt init*/
/* USER CODE BEGIN MspInit 1 */
-#if !defined(BSP_USING_OPENAMP)
- __HAL_RCC_SYSRAM_CLK_ENABLE();
- __HAL_RCC_RETRAM_CLK_ENABLE();
-#endif
+ if (IS_ENGINEERING_BOOT_MODE())
+ {
+ __HAL_RCC_SYSRAM_CLK_ENABLE();
+ }
HAL_NVIC_SetPriority(RCC_WAKEUP_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(RCC_WAKEUP_IRQn);
diff --git a/bsp/stm32/stm32mp157a-st-ev1/board/Kconfig b/bsp/stm32/stm32mp157a-st-ev1/board/Kconfig
index d049daa951..34fec1bea5 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/board/Kconfig
+++ b/bsp/stm32/stm32mp157a-st-ev1/board/Kconfig
@@ -77,7 +77,7 @@ menu "Onboard Peripheral Drivers"
if BSP_USING_EMMC
config EMMC_USING_DFS
bool "emmc card fatfs"
- default n
+ default y
endif
endif
diff --git a/bsp/stm32/stm32mp157a-st-ev1/board/board.c b/bsp/stm32/stm32mp157a-st-ev1/board/board.c
index 0a7bda208a..362250de22 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/board/board.c
+++ b/bsp/stm32/stm32mp157a-st-ev1/board/board.c
@@ -12,6 +12,7 @@
#include "board.h"
+void PeriphCommonClock_Config(void);
/**
* @brief System Clock Configuration
* @retval None
@@ -124,6 +125,12 @@ void SystemClock_Config(void)
/**Set the HSE division factor for RTC clock
*/
__HAL_RCC_RTC_HSEDIV(24);
+
+ /* Configure the peripherals common clocks */
+ if(IS_ENGINEERING_BOOT_MODE())
+ {
+ PeriphCommonClock_Config();
+ }
}
diff --git a/bsp/stm32/stm32mp157a-st-ev1/board/board.h b/bsp/stm32/stm32mp157a-st-ev1/board/board.h
index 81cdaa92fb..334eea4f5c 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/board/board.h
+++ b/bsp/stm32/stm32mp157a-st-ev1/board/board.h
@@ -23,18 +23,23 @@ extern "C" {
#endif
#define STM32_FLASH_START_ADRESS ((uint32_t)0x10000000)
-#define STM32_FLASH_SIZE (191 * 1024)
+#define STM32_FLASH_SIZE (192 * 1024)
#define STM32_FLASH_END_ADDRESS ((uint32_t)(STM32_FLASH_START_ADRESS + STM32_FLASH_SIZE))
-#if defined(BSP_USING_OPENAMP)
-#define STM32_SRAM_BEGIN (uint32_t)0x10030000
-#else
-#define STM32_SRAM_BEGIN (uint32_t)0x2FFF0000
-#endif
-#define STM32_SRAM_SIZE (64)
-#define STM32_SRAM_END (STM32_SRAM_BEGIN + (STM32_SRAM_SIZE * 1024))
-#define HEAP_BEGIN STM32_SRAM_BEGIN
+#define STM32_SRAM_SIZE (64)
+#define STM32_SRAM_END (0x10030000 + 64 * 1024)
+
+#if defined(__CC_ARM) || defined(__CLANG_ARM)
+extern int Image$$RW_IRAM1$$ZI$$Limit;
+#define HEAP_BEGIN (&Image$$RW_IRAM1$$ZI$$Limit)
+#elif __ICCARM__
+#pragma section="CSTACK"
+#define HEAP_BEGIN (__segment_end("CSTACK"))
+#else
+extern int __bss_end;
+#define HEAP_BEGIN (&__bss_end)
+#endif
#define HEAP_END STM32_SRAM_END
void SystemClock_Config(void);
@@ -46,4 +51,3 @@ extern void _Error_Handler(char *s, int num);
#endif
#endif
-
diff --git a/bsp/stm32/stm32mp157a-st-ev1/board/linker_scripts/link.sct b/bsp/stm32/stm32mp157a-st-ev1/board/linker_scripts/link.sct
index 40d9679d17..a64b8cc98b 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/board/linker_scripts/link.sct
+++ b/bsp/stm32/stm32mp157a-st-ev1/board/linker_scripts/link.sct
@@ -8,20 +8,20 @@ LR_VECTORS 0x00000000 0x00000400 { ; load region size_region
}
}
-LR_IROM1 0x10000000 0x00040000 { ; load region size_region
- ER_IROM1 0x10000000 0x00040000 { ; load address = execution address
+LR_IROM1 0x10000000 0x00030000 { ; load region size_region
+ ER_IROM1 0x10000000 0x00030000 { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
.ANY (+XO)
}
- RW_IRAM1 0x10050000 0x00010000 { ; RW data
+ RW_IRAM1 0x10030000 0x00010000 { ; RW data
.ANY (+RW +ZI)
}
-;; ***** Create region for OPENAMP *****
-;; *** These 4 lines can be commented if OPENAMP is not used *****
-; .resource_table +0 ALIGN 4 { ; resource table
-; *(.resource_table)
-; } __OpenAMP_SHMEM__ 0x10040000 EMPTY 0x8000 {} ; Shared Memory area used by OpenAMP
+; ***** Create region for OPENAMP *****
+; *** These 4 lines can be commented if OPENAMP is not used *****
+ .resource_table +0 ALIGN 4 { ; resource table
+ *(.resource_table)
+ } __OpenAMP_SHMEM__ 0x10040000 EMPTY 0x8000 {} ; Shared Memory area used by OpenAMP
}
diff --git a/bsp/stm32/stm32mp157a-st-ev1/template.uvoptx b/bsp/stm32/stm32mp157a-st-ev1/template.uvoptx
index e3a94d45ec..69cfe32b14 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/template.uvoptx
+++ b/bsp/stm32/stm32mp157a-st-ev1/template.uvoptx
@@ -10,7 +10,7 @@
*.s*; *.src; *.a*
*.obj; *.o
*.lib
- *.txt; *.h; *.inc
+ *.txt; *.h; *.inc; *.md
*.plm
*.cpp
0
@@ -125,7 +125,7 @@
0
ST-LINKIII-KEIL_SWO
- -U066BFF343339415043223048 -O206 -SF10000 -C0 -A2 -I0 -HNlocalhost -HP7184 -P1 -N00("") -D00(00000000) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD10050000 -FC1000 -FN0
+ -U0666FF343339415043182420 -O206 -SF10000 -C0 -A2 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP") -D00(6BA02477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD10030000 -FC1000 -FN0
diff --git a/bsp/stm32/stm32mp157a-st-ev1/template.uvprojx b/bsp/stm32/stm32mp157a-st-ev1/template.uvprojx
index fc88195dc1..db224b3468 100644
--- a/bsp/stm32/stm32mp157a-st-ev1/template.uvprojx
+++ b/bsp/stm32/stm32mp157a-st-ev1/template.uvprojx
@@ -276,7 +276,7 @@
1
0x10000000
- 0x40000
+ 0x30000
1
@@ -300,13 +300,13 @@
0
- 0x10050000
+ 0x10030000
0x10000
0
- 0x0
- 0x0
+ 0x10040000
+ 0x20000
@@ -397,11 +397,6 @@
<Project Info>
-
-
-
-
-
0
1