aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew F. Davis2020-12-12 02:15:42 -0600
committerPraneeth Bajjuri2020-12-12 15:06:52 -0600
commit65dd16b4ea5032752af62e94ca64cff41733a123 (patch)
tree364825c29e1335cb62f6939ffa519754b45c8db0
parentfe3b2219e5ccd434eb6bcfb1397dfa3fb69ed747 (diff)
downloadarm-trusted-firmware-65dd16b4ea5032752af62e94ca64cff41733a123.tar.gz
arm-trusted-firmware-65dd16b4ea5032752af62e94ca64cff41733a123.tar.xz
arm-trusted-firmware-65dd16b4ea5032752af62e94ca64cff41733a123.zip
Add device support for the 'lite' K3 devices. These will use modified device addresses and allow for fewer cores to save memory. Note: This family of devices are characterized by a single cluster of ARMv8 processor upto a max of 4 processors and lack of a level 3 cache. The first generation of this family is introduced with AM642. See AM64X Technical Reference Manual (SPRUIM2, Nov 2020) for further details: https://www.ti.com/lit/pdf/spruim2 Signed-off-by: Andrew F. Davis <afd@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Change-Id: I8cd2c1c9a9434646d0c72fca3162dd5bc9bd692a Reviewed-by: Suman Anna <s-anna@ti.com> Tested-by: Suman Anna <s-anna@ti.com>
-rw-r--r--plat/ti/k3/board/lite/board.mk24
-rw-r--r--plat/ti/k3/board/lite/include/board_def.h34
2 files changed, 58 insertions, 0 deletions
diff --git a/plat/ti/k3/board/lite/board.mk b/plat/ti/k3/board/lite/board.mk
new file mode 100644
index 000000000..76246be47
--- /dev/null
+++ b/plat/ti/k3/board/lite/board.mk
@@ -0,0 +1,24 @@
1#
2# Copyright (c) 2020, ARM Limited and Contributors. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7BL32_BASE ?= 0x9e800000
8$(eval $(call add_define,BL32_BASE))
9
10PRELOADED_BL33_BASE ?= 0x80080000
11$(eval $(call add_define,PRELOADED_BL33_BASE))
12
13K3_HW_CONFIG_BASE ?= 0x82000000
14$(eval $(call add_define,K3_HW_CONFIG_BASE))
15
16# Define sec_proxy usage as the lite version
17K3_SEC_PROXY_LITE := 1
18$(eval $(call add_define,K3_SEC_PROXY_LITE))
19
20# We dont have system level coherency capability
21USE_COHERENT_MEM := 0
22
23PLAT_INCLUDES += \
24 -Iplat/ti/k3/board/lite/include \
diff --git a/plat/ti/k3/board/lite/include/board_def.h b/plat/ti/k3/board/lite/include/board_def.h
new file mode 100644
index 000000000..7c7ea62c1
--- /dev/null
+++ b/plat/ti/k3/board/lite/include/board_def.h
@@ -0,0 +1,34 @@
1/*
2 * Copyright (c) 2020, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef BOARD_DEF_H
8#define BOARD_DEF_H
9
10#include <lib/utils_def.h>
11
12/* The ports must be in order and contiguous */
13#define K3_CLUSTER0_CORE_COUNT U(4)
14#define K3_CLUSTER1_CORE_COUNT U(0)
15#define K3_CLUSTER2_CORE_COUNT U(0)
16#define K3_CLUSTER3_CORE_COUNT U(0)
17
18/*
19 * This RAM will be used for the bootloader including code, bss, and stacks.
20 * It may need to be increased if BL31 grows in size.
21 * Current computation assumes data structures necessary for GIC and ARM for
22 * a single cluster of 4 processor.
23 */
24#define SEC_SRAM_BASE 0x70000000 /* Base of SRAM */
25#define SEC_SRAM_SIZE 0x0001a000 /* 104k */
26
27#define PLAT_MAX_OFF_STATE U(2)
28#define PLAT_MAX_RET_STATE U(1)
29
30#define PLAT_PROC_START_ID 32
31#define PLAT_PROC_DEVICE_START_ID 135
32#define PLAT_CLUSTER_DEVICE_START_ID 134
33
34#endif /* BOARD_DEF_H */