summaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches/106-early_printk.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/lantiq/patches/106-early_printk.patch')
-rw-r--r--target/linux/lantiq/patches/106-early_printk.patch93
1 files changed, 0 insertions, 93 deletions
diff --git a/target/linux/lantiq/patches/106-early_printk.patch b/target/linux/lantiq/patches/106-early_printk.patch
deleted file mode 100644
index 1cf402c5c5..0000000000
--- a/target/linux/lantiq/patches/106-early_printk.patch
+++ /dev/null
@@ -1,93 +0,0 @@
---- a/arch/mips/lantiq/Kconfig
-+++ b/arch/mips/lantiq/Kconfig
-@@ -33,4 +33,19 @@
- #source "arch/mips/lantiq/falcon/Kconfig"
- source "arch/mips/lantiq/xway/Kconfig"
-
-+if EARLY_PRINTK
-+choice
-+ prompt "Early printk port"
-+ default LANTIQ_PROM_ASC1
-+ help
-+ Choose which serial port is used, until the console driver is loaded
-+
-+config LANTIQ_PROM_ASC0
-+ bool "ASC0"
-+
-+config LANTIQ_PROM_ASC1
-+ bool "ASC1"
-+endchoice
-+endif
-+
- endif
---- /dev/null
-+++ b/arch/mips/lantiq/early_printk.c
-@@ -0,0 +1,68 @@
-+/*
-+ * This program is free software; you can redistribute it and/or modify it
-+ * under the terms of the GNU General Public License version 2 as published
-+ * by the Free Software Foundation.
-+ *
-+ * Copyright (C) 2010 John Crispin <blogic@openwrt.org>
-+ */
-+
-+#include <linux/init.h>
-+#include <linux/cpu.h>
-+
-+#include <lantiq.h>
-+
-+#ifdef CONFIG_SOC_LANTIQ_XWAY
-+#include <xway.h>
-+#ifdef CONFIG_LANTIQ_PROM_ASC0
-+#define LQ_ASC_BASE KSEG1ADDR(LQ_ASC0_BASE)
-+#else
-+#define LQ_ASC_BASE KSEG1ADDR(LQ_ASC1_BASE)
-+#endif
-+
-+#elif defined(CONFIG_SOC_LANTIQ_FALCON)
-+#include <falcon/gpon_reg_base.h>
-+#ifdef CONFIG_LANTIQ_PROM_ASC0
-+#define LQ_ASC_BASE GPON_ASC0_BASE
-+#else
-+#define LQ_ASC_BASE GPON_ASC1_BASE
-+#endif
-+
-+#endif
-+
-+#define ASC_BUF 1024
-+#define LQ_ASC_FSTAT 0x0048
-+#define LQ_ASC_TBUF 0x0020
-+#define TXMASK 0x3F00
-+#define TXOFFSET 8
-+
-+static char buf[ASC_BUF];
-+
-+void
-+prom_putchar(char c)
-+{
-+ unsigned long flags;
-+
-+ local_irq_save(flags);
-+ while ((lq_r32((u32 *)(LQ_ASC_BASE + LQ_ASC_FSTAT)) & TXMASK) >> TXOFFSET);
-+
-+ if (c == '\n')
-+ lq_w32('\r', (u32 *)(LQ_ASC_BASE + LQ_ASC_TBUF));
-+ lq_w32(c, (u32 *)(LQ_ASC_BASE + LQ_ASC_TBUF));
-+ local_irq_restore(flags);
-+}
-+
-+void
-+early_printf(const char *fmt, ...)
-+{
-+ va_list args;
-+ int l;
-+ char *p, *buf_end;
-+
-+ va_start(args, fmt);
-+ l = vsnprintf(buf, ASC_BUF, fmt, args);
-+ va_end(args);
-+ buf_end = buf + l;
-+
-+ for (p = buf; p < buf_end; p++)
-+ prom_putchar(*p);
-+}