mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-26 14:55:16 +00:00

This patch will provide an entrypoint for uboot's spl into BL31. BL31 will also handle secondary cpu state during uboot's cold boot Signed-off-by: Hadi Asyrafi <muhammad.hadi.asyrafi.abdul.halim@intel.com> Change-Id: I661bdb782c2d793d5fc3c7f78dd7ff746e33b7a3
66 lines
1.5 KiB
C
66 lines
1.5 KiB
C
/*
|
|
* Copyright (c) 2019, Intel Corporation. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef SOCFPGA_PRIVATE_H
|
|
#define SOCFPGA_PRIVATE_H
|
|
|
|
#include "socfpga_plat_def.h"
|
|
|
|
#define EMMC_DESC_SIZE (1<<20)
|
|
|
|
#define EMMC_INIT_PARAMS(base, clk) \
|
|
{ .bus_width = MMC_BUS_WIDTH_4, \
|
|
.clk_rate = (clk), \
|
|
.desc_base = (base), \
|
|
.desc_size = EMMC_DESC_SIZE, \
|
|
.flags = 0, \
|
|
.reg_base = SOCFPGA_MMC_REG_BASE \
|
|
}
|
|
|
|
typedef enum {
|
|
BOOT_SOURCE_FPGA = 0,
|
|
BOOT_SOURCE_SDMMC,
|
|
BOOT_SOURCE_NAND,
|
|
BOOT_SOURCE_RSVD,
|
|
BOOT_SOURCE_QSPI
|
|
} boot_source_type;
|
|
|
|
/*******************************************************************************
|
|
* Function and variable prototypes
|
|
******************************************************************************/
|
|
|
|
void enable_nonsecure_access(void);
|
|
|
|
void socfpga_io_setup(int boot_source);
|
|
|
|
void socfgpa_configure_mmu_el3(unsigned long total_base,
|
|
unsigned long total_size,
|
|
unsigned long ro_start,
|
|
unsigned long ro_limit,
|
|
unsigned long coh_start,
|
|
unsigned long coh_limit);
|
|
|
|
|
|
void socfpga_configure_mmu_el1(unsigned long total_base,
|
|
unsigned long total_size,
|
|
unsigned long ro_start,
|
|
unsigned long ro_limit,
|
|
unsigned long coh_start,
|
|
unsigned long coh_limit);
|
|
|
|
void socfpga_delay_timer_init(void);
|
|
|
|
void socfpga_gic_driver_init(void);
|
|
|
|
uint32_t socfpga_get_spsr_for_bl32_entry(void);
|
|
|
|
uint32_t socfpga_get_spsr_for_bl33_entry(void);
|
|
|
|
unsigned long socfpga_get_ns_image_entrypoint(void);
|
|
|
|
void plat_secondary_cpus_bl31_entry(void);
|
|
|
|
#endif /* SOCFPGA_PRIVATE_H */
|