From 88077715d8d81825605028f2040b17137513f858 Mon Sep 17 00:00:00 2001
From: Tom Rini <trini@konsulko.com>
Date: Sun, 22 Jan 2017 19:43:10 -0500
Subject: [PATCH] NXP: Introduce board/freescale/common/Kconfig and migrate
 CHAIN_OF_TRUST

Introduce board/freescale/common/Kconfig so that we have a single place
for CONFIG options that are shared between ARM and PowerPC NXP platforms.

Cc: York Sun <york.sun@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: York Sun <york.sun@nxp.com>
---
 arch/arm/include/asm/fsl_secure_boot.h     | 8 --------
 arch/powerpc/include/asm/fsl_secure_boot.h | 5 -----
 board/freescale/b4860qds/Kconfig           | 2 ++
 board/freescale/bsc9132qds/Kconfig         | 2 ++
 board/freescale/c29xpcie/Kconfig           | 2 ++
 board/freescale/common/Kconfig             | 4 ++++
 board/freescale/corenet_ds/Kconfig         | 8 ++++++++
 board/freescale/ls1012afrdm/Kconfig        | 2 ++
 board/freescale/ls1012aqds/Kconfig         | 2 ++
 board/freescale/ls1012ardb/Kconfig         | 2 ++
 board/freescale/ls1021aiot/Kconfig         | 2 ++
 board/freescale/ls1021aqds/Kconfig         | 2 ++
 board/freescale/ls1021atwr/Kconfig         | 2 ++
 board/freescale/ls1043aqds/Kconfig         | 2 ++
 board/freescale/ls1043ardb/Kconfig         | 2 ++
 board/freescale/ls1046aqds/Kconfig         | 2 ++
 board/freescale/ls2080a/Kconfig            | 4 ++++
 board/freescale/ls2080aqds/Kconfig         | 2 ++
 board/freescale/ls2080ardb/Kconfig         | 2 ++
 board/freescale/p1010rdb/Kconfig           | 2 ++
 board/freescale/p2041rdb/Kconfig           | 2 ++
 board/freescale/t102xqds/Kconfig           | 2 ++
 board/freescale/t102xrdb/Kconfig           | 2 ++
 board/freescale/t1040qds/Kconfig           | 2 ++
 board/freescale/t104xrdb/Kconfig           | 2 ++
 board/freescale/t208xqds/Kconfig           | 2 ++
 board/freescale/t208xrdb/Kconfig           | 2 ++
 board/freescale/t4qds/Kconfig              | 2 ++
 board/freescale/t4rdb/Kconfig              | 2 ++
 board/varisys/cyrus/Kconfig                | 2 ++
 30 files changed, 66 insertions(+), 13 deletions(-)
 create mode 100644 board/freescale/common/Kconfig

diff --git a/arch/arm/include/asm/fsl_secure_boot.h b/arch/arm/include/asm/fsl_secure_boot.h
index f920215d01..17ca540908 100644
--- a/arch/arm/include/asm/fsl_secure_boot.h
+++ b/arch/arm/include/asm/fsl_secure_boot.h
@@ -7,14 +7,6 @@
 #ifndef __FSL_SECURE_BOOT_H
 #define __FSL_SECURE_BOOT_H
 
-#ifdef CONFIG_SECURE_BOOT
-
-#ifndef CONFIG_FIT_SIGNATURE
-#define CONFIG_CHAIN_OF_TRUST
-#endif
-
-#endif
-
 #ifdef CONFIG_CHAIN_OF_TRUST
 #define CONFIG_CMD_ESBC_VALIDATE
 #define CONFIG_FSL_SEC_MON
diff --git a/arch/powerpc/include/asm/fsl_secure_boot.h b/arch/powerpc/include/asm/fsl_secure_boot.h
index ab2957901c..e17ead5696 100644
--- a/arch/powerpc/include/asm/fsl_secure_boot.h
+++ b/arch/powerpc/include/asm/fsl_secure_boot.h
@@ -9,11 +9,6 @@
 #include <asm/config_mpc85xx.h>
 
 #ifdef CONFIG_SECURE_BOOT
-
-#ifndef CONFIG_FIT_SIGNATURE
-#define CONFIG_CHAIN_OF_TRUST
-#endif
-
 #if defined(CONFIG_FSL_CORENET)
 #define CONFIG_SYS_PBI_FLASH_BASE		0xc0000000
 #elif defined(CONFIG_TARGET_BSC9132QDS)
diff --git a/board/freescale/b4860qds/Kconfig b/board/freescale/b4860qds/Kconfig
index 01d68e14e2..9bb667ab4f 100644
--- a/board/freescale/b4860qds/Kconfig
+++ b/board/freescale/b4860qds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "B4860QDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/bsc9132qds/Kconfig b/board/freescale/bsc9132qds/Kconfig
index db3a1f1d47..e5499e6129 100644
--- a/board/freescale/bsc9132qds/Kconfig
+++ b/board/freescale/bsc9132qds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "BSC9132QDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/c29xpcie/Kconfig b/board/freescale/c29xpcie/Kconfig
index 17369b8ca7..51e25c39df 100644
--- a/board/freescale/c29xpcie/Kconfig
+++ b/board/freescale/c29xpcie/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "C29XPCIE"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/common/Kconfig b/board/freescale/common/Kconfig
new file mode 100644
index 0000000000..38babd30ba
--- /dev/null
+++ b/board/freescale/common/Kconfig
@@ -0,0 +1,4 @@
+config CHAIN_OF_TRUST
+	depends on !FIT_SIGNATURE && SECURE_BOOT
+	bool
+	default y
diff --git a/board/freescale/corenet_ds/Kconfig b/board/freescale/corenet_ds/Kconfig
index 433f539d99..98b1adde62 100644
--- a/board/freescale/corenet_ds/Kconfig
+++ b/board/freescale/corenet_ds/Kconfig
@@ -9,6 +9,8 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P3041DS"
 
+source "board/freescale/common/Kconfig"
+
 endif
 
 if TARGET_P4080DS
@@ -22,6 +24,8 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P4080DS"
 
+source "board/freescale/common/Kconfig"
+
 endif
 
 if TARGET_P5020DS
@@ -35,6 +39,8 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P5020DS"
 
+source "board/freescale/common/Kconfig"
+
 endif
 
 if TARGET_P5040DS
@@ -48,4 +54,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P5040DS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1012afrdm/Kconfig b/board/freescale/ls1012afrdm/Kconfig
index a34521cf79..38bd91b191 100644
--- a/board/freescale/ls1012afrdm/Kconfig
+++ b/board/freescale/ls1012afrdm/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1012afrdm"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1012aqds/Kconfig b/board/freescale/ls1012aqds/Kconfig
index 1257ec8d06..fc9250b253 100644
--- a/board/freescale/ls1012aqds/Kconfig
+++ b/board/freescale/ls1012aqds/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1012aqds"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1012ardb/Kconfig b/board/freescale/ls1012ardb/Kconfig
index 3f67c2841f..98231f96b3 100644
--- a/board/freescale/ls1012ardb/Kconfig
+++ b/board/freescale/ls1012ardb/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1012ardb"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1021aiot/Kconfig b/board/freescale/ls1021aiot/Kconfig
index 4a12c1687f..c6b16063a4 100644
--- a/board/freescale/ls1021aiot/Kconfig
+++ b/board/freescale/ls1021aiot/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1021aiot"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1021aqds/Kconfig b/board/freescale/ls1021aqds/Kconfig
index 119b955041..60b8472990 100644
--- a/board/freescale/ls1021aqds/Kconfig
+++ b/board/freescale/ls1021aqds/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1021aqds"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1021atwr/Kconfig b/board/freescale/ls1021atwr/Kconfig
index bc50b8d966..a4641cbca0 100644
--- a/board/freescale/ls1021atwr/Kconfig
+++ b/board/freescale/ls1021atwr/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1021atwr"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1043aqds/Kconfig b/board/freescale/ls1043aqds/Kconfig
index 7e27f8f5b1..95d288812a 100644
--- a/board/freescale/ls1043aqds/Kconfig
+++ b/board/freescale/ls1043aqds/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1043aqds"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1043ardb/Kconfig b/board/freescale/ls1043ardb/Kconfig
index 80203a4f3b..1bab7cab61 100644
--- a/board/freescale/ls1043ardb/Kconfig
+++ b/board/freescale/ls1043ardb/Kconfig
@@ -22,4 +22,6 @@ config SYS_HAS_ARMV8_SECURE_BASE
 	  If enabled, please also define the value for ARMV8_SECURE_BASE,
 	  for LS1043ARDB, it could be some address in OCRAM.
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls1046aqds/Kconfig b/board/freescale/ls1046aqds/Kconfig
index 723f4ba90a..070827d7b9 100644
--- a/board/freescale/ls1046aqds/Kconfig
+++ b/board/freescale/ls1046aqds/Kconfig
@@ -12,4 +12,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls1046aqds"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls2080a/Kconfig b/board/freescale/ls2080a/Kconfig
index 0b938ffb54..b5033511b5 100644
--- a/board/freescale/ls2080a/Kconfig
+++ b/board/freescale/ls2080a/Kconfig
@@ -12,6 +12,8 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls2080a_emu"
 
+source "board/freescale/common/Kconfig"
+
 endif
 
 if TARGET_LS2080A_SIMU
@@ -28,4 +30,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls2080a_simu"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls2080aqds/Kconfig b/board/freescale/ls2080aqds/Kconfig
index 2f997e9de1..e2b2c8d089 100644
--- a/board/freescale/ls2080aqds/Kconfig
+++ b/board/freescale/ls2080aqds/Kconfig
@@ -13,4 +13,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls2080aqds"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/ls2080ardb/Kconfig b/board/freescale/ls2080ardb/Kconfig
index fe02575cf9..2f0465fbba 100644
--- a/board/freescale/ls2080ardb/Kconfig
+++ b/board/freescale/ls2080ardb/Kconfig
@@ -13,4 +13,6 @@ config SYS_SOC
 config SYS_CONFIG_NAME
 	default "ls2080ardb"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/p1010rdb/Kconfig b/board/freescale/p1010rdb/Kconfig
index 159bcc4f54..3adac4af1e 100644
--- a/board/freescale/p1010rdb/Kconfig
+++ b/board/freescale/p1010rdb/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P1010RDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/p2041rdb/Kconfig b/board/freescale/p2041rdb/Kconfig
index 78e11214a5..7e187dde72 100644
--- a/board/freescale/p2041rdb/Kconfig
+++ b/board/freescale/p2041rdb/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "P2041RDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t102xqds/Kconfig b/board/freescale/t102xqds/Kconfig
index 6ee7468b21..87818a8d3a 100644
--- a/board/freescale/t102xqds/Kconfig
+++ b/board/freescale/t102xqds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T102xQDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t102xrdb/Kconfig b/board/freescale/t102xrdb/Kconfig
index d538386d43..6deeb248a3 100644
--- a/board/freescale/t102xrdb/Kconfig
+++ b/board/freescale/t102xrdb/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T102xRDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t1040qds/Kconfig b/board/freescale/t1040qds/Kconfig
index 1bb1684011..ec3ff0c1ec 100644
--- a/board/freescale/t1040qds/Kconfig
+++ b/board/freescale/t1040qds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T1040QDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t104xrdb/Kconfig b/board/freescale/t104xrdb/Kconfig
index e33d317365..e6e46fa126 100644
--- a/board/freescale/t104xrdb/Kconfig
+++ b/board/freescale/t104xrdb/Kconfig
@@ -11,4 +11,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T104xRDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t208xqds/Kconfig b/board/freescale/t208xqds/Kconfig
index 26ef530b93..5a435c2695 100644
--- a/board/freescale/t208xqds/Kconfig
+++ b/board/freescale/t208xqds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T208xQDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t208xrdb/Kconfig b/board/freescale/t208xrdb/Kconfig
index 71e11303ba..6f0b012bab 100644
--- a/board/freescale/t208xrdb/Kconfig
+++ b/board/freescale/t208xrdb/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T208xRDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t4qds/Kconfig b/board/freescale/t4qds/Kconfig
index 563a87c456..f7c1a0c15d 100644
--- a/board/freescale/t4qds/Kconfig
+++ b/board/freescale/t4qds/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T4240QDS"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/freescale/t4rdb/Kconfig b/board/freescale/t4rdb/Kconfig
index 67832da30b..a94a57e7fe 100644
--- a/board/freescale/t4rdb/Kconfig
+++ b/board/freescale/t4rdb/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "T4240RDB"
 
+source "board/freescale/common/Kconfig"
+
 endif
diff --git a/board/varisys/cyrus/Kconfig b/board/varisys/cyrus/Kconfig
index c7b5253926..a0389f8fa1 100644
--- a/board/varisys/cyrus/Kconfig
+++ b/board/varisys/cyrus/Kconfig
@@ -9,4 +9,6 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "cyrus"
 
+source "board/freescale/common/Kconfig"
+
 endif
-- 
2.39.5