ti: k3: Introduce basic generic board support
authorNishanth Menon <nm@ti.com>
Wed, 20 Sep 2017 06:32:13 +0000 (01:32 -0500)
committerAndrew F. Davis <afd@ti.com>
Tue, 19 Jun 2018 17:42:37 +0000 (12:42 -0500)
While it would be useful to have a device tree based build, the
required components are not in place yet, so support just a simple
statically defined configuration to begin with.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
plat/ti/k3/board/generic/board.mk [new file with mode: 0644]
plat/ti/k3/board/generic/include/board_def.h [new file with mode: 0644]
plat/ti/k3/platform.mk

diff --git a/plat/ti/k3/board/generic/board.mk b/plat/ti/k3/board/generic/board.mk
new file mode 100644 (file)
index 0000000..a342214
--- /dev/null
@@ -0,0 +1,17 @@
+#
+# Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+
+BL32_BASE ?= 0x9e800000
+$(eval $(call add_define,BL32_BASE))
+
+PRELOADED_BL33_BASE ?= 0x80080000
+$(eval $(call add_define,PRELOADED_BL33_BASE))
+
+K3_HW_CONFIG_BASE ?= 0x82000000
+$(eval $(call add_define,K3_HW_CONFIG_BASE))
+
+PLAT_INCLUDES          +=      \
+                               -Iplat/ti/k3/board/generic/include      \
diff --git a/plat/ti/k3/board/generic/include/board_def.h b/plat/ti/k3/board/generic/include/board_def.h
new file mode 100644 (file)
index 0000000..4c59c75
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef __BOARD_DEF_H__
+#define __BOARD_DEF_H__
+
+/* The ports must be in order and contiguous */
+#define K3_CLUSTER0_CORE_COUNT         2
+#define K3_CLUSTER0_MSMC_PORT          0
+
+#define K3_CLUSTER1_CORE_COUNT         2
+#define K3_CLUSTER1_MSMC_PORT          1
+
+#define K3_CLUSTER2_CORE_COUNT         2
+#define K3_CLUSTER2_MSMC_PORT          2
+
+#define K3_CLUSTER3_CORE_COUNT         2
+#define K3_CLUSTER3_MSMC_PORT          3
+
+/*
+ * This RAM will be used for the bootloader including code, bss, and stacks.
+ * It may need to be increased if BL31 grows in size.
+ */
+#define SEC_SRAM_BASE                  0x70000000 /* Base of MSMC SRAM */
+#define SEC_SRAM_SIZE                  0x00020000 /* 128k */
+
+#define PLAT_MAX_OFF_STATE             2
+#define PLAT_MAX_RET_STATE             1
+
+#endif /* __BOARD_DEF_H__ */
index 613942c9c488c97f123e06ba74e1e1751307c0a4..65d5cc2a46196e190946828cce0d5a0395ed023c 100644 (file)
@@ -5,8 +5,10 @@
 #
 
 PLAT_PATH      :=      plat/ti/k3
+TARGET_BOARD   ?=      generic
 
 include ${PLAT_PATH}/common/plat_common.mk
+include ${PLAT_PATH}/board/${TARGET_BOARD}/board.mk
 
 # modify BUILD_PLAT to point to board specific build directory
 BUILD_PLAT := ${BUILD_BASE}/${PLAT}/${TARGET_BOARD}/${BUILD_TYPE}