Commit b2182cde authored by Yann Gautier's avatar Yann Gautier
Browse files

stm32mp1: check if the SoC is single core



Among the variants of STM32MP, the STM32MP151 is a single Cortex-A7 chip.
A function is added to check the part number of the SoC.
If it corresponds to STM32MP151A or STM32MP151C, then the chip has a single
Cortex-A7.

Change-Id: Icac2015c5d03ce0bcb8e99bbaf1ec8ada34be49c
Signed-off-by: default avatarYann Gautier <yann.gautier@st.com>
Signed-off-by: default avatarNicolas Le Bayon <nicolas.le.bayon@st.com>
Signed-off-by: default avatarLionel Debieve <lionel.debieve@st.com>
parent 10e7a9e9
......@@ -16,6 +16,8 @@
void stm32mp_save_boot_ctx_address(uintptr_t address);
uintptr_t stm32mp_get_boot_ctx_address(void);
bool stm32mp_is_single_core(void);
/* Return the base address of the DDR controller */
uintptr_t stm32mp_ddrctrl_base(void);
......
......@@ -254,6 +254,30 @@ void stm32mp_print_boardinfo(void)
}
}
/* Return true when SoC provides a single Cortex-A7 core, and false otherwise */
bool stm32mp_is_single_core(void)
{
uint32_t part_number;
bool ret = false;
if (get_part_number(&part_number) < 0) {
ERROR("Invalid part number, assume single core chip");
return true;
}
switch (part_number) {
case STM32MP151A_PART_NB:
case STM32MP151C_PART_NB:
ret = true;
break;
default:
break;
}
return ret;
}
uint32_t stm32_iwdg_get_instance(uintptr_t base)
{
switch (base) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment