summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnas Nashif <anas.nashif@intel.com>2016-05-11 17:40:01 -0400
committerAnas Nashif <nashif@linux.intel.com>2016-05-12 10:57:52 +0000
commit059d97839e033b1541e8c961e3527f92fc3ee203 (patch)
tree565927c719fe87aec5c98ff9ae38ca35860b6bfa
parentf62d86c42b4a8518bcf65a02c366928f13a2d668 (diff)
add a new option for debugging quark se
We had wrong logic and confusing config options for debugging Quark SE sensor subsystem. The new option will be used for GDB debugging. The existing DEBUG option will be used for printing additional messages on the screen while booting the sensor sub-system. Change-Id: Ia54d22e872edafe531ccde271e7504fe9c48a73a Signed-off-by: Anas Nashif <anas.nashif@intel.com>
-rw-r--r--arch/x86/soc/quark_se/Kconfig7
-rw-r--r--arch/x86/soc/quark_se/soc.c4
2 files changed, 9 insertions, 2 deletions
diff --git a/arch/x86/soc/quark_se/Kconfig b/arch/x86/soc/quark_se/Kconfig
index 570050c9a..3eba15b44 100644
--- a/arch/x86/soc/quark_se/Kconfig
+++ b/arch/x86/soc/quark_se/Kconfig
@@ -39,6 +39,13 @@ config ARC_INIT
Allows x86 processor to kickoff the ARC slave processor.
config ARC_INIT_DEBUG
+ bool "Quark SE Sensor Subsystem Debug"
+ default n
+ help
+ Debug the boot initialisation and boot process of the sensor
+ sub-system.
+
+config ARC_GDB_ENABLE
bool "Allows the usage of GDB with the ARC processor."
depends on ARC_INIT
default n
diff --git a/arch/x86/soc/quark_se/soc.c b/arch/x86/soc/quark_se/soc.c
index 8444284f2..9cda608bc 100644
--- a/arch/x86/soc/quark_se/soc.c
+++ b/arch/x86/soc/quark_se/soc.c
@@ -69,15 +69,16 @@ static int arc_init(struct device *arg)
arc_init_debug("Reset vector address: %x\n", *reset_vector);
shared_data->arc_start = *reset_vector;
shared_data->flags = 0;
-#ifndef CONFIG_ARC_INIT_DEBUG
if (!shared_data->arc_start) {
/* Reset vector points to NULL => skip ARC init. */
arc_init_debug("Reset vector is NULL, skipping ARC init.\n");
goto skip_arc_init;
}
+#ifndef CONFIG_ARC_GDB_ENABLE
/* Start the CPU */
SCSS_REG_VAL(SCSS_SS_CFG) |= ARC_RUN_REQ_A;
+#endif
arc_init_debug("Waiting for arc to start...\n");
/* Block until the ARC core actually starts up */
@@ -91,7 +92,6 @@ static int arc_init(struct device *arg)
}
skip_arc_init:
-#endif
return 0;
}