# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
#	David Huang <d-huang@ti.com>

choice
	prompt "K3 J721S2 board"
	optional

config TARGET_J721S2_A72_EVM
	bool "TI K3 based J721S2 EVM running on A72"
	select ARM64
	select BOARD_LATE_INIT
	imply TI_I2C_BOARD_DETECT
	select SYS_DISABLE_DCACHE_OPS

config TARGET_J721S2_R5_EVM
	bool "TI K3 based J721S2 EVM running on R5"
	select CPU_V7R
	select SYS_THUMB_BUILD
	select K3_LOAD_SYSFW
	select RAM
	select SPL_RAM
	select K3_DDRSS
	imply SYS_K3_SPL_ATF
	imply TI_I2C_BOARD_DETECT

endchoice

if TARGET_J721S2_A72_EVM

config SYS_BOARD
       default "j721s2"

config SYS_VENDOR
       default "ti"

config SYS_CONFIG_NAME
       default "j721s2_evm"

config ENV_SOURCE_FILE
       default "j721s2"

source "board/ti/common/Kconfig"

endif

if TARGET_J721S2_R5_EVM

config SYS_BOARD
       default "j721s2"

config SYS_VENDOR
       default "ti"

config SYS_CONFIG_NAME
       default "j721s2_evm"

config ENV_SOURCE_FILE
       default "j721s2"

source "board/ti/common/Kconfig"

endif
