
On 00:45-20231220, Apurva Nandan wrote:
Add board files for J784S4 EVM.
Signed-off-by: Hari Nagalla hnagalla@ti.com [ add env and board specific yaml files for binman ] Signed-off-by: Neha Malcom Francis n-francis@ti.com [ cleaned up the env files ] Signed-off-by: Manorit Chawdhry m-chawdhry@ti.com Signed-off-by: Dasnavis Sabiya sabiya.d@ti.com Signed-off-by: Apurva Nandan a-nandan@ti.com Reviewed-by: Tom Rini trini@konsulko.com
arch/arm/mach-k3/Kconfig | 1 + arch/arm/mach-k3/j784s4/Kconfig | 34 +++++++++++++++++++++++++++++ board/ti/j784s4/Kconfig | 37 ++++++++++++++++++++++++++++++++ board/ti/j784s4/Makefile | 7 ++++++ board/ti/j784s4/evm.c | 38 +++++++++++++++++++++++++++++++++ include/configs/j784s4_evm.h | 15 +++++++++++++ 6 files changed, 132 insertions(+) create mode 100644 arch/arm/mach-k3/j784s4/Kconfig create mode 100644 board/ti/j784s4/Kconfig create mode 100644 board/ti/j784s4/Makefile create mode 100644 board/ti/j784s4/evm.c create mode 100644 include/configs/j784s4_evm.h
diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig index 150d0bfa14..445b49e245 100644 --- a/arch/arm/mach-k3/Kconfig +++ b/arch/arm/mach-k3/Kconfig @@ -157,5 +157,6 @@ source "arch/arm/mach-k3/am62x/Kconfig" source "arch/arm/mach-k3/am62ax/Kconfig" source "arch/arm/mach-k3/j721e/Kconfig" source "arch/arm/mach-k3/j721s2/Kconfig" +source "arch/arm/mach-k3/j784s4/Kconfig"
endif diff --git a/arch/arm/mach-k3/j784s4/Kconfig b/arch/arm/mach-k3/j784s4/Kconfig new file mode 100644 index 0000000000..64ec305756 --- /dev/null +++ b/arch/arm/mach-k3/j784s4/Kconfig @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/ +# Hari Nagalla hnagalla@ti.com
+if SOC_K3_J784S4
+choice
- prompt "K3 J784S4 board"
- optional
+config TARGET_J784S4_A72_EVM
- bool "TI K3 based J784S4 EVM running on A72"
- select ARM64
- select BOARD_LATE_INIT
- select SYS_DISABLE_DCACHE_OPS
Why disable dcache ops? I assume we do that because we are a coherent architecture at A72 level thanks to MSMC? might be good to mention in commit message.
- select BINMAN
+config TARGET_J784S4_R5_EVM
- bool "TI K3 based J784S4 EVM running on R5"
- select CPU_V7R
- select SYS_THUMB_BUILD
- select K3_LOAD_SYSFW
- select RAM
- select SPL_RAM
- select K3_DDRSS
- select BINMAN
- imply SYS_K3_SPL_ATF
+endchoice
+source "board/ti/j784s4/Kconfig"
+endif diff --git a/board/ti/j784s4/Kconfig b/board/ti/j784s4/Kconfig new file mode 100644 index 0000000000..33d4770b2d --- /dev/null +++ b/board/ti/j784s4/Kconfig @@ -0,0 +1,37 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/ +# Hari Nagalla hnagalla@ti.com
+if TARGET_J784S4_A72_EVM
+config SYS_BOARD
default "j784s4"
+config SYS_VENDOR
default "ti"
+config SYS_CONFIG_NAME
default "j784s4_evm"
+source "board/ti/common/Kconfig"
+endif
+if TARGET_J784S4_R5_EVM
+config SYS_BOARD
default "j784s4"
+config SYS_VENDOR
default "ti"
+config SYS_CONFIG_NAME
default "j784s4_evm"
+config SPL_LDSCRIPT
- default "arch/arm/mach-omap2/u-boot-spl.lds"
+source "board/ti/common/Kconfig"
+endif diff --git a/board/ti/j784s4/Makefile b/board/ti/j784s4/Makefile new file mode 100644 index 0000000000..3fc70eb8fb --- /dev/null +++ b/board/ti/j784s4/Makefile @@ -0,0 +1,7 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/ +# Hari Nagalla hnagalla@ti.com +#
+obj-y += evm.o diff --git a/board/ti/j784s4/evm.c b/board/ti/j784s4/evm.c new file mode 100644 index 0000000000..4857c9d2f6 --- /dev/null +++ b/board/ti/j784s4/evm.c @@ -0,0 +1,38 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/*
- Board specific initialization for J784S4 EVM
- Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
- Hari Nagalla hnagalla@ti.com
- */
+#include <image.h> +#include <init.h> +#include <spl.h>
+DECLARE_GLOBAL_DATA_PTR;
+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();
+}
+int board_late_init(void) +{
- return 0;
+}
+void spl_board_init(void) +{
env_set("fdtfile", fdtfile);
See board/xilinx/zynqmp/zynqmp.c With that fdtfile will be available by default removing the need for findfdt and script mumbo jumbo.
+} diff --git a/include/configs/j784s4_evm.h b/include/configs/j784s4_evm.h new file mode 100644 index 0000000000..a4e0521198 --- /dev/null +++ b/include/configs/j784s4_evm.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/*
- Configuration header file for K3 J784S4 EVM
- Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
btw, for next edition - 2023-2024 - here and elsewhere.
- Hari Nagalla hnagalla@ti.com
- */
+#ifndef __CONFIG_J784S4_EVM_H +#define __CONFIG_J784S4_EVM_H
+/* Now for the remaining common defines */ +#include <configs/ti_armv7_common.h>
+#endif /* __CONFIG_J784S4_EVM_H */