arm: socfpga: spl: allow bootrom to enable IOs after warm reset

Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
Acked-by: Marek Vasut <marex@denx.de>
master
Dinh Nguyen 9 years ago committed by Marek Vasut
parent 9fd565dbe7
commit 08e463ee8a
  1. 3
      arch/arm/cpu/armv7/socfpga/spl.c
  2. 9
      arch/arm/cpu/armv7/socfpga/system_manager.c
  3. 1
      arch/arm/include/asm/arch-socfpga/system_manager.h

@ -154,6 +154,9 @@ void spl_board_init(void)
/* reconfigure the PLLs */
cm_basic_init(&cm_default_cfg);
/* Enable bootrom to configure IOs. */
sysmgr_enable_warmrstcfgio();
/* configure the IOCSR / IO buffer settings */
if (scan_mgr_configure_iocsr())
hang();

@ -66,3 +66,12 @@ void sysmgr_pinmux_init(void)
populate_sysmgr_fpgaintf_module();
}
/*
* This bit allows the bootrom to configure the IOs after a warm reset.
*/
void sysmgr_enable_warmrstcfgio(void)
{
setbits_le32(&sysmgr_regs->romcodegrp_ctrl,
SYSMGR_ROMCODEGRP_CTRL_WARMRSTCFGIO);
}

@ -10,6 +10,7 @@
#ifndef __ASSEMBLY__
void sysmgr_pinmux_init(void);
void sysmgr_enable_warmrstcfgio(void);
/* declaration for handoff table type */
extern unsigned long sys_mgr_init_table[CONFIG_HPS_PINMUX_NUM];

Loading…
Cancel
Save