Introduce the bare minimum SD and UART support for the am62a sk.

Signed-off-by: Bryan Brattlof <b...@ti.com>
---
 board/ti/am62ax/Kconfig               | 52 +++++++++++++++++++++++++++
 board/ti/am62ax/MAINTAINERS           |  9 +++++
 board/ti/am62ax/Makefile              |  7 ++++
 board/ti/am62ax/evm.c                 | 31 ++++++++++++++++
 drivers/firmware/ti_sci_static_data.h |  4 +--
 5 files changed, 101 insertions(+), 2 deletions(-)
 create mode 100644 board/ti/am62ax/Kconfig
 create mode 100644 board/ti/am62ax/MAINTAINERS
 create mode 100644 board/ti/am62ax/Makefile
 create mode 100644 board/ti/am62ax/evm.c

diff --git a/board/ti/am62ax/Kconfig b/board/ti/am62ax/Kconfig
new file mode 100644
index 0000000000000..2c18cd49b5d27
--- /dev/null
+++ b/board/ti/am62ax/Kconfig
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+
+choice
+       prompt "TI K3 AM62Ax based boards"
+       optional
+
+config TARGET_AM62A7_A53_EVM
+       bool "TI K3 based AM62A7 EVM running on A53"
+       select ARM64
+       select SOC_K3_AM62A7
+       imply BOARD
+       imply SPL_BOARD
+       imply TI_I2C_BOARD_DETECT
+
+config TARGET_AM62A7_R5_EVM
+       bool "TI K3 based AM62A7 EVM running on R5"
+       select CPU_V7R
+       select SYS_THUMB_BUILD
+       select K3_LOAD_SYSFW
+       select SOC_K3_AM62A7
+       select RAM
+       select SPL_RAM
+       select K3_DDRSS
+       imply SYS_K3_SPL_ATF
+       imply TI_I2C_BOARD_DETECT
+
+endchoice
+
+if TARGET_AM62A7_R5_EVM || TARGET_AM62A7_A53_EVM
+
+config SYS_BOARD
+       default "am62ax"
+
+config SYS_VENDOR
+       default "ti"
+
+config SYS_CONFIG_NAME
+       default "am62ax_evm"
+
+source "board/ti/common/Kconfig"
+
+endif
+
+if TARGET_AM62A7_R5_EVM
+
+config SPL_LDSCRIPT
+       default "arch/arm/mach-omap2/u-boot-spl.lds"
+
+endif
diff --git a/board/ti/am62ax/MAINTAINERS b/board/ti/am62ax/MAINTAINERS
new file mode 100644
index 0000000000000..590f683584e52
--- /dev/null
+++ b/board/ti/am62ax/MAINTAINERS
@@ -0,0 +1,9 @@
+AM62Ax BOARD
+M:     Vignesh Raghavendra <vigne...@ti.com>
+M:     Bryan Brattlof <b...@ti.com>
+M:     Tom Rini <tr...@konsulko.com>
+S:     Maintained
+F:     board/ti/am62ax/
+F:     include/configs/am62a7_evm.h
+F:     configs/am62ax_evm_r5_defconfig
+F:     configs/am62ax_evm_a53_defconfig
diff --git a/board/ti/am62ax/Makefile b/board/ti/am62ax/Makefile
new file mode 100644
index 0000000000000..4e8e7aa23003e
--- /dev/null
+++ b/board/ti/am62ax/Makefile
@@ -0,0 +1,7 @@
+#
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+#
+# SPDX-License-Identifier:     GPL-2.0+
+#
+
+obj-y  += evm.o
diff --git a/board/ti/am62ax/evm.c b/board/ti/am62ax/evm.c
new file mode 100644
index 0000000000000..beef3f2f3da70
--- /dev/null
+++ b/board/ti/am62ax/evm.c
@@ -0,0 +1,31 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Board specific initialization for AM62Ax platforms
+ *
+ * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+ *
+ */
+
+#include <asm/arch/hardware.h>
+#include <asm/arch/sys_proto.h>
+#include <asm/io.h>
+#include <common.h>
+#include <dm/uclass.h>
+#include <env.h>
+#include <fdt_support.h>
+#include <spl.h>
+
+int board_init(void)
+{
+       return 0;
+}
+
+int dram_init(void)
+{
+       return fdtdec_setup_mem_size_base();
+}
+
+int dram_init_banksize(void)
+{
+       return fdtdec_setup_memory_banksize();
+}
diff --git a/drivers/firmware/ti_sci_static_data.h 
b/drivers/firmware/ti_sci_static_data.h
index 5ae0556a9a453..1a461fab6199b 100644
--- a/drivers/firmware/ti_sci_static_data.h
+++ b/drivers/firmware/ti_sci_static_data.h
@@ -84,7 +84,7 @@ static struct ti_sci_resource_static_data rm_static_data[] = {
 };
 #endif /* CONFIG_SOC_K3_J721S2 */
 
-#if IS_ENABLED(CONFIG_SOC_K3_AM625)
+#if IS_ENABLED(CONFIG_SOC_K3_AM625) || IS_ENABLED(CONFIG_SOC_K3_AM62A7)
 static struct ti_sci_resource_static_data rm_static_data[] = {
        /* BC channels */
        {
@@ -95,7 +95,7 @@ static struct ti_sci_resource_static_data rm_static_data[] = {
        },
        { },
 };
-#endif /* CONFIG_SOC_K3_AM625 */
+#endif /* CONFIG_SOC_K3_AM625 || CONFIG_SOC_K3_AM62A7 */
 
 #else
 static struct ti_sci_resource_static_data rm_static_data[] = {
-- 
2.38.1

Reply via email to