1*91f16700Schasinglulu/* 2*91f16700Schasinglulu * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu * 4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu#include <arch.h> 8*91f16700Schasinglulu#include <asm_macros.S> 9*91f16700Schasinglulu#include <sunxi_def.h> 10*91f16700Schasinglulu#include <sunxi_mmap.h> 11*91f16700Schasinglulu 12*91f16700Schasinglulu .globl plat_crash_console_init 13*91f16700Schasinglulu .globl plat_crash_console_putc 14*91f16700Schasinglulu .globl plat_crash_console_flush 15*91f16700Schasinglulu .globl plat_my_core_pos 16*91f16700Schasinglulu .globl platform_mem_init 17*91f16700Schasinglulu .globl plat_report_exception 18*91f16700Schasinglulu 19*91f16700Schasinglulufunc plat_crash_console_init 20*91f16700Schasinglulu mov_imm x0, SUNXI_UART0_BASE 21*91f16700Schasinglulu mov_imm x1, SUNXI_UART0_CLK_IN_HZ 22*91f16700Schasinglulu mov_imm x2, SUNXI_UART0_BAUDRATE 23*91f16700Schasinglulu b console_16550_core_init 24*91f16700Schasingluluendfunc plat_crash_console_init 25*91f16700Schasinglulu 26*91f16700Schasinglulufunc plat_crash_console_putc 27*91f16700Schasinglulu mov_imm x1, SUNXI_UART0_BASE 28*91f16700Schasinglulu b console_16550_core_putc 29*91f16700Schasingluluendfunc plat_crash_console_putc 30*91f16700Schasinglulu 31*91f16700Schasinglulufunc plat_crash_console_flush 32*91f16700Schasinglulu ret 33*91f16700Schasingluluendfunc plat_crash_console_flush 34*91f16700Schasinglulu 35*91f16700Schasinglulufunc plat_my_core_pos 36*91f16700Schasinglulu mrs x0, mpidr_el1 37*91f16700Schasinglulu and x1, x0, #MPIDR_CLUSTER_MASK 38*91f16700Schasinglulu and x0, x0, #MPIDR_CPU_MASK 39*91f16700Schasinglulu add x0, x0, x1, LSR #6 40*91f16700Schasinglulu ret 41*91f16700Schasingluluendfunc plat_my_core_pos 42*91f16700Schasinglulu 43*91f16700Schasinglulufunc platform_mem_init 44*91f16700Schasinglulu ret 45*91f16700Schasingluluendfunc platform_mem_init 46*91f16700Schasinglulu 47*91f16700Schasinglulufunc plat_report_exception 48*91f16700Schasinglulu ret 49*91f16700Schasingluluendfunc plat_report_exception 50