mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-08-14 16:37:05 +02:00
- Removing platform dependencies from libc modules. - Replacing panicking with actual error handling. - Debug macros are included indirectly from assert.h. Removing "platform_def.h" from assert.h and adding "common/debug.h" where the macros are used. - Removing hack for fixing PLAT_LOG_LEVEL_ASSERT to 40. Instead removing assert with expression, as this does not provide additional information. Signed-off-by: Claus Pedersen <claustbp@google.com> Change-Id: Icc201ea7b63c1277e423c1cfd13fd6816c2bc568
83 lines
1.9 KiB
C
83 lines
1.9 KiB
C
/*
|
|
* Copyright (c) 2015 - 2020, Broadcom
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef CMN_PLAT_DEF_H
|
|
#define CMN_PLAT_DEF_H
|
|
|
|
#include <bcm_elog.h>
|
|
#include <platform_def.h>
|
|
|
|
#ifndef GET_LOG_LEVEL
|
|
#define GET_LOG_LEVEL() LOG_LEVEL
|
|
#endif
|
|
|
|
#ifndef SET_LOG_LEVEL
|
|
#define SET_LOG_LEVEL(x) ((void)(x))
|
|
#endif
|
|
|
|
#define PLAT_LOG_NOTICE(...) \
|
|
do { \
|
|
if (GET_LOG_LEVEL() >= LOG_LEVEL_NOTICE) { \
|
|
bcm_elog(LOG_MARKER_NOTICE __VA_ARGS__); \
|
|
tf_log(LOG_MARKER_NOTICE __VA_ARGS__); \
|
|
} \
|
|
} while (0)
|
|
|
|
#define PLAT_LOG_ERROR(...) \
|
|
do { \
|
|
if (GET_LOG_LEVEL() >= LOG_LEVEL_ERROR) { \
|
|
bcm_elog(LOG_MARKER_ERROR, __VA_ARGS__); \
|
|
tf_log(LOG_MARKER_ERROR __VA_ARGS__); \
|
|
} \
|
|
} while (0)
|
|
|
|
#define PLAT_LOG_WARN(...) \
|
|
do { \
|
|
if (GET_LOG_LEVEL() >= LOG_LEVEL_WARNING) { \
|
|
bcm_elog(LOG_MARKER_WARNING, __VA_ARGS__);\
|
|
tf_log(LOG_MARKER_WARNING __VA_ARGS__); \
|
|
} \
|
|
} while (0)
|
|
|
|
#define PLAT_LOG_INFO(...) \
|
|
do { \
|
|
if (GET_LOG_LEVEL() >= LOG_LEVEL_INFO) { \
|
|
bcm_elog(LOG_MARKER_INFO __VA_ARGS__); \
|
|
tf_log(LOG_MARKER_INFO __VA_ARGS__); \
|
|
} \
|
|
} while (0)
|
|
|
|
#define PLAT_LOG_VERBOSE(...) \
|
|
do { \
|
|
if (GET_LOG_LEVEL() >= LOG_LEVEL_VERBOSE) { \
|
|
bcm_elog(LOG_MARKER_VERBOSE __VA_ARGS__);\
|
|
tf_log(LOG_MARKER_VERBOSE __VA_ARGS__); \
|
|
} \
|
|
} while (0)
|
|
|
|
/*
|
|
* The number of regions like RO(code), coherent and data required by
|
|
* different BL stages which need to be mapped in the MMU.
|
|
*/
|
|
#if USE_COHERENT_MEM
|
|
#define CMN_BL_REGIONS 3
|
|
#else
|
|
#define CMN_BL_REGIONS 2
|
|
#endif
|
|
|
|
/*
|
|
* FIP definitions
|
|
*/
|
|
#define PLAT_FIP_ATTEMPT_OFFSET 0x20000
|
|
#define PLAT_FIP_NUM_ATTEMPTS 128
|
|
|
|
#define PLAT_BRCM_FIP_QSPI_BASE QSPI_BASE_ADDR
|
|
#define PLAT_BRCM_FIP_NAND_BASE NAND_BASE_ADDR
|
|
#define PLAT_BRCM_FIP_MAX_SIZE 0x01000000
|
|
|
|
#define PLAT_BRCM_FIP_BASE PLAT_BRCM_FIP_QSPI_BASE
|
|
#endif
|