From 51f6c4280f95a8066e965cfa3268de5ad737d385 Mon Sep 17 00:00:00 2001
From: Markus Niebel <Markus.Niebel@tq-group.com>
Date: Thu, 4 Jun 2015 17:25:31 +0200
Subject: [PATCH] arm: mx6: tqma6: CPU type selection via Kconfig

This is the first patch to remove the
CONFIG_SYS_EXTRA_OPTIONS.

This patch implements CPU type selection from Kconfig.
Further Kconfig stuff is added later.

Signed-off-by: Markus Niebel <Markus.Niebel@tq-group.com>
---
 arch/arm/Kconfig                  |  5 -----
 arch/arm/cpu/armv7/mx6/Kconfig    |  5 +++++
 board/tqc/tqma6/Kconfig           | 21 +++++++++++++++++++++
 configs/tqma6q_mba6_mmc_defconfig |  3 ++-
 configs/tqma6q_mba6_spi_defconfig |  3 ++-
 configs/tqma6s_mba6_mmc_defconfig |  4 +++-
 configs/tqma6s_mba6_spi_defconfig |  4 +++-
 7 files changed, 36 insertions(+), 9 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index fd47e60a909..3e07eccb40c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -576,10 +576,6 @@ config TARGET_TBS2910
 	bool "Support tbs2910"
 	select CPU_V7
 
-config TARGET_TQMA6
-	bool "TQ Systems TQMa6 board"
-	select CPU_V7
-
 config TARGET_OT1200
 	bool "Bachmann OT1200"
 	select CPU_V7
@@ -959,7 +955,6 @@ source "board/ti/ti816x/Kconfig"
 source "board/timll/devkit3250/Kconfig"
 source "board/toradex/colibri_pxa270/Kconfig"
 source "board/toradex/colibri_vf/Kconfig"
-source "board/tqc/tqma6/Kconfig"
 source "board/trizepsiv/Kconfig"
 source "board/ttcontrol/vision2/Kconfig"
 source "board/udoo/Kconfig"
diff --git a/arch/arm/cpu/armv7/mx6/Kconfig b/arch/arm/cpu/armv7/mx6/Kconfig
index 1282be3418c..10908c4c4a2 100644
--- a/arch/arm/cpu/armv7/mx6/Kconfig
+++ b/arch/arm/cpu/armv7/mx6/Kconfig
@@ -33,11 +33,16 @@ config TARGET_SECOMX6
 	bool "Support secomx6 boards"
 	select CPU_V7
 
+config TARGET_TQMA6
+	bool "TQ Systems TQMa6 board"
+	select CPU_V7
+
 endchoice
 
 config SYS_SOC
 	default "mx6"
 
 source "board/seco/Kconfig"
+source "board/tqc/tqma6/Kconfig"
 
 endif
diff --git a/board/tqc/tqma6/Kconfig b/board/tqc/tqma6/Kconfig
index f8b3d1fd404..3e4d9f51707 100644
--- a/board/tqc/tqma6/Kconfig
+++ b/board/tqc/tqma6/Kconfig
@@ -12,4 +12,25 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "tqma6"
 
+choice
+	prompt "TQMa6 SoC variant"
+	default TQMA6Q
+	help
+	  select the TQMa6 module variant. The variants differing in the used
+	  i.MX6 CPU type and DRAM
+
+config TQMA6Q
+	bool "TQMa6Q / TQMa6D"
+	select MX6Q
+	help
+	  select TQMa6Q / TQMa6D with i.MX6Q/D and 1GiB DRAM
+
+config TQMA6S
+	bool "TQMa6S"
+	select MX6S
+	help
+	  select TQMa6S with i.MX6S and 512 MiB DRAM
+
+endchoice
+
 endif
diff --git a/configs/tqma6q_mba6_mmc_defconfig b/configs/tqma6q_mba6_mmc_defconfig
index 01355b6a9a5..31b3fc3e1b1 100644
--- a/configs/tqma6q_mba6_mmc_defconfig
+++ b/configs/tqma6q_mba6_mmc_defconfig
@@ -1,5 +1,6 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MX6Q,MBA6,TQMA6X_MMC_BOOT"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MBA6,TQMA6X_MMC_BOOT"
 CONFIG_CMD_SETEXPR=y
 CONFIG_CMD_NET=y
diff --git a/configs/tqma6q_mba6_spi_defconfig b/configs/tqma6q_mba6_spi_defconfig
index ba24663a350..30ad2330fb1 100644
--- a/configs/tqma6q_mba6_spi_defconfig
+++ b/configs/tqma6q_mba6_spi_defconfig
@@ -1,5 +1,6 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MX6Q,MBA6,TQMA6X_SPI_BOOT"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6q.cfg,MBA6,TQMA6X_SPI_BOOT"
 CONFIG_CMD_SETEXPR=y
 CONFIG_CMD_NET=y
diff --git a/configs/tqma6s_mba6_mmc_defconfig b/configs/tqma6s_mba6_mmc_defconfig
index cbb45008ec2..ab6b0ea7c1c 100644
--- a/configs/tqma6s_mba6_mmc_defconfig
+++ b/configs/tqma6s_mba6_mmc_defconfig
@@ -1,5 +1,7 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MX6S,MBA6,TQMA6X_MMC_BOOT"
+CONFIG_TQMA6S=y
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MBA6,TQMA6X_MMC_BOOT"
 CONFIG_CMD_SETEXPR=y
 CONFIG_CMD_NET=y
diff --git a/configs/tqma6s_mba6_spi_defconfig b/configs/tqma6s_mba6_spi_defconfig
index 805d8ab4be4..f4cfc8dc2fd 100644
--- a/configs/tqma6s_mba6_spi_defconfig
+++ b/configs/tqma6s_mba6_spi_defconfig
@@ -1,5 +1,7 @@
 CONFIG_ARM=y
+CONFIG_ARCH_MX6=y
 CONFIG_TARGET_TQMA6=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MX6S,MBA6,TQMA6X_SPI_BOOT"
+CONFIG_TQMA6S=y
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/tqc/tqma6/tqma6s.cfg,MBA6,TQMA6X_SPI_BOOT"
 CONFIG_CMD_SETEXPR=y
 CONFIG_CMD_NET=y
-- 
GitLab