hv: uart: enable early boot uart

Enable uart as early as possible to make things easier for debugging.
After this we could use printf to output information to the uart. As for
pr_xxx APIs, they start to work when init_logmsg is called.

Tracked-On: #2987
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
This commit is contained in:
Li, Fei1
2019-07-24 17:50:27 +08:00
committed by ACRN System Integration
parent 3945bc4c40
commit cc47dbe769
6 changed files with 26 additions and 9 deletions

View File

@@ -26,6 +26,7 @@
#include <cat.h>
#include <vboot.h>
#include <sgx.h>
#include <uart16550.h>
#define CPU_UP_TIMEOUT 100U /* millisecond */
#define CPU_DOWN_TIMEOUT 100U /* millisecond */
@@ -106,6 +107,14 @@ void init_pcpu_pre(bool is_bsp)
/* Clear BSS */
(void)memset(&ld_bss_start, 0U, (size_t)(&ld_bss_end - &ld_bss_start));
(void)parse_hv_cmdline();
/*
* WARNNING: here assume that vaddr2paddr is identical mapping.
* Enable UART as early as possible.
* Then we could use printf for debugging on early boot stage.
*/
uart16550_init(true);
/* Get CPU capabilities thru CPUID, including the physical address bit
* limit which is required for initializing paging.
*/