fvp: Initialise UART earlier

The UART used to be initialised in bl1_platform_setup(). This is too
late because there are some calls to the assert() macro, which needs
to print some messages on the console, before that.

This patch moves the UART initialisation code to
bl1_early_platform_setup().

Fixes ARM-software/tf-issues#49

Change-Id: I98c83a803866372806d2a9c2e1ed80f2ef5b3bcc
This commit is contained in:
Sandrine Bailleux 2014-02-21 14:16:16 +00:00 committed by Dan Handley
parent 090630e4bc
commit 20d284c08d
2 changed files with 5 additions and 7 deletions

View File

@ -446,8 +446,8 @@ This function executes with the MMU and data caches enabled. It is responsible
for performing any remaining platform-specific setup that can occur after the
MMU and data cache have been enabled.
In the ARM FVP port, it zeros out the ZI section, enables the system level
implementation of the generic timer counter and initializes the console.
In the ARM FVP port, it zeros out the ZI section and enables the system level
implementation of the generic timer counter.
This function is also responsible for initializing the storage abstraction layer
which is used to load further bootloader images.

View File

@ -100,6 +100,9 @@ void bl1_early_platform_setup(void)
/* Initialize the platform config for future decision making */
platform_config_setup();
/* Initialize the console */
console_init(PL011_UART0_BASE);
}
/*******************************************************************************
@ -114,11 +117,6 @@ void bl1_platform_setup(void)
/* Enable and initialize the System level generic timer */
mmio_write_32(SYS_CNTCTL_BASE + CNTCR_OFF, CNTCR_EN);
/* Initialize the console */
console_init(PL011_UART0_BASE);
return;
}