Browse Source

hikey960: Use new console APIs

Switch to the new console APIs enabled by setting MULTI_CONSOLE_API=1.
Enables building with ERROR_DEPRECATED=1.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
pull/1674/head
Jerome Forissier 6 years ago
parent
commit
5189ea2750
  1. 6
      plat/hisilicon/hikey960/aarch64/hikey960_helpers.S
  2. 6
      plat/hisilicon/hikey960/hikey960_bl1_setup.c
  3. 6
      plat/hisilicon/hikey960/hikey960_bl2_setup.c
  4. 5
      plat/hisilicon/hikey960/hikey960_bl31_setup.c
  5. 7
      plat/hisilicon/hikey960/hikey960_pm.c
  6. 1
      plat/hisilicon/hikey960/platform.mk

6
plat/hisilicon/hikey960/aarch64/hikey960_helpers.S

@ -50,7 +50,7 @@ func plat_crash_console_init
mov_imm x0, CRASH_CONSOLE_BASE
mov_imm x1, PL011_UART_CLK_IN_HZ
mov_imm x2, PL011_BAUDRATE
b console_core_init
b console_pl011_core_init
endfunc plat_crash_console_init
/* ---------------------------------------------
@ -62,7 +62,7 @@ endfunc plat_crash_console_init
*/
func plat_crash_console_putc
mov_imm x1, CRASH_CONSOLE_BASE
b console_core_putc
b console_pl011_core_putc
endfunc plat_crash_console_putc
/* ---------------------------------------------
@ -75,7 +75,7 @@ endfunc plat_crash_console_putc
*/
func plat_crash_console_flush
mov_imm x0, CRASH_CONSOLE_BASE
b console_core_flush
b console_pl011_core_flush
endfunc plat_crash_console_flush
/* ---------------------------------------------

6
plat/hisilicon/hikey960/hikey960_bl1_setup.c

@ -7,7 +7,6 @@
#include <arch_helpers.h>
#include <assert.h>
#include <bl_common.h>
#include <console.h>
#include <debug.h>
#include <delay_timer.h>
#include <dw_ufs.h>
@ -17,6 +16,7 @@
#include <hi3660.h>
#include <interrupt_props.h>
#include <mmio.h>
#include <pl011.h>
#include <platform.h>
#include <platform_def.h>
#include <string.h>
@ -40,6 +40,7 @@ enum {
/* Data structure which holds the extents of the trusted RAM for BL1 */
static meminfo_t bl1_tzram_layout;
static console_pl011_t console;
/******************************************************************************
* On a GICv2 system, the Group 1 secure interrupts are treated as Group 0
@ -78,7 +79,8 @@ void bl1_early_platform_setup(void)
else
uart_base = PL011_UART6_BASE;
/* Initialize the console to provide early debug support */
console_init(uart_base, PL011_UART_CLK_IN_HZ, PL011_BAUDRATE);
console_pl011_register(uart_base, PL011_UART_CLK_IN_HZ,
PL011_BAUDRATE, &console);
/* Allow BL1 to see the whole Trusted RAM */
bl1_tzram_layout.total_base = BL1_RW_BASE;

6
plat/hisilicon/hikey960/hikey960_bl2_setup.c

@ -7,7 +7,6 @@
#include <arch_helpers.h>
#include <assert.h>
#include <bl_common.h>
#include <console.h>
#include <debug.h>
#include <delay_timer.h>
#include <desc_image_load.h>
@ -19,6 +18,7 @@
#ifdef SPD_opteed
#include <optee_utils.h>
#endif
#include <pl011.h>
#include <platform_def.h>
#include <string.h>
#include <ufs.h>
@ -48,6 +48,7 @@
#define BL2_COHERENT_RAM_LIMIT (unsigned long)(&__COHERENT_RAM_END__)
static meminfo_t bl2_el3_tzram_layout;
static console_pl011_t console;
extern int load_lpm3(void);
enum {
@ -296,7 +297,8 @@ void bl2_el3_early_platform_setup(u_register_t arg1, u_register_t arg2,
else
uart_base = PL011_UART6_BASE;
/* Initialize the console to provide early debug support */
console_init(uart_base, PL011_UART_CLK_IN_HZ, PL011_BAUDRATE);
console_pl011_register(uart_base, PL011_UART_CLK_IN_HZ,
PL011_BAUDRATE, &console);
/*
* Allow BL2 to see the whole Trusted RAM.
*/

5
plat/hisilicon/hikey960/hikey960_bl31_setup.c

@ -17,6 +17,7 @@
#include <hisi_ipc.h>
#include <interrupt_mgmt.h>
#include <interrupt_props.h>
#include <pl011.h>
#include <platform.h>
#include <platform_def.h>
@ -44,6 +45,7 @@
static entry_point_info_t bl32_ep_info;
static entry_point_info_t bl33_ep_info;
static console_pl011_t console;
/******************************************************************************
* On a GICv2 system, the Group 1 secure interrupts are treated as Group 0
@ -96,7 +98,8 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
uart_base = PL011_UART6_BASE;
/* Initialize the console to provide early debug support */
console_init(uart_base, PL011_UART_CLK_IN_HZ, PL011_BAUDRATE);
console_pl011_register(uart_base, PL011_UART_CLK_IN_HZ,
PL011_BAUDRATE, &console);
/* Initialize CCI driver */
cci_init(CCI400_REG_BASE, cci_map, ARRAY_SIZE(cci_map));

7
plat/hisilicon/hikey960/hikey960_pm.c

@ -7,13 +7,13 @@
#include <arch_helpers.h>
#include <assert.h>
#include <cci.h>
#include <console.h>
#include <debug.h>
#include <delay_timer.h>
#include <gicv2.h>
#include <hi3660.h>
#include <hi3660_crg.h>
#include <mmio.h>
#include <pl011.h>
#include <psci.h>
#include "drivers/pwrc/hisi_pwrc.h"
@ -31,6 +31,7 @@
#define AXI_CONF_BASE 0x820
static unsigned int uart_base;
static console_pl011_t console;
static uintptr_t hikey960_sec_entrypoint;
static void hikey960_pwr_domain_standby(plat_local_state_t cpu_state)
@ -268,8 +269,8 @@ hikey960_pwr_domain_suspend_finish(const psci_power_state_t *target_state)
if (hisi_test_ap_suspend_flag(cluster)) {
hikey960_sr_dma_reinit();
gicv2_cpuif_enable();
console_init(uart_base, PL011_UART_CLK_IN_HZ,
PL011_BAUDRATE);
console_pl011_register(uart_base, PL011_UART_CLK_IN_HZ,
PL011_BAUDRATE, &console);
}
hikey960_pwr_domain_on_finish(target_state);

1
plat/hisilicon/hikey960/platform.mk

@ -17,6 +17,7 @@ else
$(error "Currently unsupported HIKEY960_TSP_RAM_LOCATION value")
endif
MULTI_CONSOLE_API := 1
CRASH_CONSOLE_BASE := PL011_UART6_BASE
COLD_BOOT_SINGLE_CPU := 1
PLAT_PL061_MAX_GPIOS := 176

Loading…
Cancel
Save