summaryrefslogtreecommitdiffstats
path: root/arch/x86/boot
diff options
context:
space:
mode:
authorJoe Millenbach <jmillenbach@gmail.com>2012-07-19 18:04:41 -0700
committerH. Peter Anvin <hpa@zytor.com>2012-07-21 11:07:34 -0700
commitcec49df9d331feaa2fea3d24c07147c7659940d1 (patch)
treed63b2898127138446f5c1809b416e288ae05ee26 /arch/x86/boot
parent641a1cebfe2f05fa1a48503d816fc70cf707d033 (diff)
downloadlinux-cec49df9d331feaa2fea3d24c07147c7659940d1.tar.gz
linux-cec49df9d331feaa2fea3d24c07147c7659940d1.tar.bz2
linux-cec49df9d331feaa2fea3d24c07147c7659940d1.zip
x86, boot: Exclude early_serial_console.c if can't use it.
Removes early_serial_console.c code if we don't have the config option that enables it (EARLY_PRINTK). When disabling this code, make early_serial_base a constant 0 to allow the compiler to optimize away the code that checks for early_serial_base. Signed-off-by: Joe Millenbach <jmillenbach@gmail.com> Link: http://lkml.kernel.org/r/1342746282-28497-7-git-send-email-jmillenbach@gmail.com Signed-off-by: Gokul Caushik <caushik1@gmail.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/boot')
-rw-r--r--arch/x86/boot/compressed/early_serial_console.c4
-rw-r--r--arch/x86/boot/compressed/misc.h10
2 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86/boot/compressed/early_serial_console.c b/arch/x86/boot/compressed/early_serial_console.c
index 261e81fb9582..d3d003cb5481 100644
--- a/arch/x86/boot/compressed/early_serial_console.c
+++ b/arch/x86/boot/compressed/early_serial_console.c
@@ -1,5 +1,9 @@
#include "misc.h"
+#ifdef CONFIG_EARLY_PRINTK
+
int early_serial_base;
#include "../early_serial_console.c"
+
+#endif
diff --git a/arch/x86/boot/compressed/misc.h b/arch/x86/boot/compressed/misc.h
index 618e5c830f15..3ffee6e0c54c 100644
--- a/arch/x86/boot/compressed/misc.h
+++ b/arch/x86/boot/compressed/misc.h
@@ -43,7 +43,17 @@ int cmdline_find_option(const char *option, char *buffer, int bufsize);
int cmdline_find_option_bool(const char *option);
/* early_serial_console.c */
+#ifdef CONFIG_EARLY_PRINTK
+
extern int early_serial_base;
void console_init(void);
+#else
+
+static const int early_serial_base;
+static inline void console_init(void)
+{ }
+
+#endif
+
#endif