blob: eb55def4a509110ba57c69e42150ab97d790a942 [file] [log] [blame]
Varun Wadekar08438e22015-05-19 16:48:04 +05301/*
Steven Kao1d11f732018-02-09 20:50:02 +08002 * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved.
Varun Wadekar08438e22015-05-19 16:48:04 +05303 *
dp-arm82cb2c12017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Varun Wadekar08438e22015-05-19 16:48:04 +05305 */
6
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +00007#ifndef PLATFORM_DEF_H
8#define PLATFORM_DEF_H
Varun Wadekar08438e22015-05-19 16:48:04 +05309
10#include <arch.h>
Antonio Nino Diaz09d40e02018-12-14 00:18:21 +000011#include <lib/utils_def.h>
Antonio Nino Diaz09d40e02018-12-14 00:18:21 +000012
Varun Wadekar71cb26e2015-08-07 10:03:00 +053013#include <tegra_def.h>
Varun Wadekar08438e22015-05-19 16:48:04 +053014
Varun Wadekar9c2eda02018-12-21 10:55:42 -080015/*
16 * Platform binary types for linking
17 */
18#define PLATFORM_LINKER_FORMAT "elf64-littleaarch64"
19#define PLATFORM_LINKER_ARCH aarch64
20
Varun Wadekar08438e22015-05-19 16:48:04 +053021/*******************************************************************************
22 * Generic platform constants
23 ******************************************************************************/
24
25/* Size of cacheable stacks */
Masahiro Yamada3d8256b2016-12-25 23:36:24 +090026#ifdef IMAGE_BL31
Varun Wadekar70cb6922017-04-24 14:17:12 -070027#define PLATFORM_STACK_SIZE U(0x400)
Varun Wadekar08438e22015-05-19 16:48:04 +053028#endif
29
Varun Wadekar70cb6922017-04-24 14:17:12 -070030#define TEGRA_PRIMARY_CPU U(0x0)
Varun Wadekar08438e22015-05-19 16:48:04 +053031
Varun Wadekar71cb26e2015-08-07 10:03:00 +053032#define PLAT_MAX_PWR_LVL MPIDR_AFFLVL2
Varun Wadekar43ec35e2015-08-12 09:24:50 +053033#define PLATFORM_CORE_COUNT (PLATFORM_CLUSTER_COUNT * \
34 PLATFORM_MAX_CPUS_PER_CLUSTER)
Varun Wadekar71cb26e2015-08-07 10:03:00 +053035#define PLAT_NUM_PWR_DOMAINS (PLATFORM_CORE_COUNT + \
Varun Wadekar43ec35e2015-08-12 09:24:50 +053036 PLATFORM_CLUSTER_COUNT + 1)
Varun Wadekar08438e22015-05-19 16:48:04 +053037
38/*******************************************************************************
39 * Platform console related constants
40 ******************************************************************************/
Varun Wadekar70cb6922017-04-24 14:17:12 -070041#define TEGRA_CONSOLE_BAUDRATE U(115200)
Harvey Hsieh322e7c32017-04-10 16:20:32 +080042#define TEGRA_BOOT_UART_CLK_13_MHZ U(13000000)
43#define TEGRA_BOOT_UART_CLK_408_MHZ U(408000000)
Varun Wadekar08438e22015-05-19 16:48:04 +053044
45/*******************************************************************************
46 * Platform memory map related constants
47 ******************************************************************************/
48/* Size of trusted dram */
Varun Wadekar70cb6922017-04-24 14:17:12 -070049#define TZDRAM_SIZE U(0x00400000)
Varun Wadekar08438e22015-05-19 16:48:04 +053050#define TZDRAM_END (TZDRAM_BASE + TZDRAM_SIZE)
51
52/*******************************************************************************
53 * BL31 specific defines.
54 ******************************************************************************/
Varun Wadekar70cb6922017-04-24 14:17:12 -070055#define BL31_SIZE U(0x40000)
Varun Wadekar08438e22015-05-19 16:48:04 +053056#define BL31_BASE TZDRAM_BASE
Varun Wadekardc7fdad2015-06-05 12:57:27 +053057#define BL31_LIMIT (TZDRAM_BASE + BL31_SIZE - 1)
58#define BL32_BASE (TZDRAM_BASE + BL31_SIZE)
59#define BL32_LIMIT TZDRAM_END
Varun Wadekar08438e22015-05-19 16:48:04 +053060
61/*******************************************************************************
Varun Wadekar08438e22015-05-19 16:48:04 +053062 * Some data must be aligned on the biggest cache line size in the platform.
63 * This is known only to the platform as it might have a combination of
64 * integrated and external caches.
65 ******************************************************************************/
66#define CACHE_WRITEBACK_SHIFT 6
Kalyani Chidambaram636fcb02018-12-14 11:36:43 -080067#define CACHE_WRITEBACK_GRANULE (0x40) /* (U(1) << CACHE_WRITEBACK_SHIFT) */
Varun Wadekar08438e22015-05-19 16:48:04 +053068
Varun Wadekar8d56e242019-03-01 10:18:35 -080069/*******************************************************************************
70 * Dummy macros to compile io_storage support
71 ******************************************************************************/
72#define MAX_IO_DEVICES U(0)
73#define MAX_IO_HANDLES U(0)
74
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +000075#endif /* PLATFORM_DEF_H */