# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

choice
prompt "Linux Kernel version" if !ADK_TARGET_CHOOSE_ARCH
depends on ADK_TARGET_OS_LINUX
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_BOARD_BCM28XX
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_KINETIS_K70
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_ADSP_BF537
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_PHYTEC_WEGA
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_CSKY
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_LM32
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_RISCV32
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_RISCV64
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_CRIS
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_H8300
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_METAG
default ADK_TARGET_LINUX_KERNEL_VERSION_4_14

config ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	bool "git"
	depends on !ADK_TARGET_ARCH_AVR32
	depends on !ADK_TARGET_ARCH_NDS32
	select ADK_HOST_NEED_LZOP if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	select ADK_HOST_NEED_LZOP if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	select ADK_HOST_NEED_LZ4 if ADK_TARGET_SYSTEM_PHYTEC_WEGA && ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	select ADK_TARGET_LINUX_KERNEL_IMAGE if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	select ADK_TARGET_LINUX_KERNEL_IMAGE if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK

config ADK_TARGET_LINUX_KERNEL_VERSION_4_17
	bool "4.17.0"
	depends on !ADK_TARGET_ARCH_AVR32
	depends on !ADK_TARGET_ARCH_CRIS
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_METAG
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_LINUX_KERNEL_VERSION_4_16
	bool "4.16.12"
	depends on !ADK_TARGET_ARCH_AVR32
	depends on !ADK_TARGET_ARCH_CRIS
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_METAG
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_LINUX_KERNEL_VERSION_4_14
	bool "4.14.44"
	depends on !ADK_TARGET_ARCH_AVR32
	depends on !ADK_TARGET_ARCH_CRIS
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_METAG
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_LINUX_KERNEL_VERSION_4_9
	bool "4.9.103"
	depends on !ADK_TARGET_ARCH_CRIS
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_METAG
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

config ADK_TARGET_LINUX_KERNEL_VERSION_4_4
	bool "4.4.132"
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_NIOS2
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_CPU_MIPS_MIPS32R6
	depends on !ADK_TARGET_CPU_MIPS64_MIPS64R6
	depends on !ADK_TARGET_SYSTEM_NUMATO_MIMASV2
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

config ADK_TARGET_LINUX_KERNEL_VERSION_4_1
	bool "4.1.51"
	depends on !ADK_TARGET_ARCH_ARC
	depends on !ADK_TARGET_ARCH_BFIN
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_H8300
	depends on !ADK_TARGET_ARCH_NIOS2
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_SPARC
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_SYSTEM_KINETIS_K70
	depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
	depends on !ADK_TARGET_CPU_MIPS_MIPS32R6
	depends on !ADK_TARGET_CPU_MIPS64_MIPS64R6
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

config ADK_TARGET_LINUX_KERNEL_VERSION_3_16
	bool "3.16.56"
	depends on !ADK_TARGET_ARCH_ARC
	depends on !ADK_TARGET_ARCH_BFIN
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_H8300
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_NIOS2
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_ARCH_SPARC
	depends on !ADK_TARGET_BOARD_ATH79
	depends on !ADK_TARGET_BOARD_BCM28XX
	depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	depends on !ADK_TARGET_SYSTEM_KINETIS_K70
	depends on !ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
	depends on !ADK_TARGET_SYSTEM_NUMATO_MIMASV2
	depends on !ADK_TARGET_CPU_MIPS_MIPS32R6
	depends on !ADK_TARGET_CPU_MIPS64_MIPS64R6
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

config ADK_TARGET_LINUX_KERNEL_VERSION_3_10_NDS32
	bool "3.10-nds32"
	depends on ADK_TARGET_ARCH_NDS32
	select ADK_TARGET_LINUX_KERNEL_NO_MIRROR

config ADK_TARGET_LINUX_KERNEL_VERSION_3_2
	bool "3.2.101"
	depends on !ADK_TARGET_ARCH_ARC
	depends on !ADK_TARGET_ARCH_BFIN
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_H8300
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_NIOS2
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_ARCH_SPARC
	depends on !ADK_TARGET_BOARD_ATH79
	depends on !ADK_TARGET_BOARD_BCM28XX
	depends on !ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	depends on !ADK_TARGET_SYSTEM_KINETIS_K70
	depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
	depends on !ADK_TARGET_SYSTEM_NUMATO_MIMASV2
	depends on !ADK_TARGET_CPU_MIPS_MIPS32R6
	depends on !ADK_TARGET_CPU_MIPS64_MIPS64R6
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

config ADK_TARGET_LINUX_KERNEL_VERSION_2_6_32
	bool "2.6.32.70"
	depends on !ADK_TARGET_ARCH_ARC
	depends on !ADK_TARGET_ARCH_BFIN
	depends on !ADK_TARGET_ARCH_CSKY
	depends on !ADK_TARGET_ARCH_H8300
	depends on !ADK_TARGET_ARCH_NDS32
	depends on !ADK_TARGET_ARCH_NIOS2
	depends on !ADK_TARGET_ARCH_OR1K
	depends on !ADK_TARGET_ARCH_RISCV32
	depends on !ADK_TARGET_ARCH_RISCV64
	depends on !ADK_TARGET_BOARD_ATH79
	depends on !ADK_TARGET_BOARD_BCM28XX
	depends on !ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	depends on !ADK_TARGET_SYSTEM_KINETIS_K70
	depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
	depends on !ADK_TARGET_SYSTEM_NUMATO_MIMASV2
	depends on !ADK_TARGET_CPU_MIPS_MIPS32R6
	depends on !ADK_TARGET_CPU_MIPS64_MIPS64R6
	depends on !ADK_TARGET_SYSTEM_ORANGE_PI0

endchoice

config ADK_TARGET_LINUX_KERNEL_GIT_REPO
	string "git repository"
	depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	default "https://github.com/raspberrypi/linux.git" if ADK_TARGET_BOARD_BCM28XX
	default "git://git.code.sf.net/p/adi-linux/code" if ADK_TARGET_SYSTEM_ADSP_BF537
	default "https://github.com/EmcraftSystems/linux-emcraft.git" if ADK_TARGET_SYSTEM_KINETIS_K70
	default "https://github.com/SolidRun/linux-fslc.git" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default "https://github.com/SolidRun/linux-armada38x.git" if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
	default "https://github.com/beagleboard/linux.git" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default "https://git.phytec.de/git/linux-ti.git" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
	default "https://github.com/m-labs/linux-milkymist.git" if ADK_TARGET_ARCH_LM32
	default "https://github.com/c-sky/linux-4.9.y.git" if ADK_TARGET_ARCH_CSKY
	default "https://github.com/riscv/riscv-linux.git" if ADK_TARGET_ARCH_RISCV32
	default "https://github.com/riscv/riscv-linux.git" if ADK_TARGET_ARCH_RISCV64
	default "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git"
	help
	  GIT repository to use.

config ADK_TARGET_LINUX_KERNEL_GIT_REPO_NAME
	string
	depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	default "csky" if ADK_TARGET_ARCH_CSKY
	default "lm32" if ADK_TARGET_ARCH_LM32
	default "riscv" if ADK_TARGET_ARCH_RISCV32
	default "riscv" if ADK_TARGET_ARCH_RISCV64
	default "rpi" if ADK_TARGET_BOARD_BCM28XX
	default "ad" if ADK_TARGET_SYSTEM_ADSP_BF537
	default "bb" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default "emcraft" if ADK_TARGET_SYSTEM_KINETIS_K70
	default "phytec" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
	default "clearfog" if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
	default "fslc" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default "linus"

config ADK_TARGET_LINUX_KERNEL_GIT
	string "git version"
	depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	default "6064a9bdf48cefbccc4f6472dd04251f0dec1931" if ADK_TARGET_ARCH_CSKY
	default "6a2f2e4198eaff63ee75f6085ce9f966c47b4441" if ADK_TARGET_ARCH_LM32
	default "a2092141807514666a273971cc8fa9e80f14439f" if ADK_TARGET_BOARD_BCM28XX
	default "f8d3b2a0fa5054aaed0f14cd457db9d8922bb167" if ADK_TARGET_SYSTEM_ADSP_BF537
	default "e7c8afc1dda7b7c18596d90ad6a17ae886650b72" if ADK_TARGET_SYSTEM_KINETIS_K70
	default "902739f3353150ac9eb69ad995098f3079d862a3" if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
	default "c85fbc86c61a8c8fd45ab1fe3d1bdd2df12f7962" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default "8624998967676862843aed1f8ee2141e98987f81" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default "riscv-linux-4.15" if ADK_TARGET_ARCH_RISCV32
	default "riscv-linux-4.15" if ADK_TARGET_ARCH_RISCV64
	default "v4.4.52-phy" if ADK_TARGET_SYSTEM_PHYTEC_WEGA

config ADK_TARGET_LINUX_KERNEL_GIT_VER
	string "kernel version"
	depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	default "4.9.56" if ADK_TARGET_ARCH_CSKY
	default "4.15.0" if ADK_TARGET_ARCH_RISCV32
	default "4.15.0" if ADK_TARGET_ARCH_RISCV64
	default "4.14.43" if ADK_TARGET_BOARD_BCM28XX
	default "4.4.37" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default "4.4.52" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
	default "2.6.33" if ADK_TARGET_SYSTEM_KINETIS_K70
	default "3.14.79" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6

config ADK_TARGET_LINUX_KERNEL_GIT_TYPE
	string
	depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
	default "branch" if ADK_TARGET_ARCH_RISCV32
	default "branch" if ADK_TARGET_ARCH_RISCV64
	default "branch" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
	default "hash"

config ADK_TARGET_LINUX_KERNEL_NO_MIRROR
	bool
	help
	  Select this if the kernel source is only available
	  on OpenADK webserver.