mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
stm32mp1: stm32prog: remove stm32prog_get_tee_partitions with FIP
The MTD tee partitions used to save the OP-TEE binary are needed when TF-A doesn't use the FIP container to load binaries. This patch puts under CONFIG_STM32MP15x_STM32IMAGE flag the associated code in U-Boot binary and prepare the code cleanup when CONFIG_STM32MP15x_STM32IMAGE support will be removed after TF-A migration to FIP support. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
This commit is contained in:
parent
5b4c80284d
commit
f64d32a27a
4 changed files with 10 additions and 0 deletions
|
@ -185,6 +185,7 @@ U_BOOT_CMD(stm32prog, 5, 0, do_stm32prog,
|
||||||
" <size> = size of flashlayout (optional for image with STM32 header)\n"
|
" <size> = size of flashlayout (optional for image with STM32 header)\n"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
#ifdef CONFIG_STM32MP15x_STM32IMAGE
|
||||||
bool stm32prog_get_tee_partitions(void)
|
bool stm32prog_get_tee_partitions(void)
|
||||||
{
|
{
|
||||||
if (stm32prog_data)
|
if (stm32prog_data)
|
||||||
|
@ -192,6 +193,7 @@ bool stm32prog_get_tee_partitions(void)
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
bool stm32prog_get_fsbl_nor(void)
|
bool stm32prog_get_fsbl_nor(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -824,7 +824,9 @@ static int treat_partition_list(struct stm32prog_data *data)
|
||||||
INIT_LIST_HEAD(&data->dev[j].part_list);
|
INIT_LIST_HEAD(&data->dev[j].part_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_STM32MP15x_STM32IMAGE
|
||||||
data->tee_detected = false;
|
data->tee_detected = false;
|
||||||
|
#endif
|
||||||
data->fsbl_nor_detected = false;
|
data->fsbl_nor_detected = false;
|
||||||
for (i = 0; i < data->part_nb; i++) {
|
for (i = 0; i < data->part_nb; i++) {
|
||||||
part = &data->part_array[i];
|
part = &data->part_array[i];
|
||||||
|
@ -878,10 +880,12 @@ static int treat_partition_list(struct stm32prog_data *data)
|
||||||
/* fallthrough */
|
/* fallthrough */
|
||||||
case STM32PROG_NAND:
|
case STM32PROG_NAND:
|
||||||
case STM32PROG_SPI_NAND:
|
case STM32PROG_SPI_NAND:
|
||||||
|
#ifdef CONFIG_STM32MP15x_STM32IMAGE
|
||||||
if (!data->tee_detected &&
|
if (!data->tee_detected &&
|
||||||
!strncmp(part->name, "tee", 3))
|
!strncmp(part->name, "tee", 3))
|
||||||
data->tee_detected = true;
|
data->tee_detected = true;
|
||||||
break;
|
break;
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -122,7 +122,9 @@ struct stm32prog_data {
|
||||||
struct stm32prog_dev_t dev[STM32PROG_MAX_DEV]; /* array of device */
|
struct stm32prog_dev_t dev[STM32PROG_MAX_DEV]; /* array of device */
|
||||||
int part_nb; /* nb of partition */
|
int part_nb; /* nb of partition */
|
||||||
struct stm32prog_part_t *part_array; /* array of partition */
|
struct stm32prog_part_t *part_array; /* array of partition */
|
||||||
|
#ifdef CONFIG_STM32MP15x_STM32IMAGE
|
||||||
bool tee_detected;
|
bool tee_detected;
|
||||||
|
#endif
|
||||||
bool fsbl_nor_detected;
|
bool fsbl_nor_detected;
|
||||||
|
|
||||||
/* command internal information */
|
/* command internal information */
|
||||||
|
|
|
@ -11,6 +11,8 @@ int stm32prog_read_medium_virt(struct dfu_entity *dfu, u64 offset,
|
||||||
void *buf, long *len);
|
void *buf, long *len);
|
||||||
int stm32prog_get_medium_size_virt(struct dfu_entity *dfu, u64 *size);
|
int stm32prog_get_medium_size_virt(struct dfu_entity *dfu, u64 *size);
|
||||||
|
|
||||||
|
#ifdef CONFIG_STM32MP15x_STM32IMAGE
|
||||||
bool stm32prog_get_tee_partitions(void);
|
bool stm32prog_get_tee_partitions(void);
|
||||||
|
#endif
|
||||||
|
|
||||||
bool stm32prog_get_fsbl_nor(void);
|
bool stm32prog_get_fsbl_nor(void);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue