S3C: Allow to completly disable low-level messages
authorLars-Peter Clausen <lars@metafoo.de>
Thu, 5 Nov 2009 22:04:42 +0000 (23:04 +0100)
committerLars-Peter Clausen <lars@metafoo.de>
Mon, 17 May 2010 17:49:31 +0000 (19:49 +0200)
In some cases it is desirable to completly disable low-level messages. For
example if you have no uart available for a serial console.
With this patch it is possible to disable low-level messages by setting
CONFIG_S3C_LOWLEVEL_UART_PORT to less then zero.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
arch/arm/boot/compressed/head.S
arch/arm/plat-samsung/include/plat/uncompress.h

index c5191b1..7e5e893 100644 (file)
@@ -66,7 +66,7 @@ wait:         mrc     p14, 0, pc, c0, c1, 0
                add     \rb, \rb, #0x00010000   @ Ser1
 #endif
                .endm
-#elif defined(CONFIG_ARCH_S3C2410)
+#elif defined(CONFIG_ARCH_S3C2410) && CONFIG_S3C_LOWLEVEL_UART_PORT >= 0
                .macro loadsp, rb, tmp
                mov     \rb, #0x50000000
                add     \rb, \rb, #0x4000 * CONFIG_S3C_LOWLEVEL_UART_PORT
index 7d6ed72..152c496 100644 (file)
@@ -37,6 +37,8 @@ static void arch_detect_cpu(void);
 /* how many bytes we allow into the FIFO at a time in FIFO mode */
 #define FIFO_MAX        (14)
 
+#if  CONFIG_S3C_LOWLEVEL_UART_PORT >= 0
+
 #define uart_base S3C_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT)
 
 static __inline__ void
@@ -86,10 +88,6 @@ static void putc(int ch)
        uart_wr(S3C2410_UTXH, ch);
 }
 
-static inline void flush(void)
-{
-}
-
 #define __raw_writel(d, ad)                    \
        do {                                                    \
                *((volatile unsigned int __force *)(ad)) = (d); \
@@ -161,6 +159,19 @@ static inline void arch_enable_uart_fifo(void)
 #define arch_enable_uart_fifo() do { } while(0)
 #endif
 
+#else
+static inline void putc(int ch)
+{
+}
+
+#define arch_enable_uart_fifo() do { } while(0)
+#define arch_decomp_wdog_start()
+#define arch_decomp_wdog()
+#endif
+
+static inline void flush(void)
+{
+}
 
 static void
 arch_decomp_setup(void)