blob: 334ad129a196385d2edfcdd1f5cb449c8d1720e2 [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>
12#include <plat/common/common_def.h>
13
Varun Wadekar71cb26e2015-08-07 10:03:00 +053014#include <tegra_def.h>
Varun Wadekar08438e22015-05-19 16:48:04 +053015
16/*******************************************************************************
17 * Generic platform constants
18 ******************************************************************************/
19
20/* Size of cacheable stacks */
Masahiro Yamada3d8256b2016-12-25 23:36:24 +090021#ifdef IMAGE_BL31
Varun Wadekar70cb6922017-04-24 14:17:12 -070022#define PLATFORM_STACK_SIZE U(0x400)
Varun Wadekar08438e22015-05-19 16:48:04 +053023#endif
24
Varun Wadekar70cb6922017-04-24 14:17:12 -070025#define TEGRA_PRIMARY_CPU U(0x0)
Varun Wadekar08438e22015-05-19 16:48:04 +053026
Varun Wadekar71cb26e2015-08-07 10:03:00 +053027#define PLAT_MAX_PWR_LVL MPIDR_AFFLVL2
Varun Wadekar43ec35e2015-08-12 09:24:50 +053028#define PLATFORM_CORE_COUNT (PLATFORM_CLUSTER_COUNT * \
29 PLATFORM_MAX_CPUS_PER_CLUSTER)
Varun Wadekar71cb26e2015-08-07 10:03:00 +053030#define PLAT_NUM_PWR_DOMAINS (PLATFORM_CORE_COUNT + \
Varun Wadekar43ec35e2015-08-12 09:24:50 +053031 PLATFORM_CLUSTER_COUNT + 1)
Varun Wadekar08438e22015-05-19 16:48:04 +053032
33/*******************************************************************************
34 * Platform console related constants
35 ******************************************************************************/
Varun Wadekar70cb6922017-04-24 14:17:12 -070036#define TEGRA_CONSOLE_BAUDRATE U(115200)
Harvey Hsieh322e7c32017-04-10 16:20:32 +080037#define TEGRA_BOOT_UART_CLK_13_MHZ U(13000000)
38#define TEGRA_BOOT_UART_CLK_408_MHZ U(408000000)
Varun Wadekar08438e22015-05-19 16:48:04 +053039
40/*******************************************************************************
41 * Platform memory map related constants
42 ******************************************************************************/
43/* Size of trusted dram */
Varun Wadekar70cb6922017-04-24 14:17:12 -070044#define TZDRAM_SIZE U(0x00400000)
Varun Wadekar08438e22015-05-19 16:48:04 +053045#define TZDRAM_END (TZDRAM_BASE + TZDRAM_SIZE)
46
47/*******************************************************************************
48 * BL31 specific defines.
49 ******************************************************************************/
Varun Wadekar70cb6922017-04-24 14:17:12 -070050#define BL31_SIZE U(0x40000)
Varun Wadekar08438e22015-05-19 16:48:04 +053051#define BL31_BASE TZDRAM_BASE
Varun Wadekardc7fdad2015-06-05 12:57:27 +053052#define BL31_LIMIT (TZDRAM_BASE + BL31_SIZE - 1)
53#define BL32_BASE (TZDRAM_BASE + BL31_SIZE)
54#define BL32_LIMIT TZDRAM_END
Varun Wadekar08438e22015-05-19 16:48:04 +053055
56/*******************************************************************************
Varun Wadekar08438e22015-05-19 16:48:04 +053057 * Some data must be aligned on the biggest cache line size in the platform.
58 * This is known only to the platform as it might have a combination of
59 * integrated and external caches.
60 ******************************************************************************/
61#define CACHE_WRITEBACK_SHIFT 6
Varun Wadekar70cb6922017-04-24 14:17:12 -070062#define CACHE_WRITEBACK_GRANULE (U(1) << CACHE_WRITEBACK_SHIFT)
Varun Wadekar08438e22015-05-19 16:48:04 +053063
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +000064#endif /* PLATFORM_DEF_H */