mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-30 00:20:44 +09:00
iMX8M: Add support to enable CONFIG_IMX_HAB
Add some SOC level codes and build configurations to use HAB lib for CONFIG_IMX_HAB (secure boot), like adding the SEC_CONFIG fuse, enable fuse driver, CAAM clock function, and add CAAM secure RAM to MMU table. The FSL_CAAM is temporally not enabled for iMX8M when CONFIG_IMX_HAB is set, because we don't need the CAAM driver for SPL. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
This commit is contained in:
parent
3ca32d2430
commit
25d89d5535
@ -275,3 +275,4 @@ void enable_ocotp_clk(unsigned char enable);
|
|||||||
int enable_i2c_clk(unsigned char enable, unsigned int i2c_num);
|
int enable_i2c_clk(unsigned char enable, unsigned int i2c_num);
|
||||||
int set_clk_enet(enum enet_freq type);
|
int set_clk_enet(enum enet_freq type);
|
||||||
int set_clk_eqos(enum enet_freq type);
|
int set_clk_eqos(enum enet_freq type);
|
||||||
|
void hab_caam_clock_enable(unsigned char enable);
|
||||||
|
@ -43,7 +43,7 @@ config USE_IMXIMG_PLUGIN
|
|||||||
|
|
||||||
config IMX_HAB
|
config IMX_HAB
|
||||||
bool "Support i.MX HAB features"
|
bool "Support i.MX HAB features"
|
||||||
depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5
|
depends on ARCH_MX7 || ARCH_MX6 || ARCH_MX5 || ARCH_IMX8M
|
||||||
select FSL_CAAM if HAS_CAAM
|
select FSL_CAAM if HAS_CAAM
|
||||||
imply CMD_DEKBLOB
|
imply CMD_DEKBLOB
|
||||||
help
|
help
|
||||||
|
@ -16,6 +16,7 @@ endif
|
|||||||
obj-$(CONFIG_ENV_IS_IN_MMC) += mmc_env.o
|
obj-$(CONFIG_ENV_IS_IN_MMC) += mmc_env.o
|
||||||
obj-$(CONFIG_FEC_MXC) += mac.o
|
obj-$(CONFIG_FEC_MXC) += mac.o
|
||||||
obj-$(CONFIG_SYS_I2C_MXC) += i2c-mxv7.o
|
obj-$(CONFIG_SYS_I2C_MXC) += i2c-mxv7.o
|
||||||
|
obj-$(CONFIG_IMX_HAB) += hab.o
|
||||||
obj-y += cpu.o
|
obj-y += cpu.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -21,6 +21,14 @@ DECLARE_GLOBAL_DATA_PTR;
|
|||||||
static struct anamix_pll *ana_pll = (struct anamix_pll *)ANATOP_BASE_ADDR;
|
static struct anamix_pll *ana_pll = (struct anamix_pll *)ANATOP_BASE_ADDR;
|
||||||
|
|
||||||
static u32 get_root_clk(enum clk_root_index clock_id);
|
static u32 get_root_clk(enum clk_root_index clock_id);
|
||||||
|
|
||||||
|
#ifdef CONFIG_IMX_HAB
|
||||||
|
void hab_caam_clock_enable(unsigned char enable)
|
||||||
|
{
|
||||||
|
/* The CAAM clock is always on for iMX8M */
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void enable_ocotp_clk(unsigned char enable)
|
void enable_ocotp_clk(unsigned char enable)
|
||||||
{
|
{
|
||||||
clock_enable(CCGR_OCOTP, !!enable);
|
clock_enable(CCGR_OCOTP, !!enable);
|
||||||
|
@ -310,6 +310,13 @@ static u32 get_root_clk(enum clk_root_index clock_id)
|
|||||||
return root_src_clk / (post_podf + 1) / (pre_podf + 1);
|
return root_src_clk / (post_podf + 1) / (pre_podf + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_IMX_HAB
|
||||||
|
void hab_caam_clock_enable(unsigned char enable)
|
||||||
|
{
|
||||||
|
/* The CAAM clock is always on for iMX8M */
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_MXC_OCOTP
|
#ifdef CONFIG_MXC_OCOTP
|
||||||
void enable_ocotp_clk(unsigned char enable)
|
void enable_ocotp_clk(unsigned char enable)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user