[RFC][PATCH 12/26] MIPS: JZ4740: Add prom support

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Lars-Peter Clausen
Date: Wednesday, June 2, 2010 - 12:10 pm

This patch adds support for initializing arcs_cmdline on JZ4740 based machines
and provides a prom_putchar implementation.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 arch/mips/jz4740/prom.c |   69 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)
 create mode 100644 arch/mips/jz4740/prom.c

diff --git a/arch/mips/jz4740/prom.c b/arch/mips/jz4740/prom.c
new file mode 100644
index 0000000..6518aee
--- /dev/null
+++ b/arch/mips/jz4740/prom.c
@@ -0,0 +1,69 @@
+/*
+ *  Copyright (C) 2010, Lars-Peter Clausen <lars@metafoo.de>
+ *  JZ4740 SoC prom code
+ *
+ *  This program is free software; you can redistribute	 it and/or modify it
+ *  under  the terms of	 the GNU General  Public License as published by the
+ *  Free Software Foundation;  either version 2 of the	License, or (at your
+ *  option) any later version.
+ *
+ *  You should have received a copy of the  GNU General Public License along
+ *  with this program; if not, write  to the Free Software Foundation, Inc.,
+ *  675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ */
+
+
+#include <linux/module.h>
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/string.h>
+
+#include <linux/serial_reg.h>
+
+#include <asm/bootinfo.h>
+#include <asm/mach-jz4740/base.h>
+
+void jz4740_init_cmdline(int argc, char *argv[])
+{
+	unsigned int count = COMMAND_LINE_SIZE - 1;
+	int i;
+	char *dst = &(arcs_cmdline[0]);
+	char *src;
+
+	for (i = 1; i < argc && count; ++i) {
+		src = argv[i];
+		while (*src && count) {
+			*dst++ = *src++;
+			--count;
+		}
+		*dst++ = ' ';
+	}
+	if (i > 1)
+		--dst;
+
+	*dst = 0;
+}
+
+void __init prom_init(void)
+{
+	jz4740_init_cmdline((int)fw_arg0, (char **)fw_arg1);
+	mips_machtype = MACH_INGENIC_JZ4740;
+}
+
+void __init prom_free_prom_memory(void)
+{
+}
+
+#define UART_REG(_reg) ((void __iomem *)(JZ4740_UART0_BASE_ADDR + (_reg << 2)))
+
+void prom_putchar(char c)
+{
+	uint8_t lsr;
+
+	do {
+		lsr = readb(UART_REG(UART_LSR));
+	} while ((lsr & UART_LSR_TEMT) == 0);
+
+	writeb(c, UART_REG(UART_TX));
+}
-- 
1.5.6.5

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC][PATCH 00/26] *** SUBJECT HERE ***, Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 01/26] MIPS: Add base support for Ingenic JZ47 ..., Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 02/26] MIPS: jz4740: Add IRQ handler code, Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 03/26] MIPS: JZ4740: Add clock API support., Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 04/26] MIPS: JZ4740: Add timer support, Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 07/26] MIPS: JZ4740: Add setup code, Lars-Peter Clausen, (Wed Jun 2, 12:02 pm)
[RFC][PATCH 09/26] MIPS: JZ4740: Add DMA support., Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 10/26] MIPS: JZ4740: Add PWM support, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 11/26] MIPS: JZ4740: Add serial support, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 12/26] MIPS: JZ4740: Add prom support, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 13/26] MIPS: JZ4740: Add platform devices, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 14/26] MIPS: JZ4740: Add Kbuild files, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 15/26] RTC: Add JZ4740 RTC driver, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 16/26] fbdev: Add JZ4740 framebuffer driver, Lars-Peter Clausen, (Wed Jun 2, 12:10 pm)
[RFC][PATCH 17/26] MTD: Nand: Add JZ4740 NAND driver, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 18/26] MMC: Add JZ4740 mmc driver, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 19/26] USB: Add JZ4740 ohci support, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 20/26] alsa: ASoC: Add JZ4740 codec driver, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 21/26] alsa: ASoC: Add JZ4740 ASoC support, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 22/26] hwmon: Add JZ4740 ADC driver, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 23/26] power: Add JZ4740 battery driver., Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 24/26] MIPS: JZ4740: Add qi_lb60 board support, Lars-Peter Clausen, (Wed Jun 2, 12:12 pm)
[RFC][PATCH 25/26] MIPS: Add defconfig for the qi_lb60 board, Lars-Peter Clausen, (Wed Jun 2, 12:15 pm)
[RFC][PATCH 26/26] alsa: ASoC: JZ4740: Add qi_lb60 board d ..., Lars-Peter Clausen, (Wed Jun 2, 12:15 pm)
Re: [RFC][PATCH 16/26] fbdev: Add JZ4740 framebuffer driver, Lars-Peter Clausen, (Wed Jun 2, 1:05 pm)
Re: [RFC][PATCH 02/26] MIPS: jz4740: Add IRQ handler code, Florian Fainelli, (Thu Jun 3, 7:29 am)
Re: [RFC][PATCH 21/26] alsa: ASoC: Add JZ4740 ASoC support, Lars-Peter Clausen, (Thu Jun 3, 9:50 am)
Re: [alsa-devel] [RFC][PATCH 20/26] alsa: ASoC: Add JZ4740 ..., Lars-Peter Clausen, (Thu Jun 3, 9:58 am)
Re: [RFC][PATCH 01/26] MIPS: Add base support for Ingenic ..., Lars-Peter Clausen, (Thu Jun 3, 10:03 am)
Re: [RFC][PATCH 21/26] alsa: ASoC: Add JZ4740 ASoC support, Lars-Peter Clausen, (Thu Jun 3, 10:16 am)
Re: [RFC][PATCH 03/26] MIPS: JZ4740: Add clock API support., Lars-Peter Clausen, (Thu Jun 3, 10:20 am)
Re: [RFC][PATCH 21/26] alsa: ASoC: Add JZ4740 ASoC support, Lars-Peter Clausen, (Thu Jun 3, 10:37 am)
Re: [RFC][PATCH 21/26] alsa: ASoC: Add JZ4740 ASoC support, Lars-Peter Clausen, (Thu Jun 3, 12:27 pm)
Re: [RFC][PATCH 20/26] alsa: ASoC: Add JZ4740 codec driver, Lars-Peter Clausen, (Thu Jun 3, 4:57 pm)
Re: [RFC][PATCH 14/26] MIPS: JZ4740: Add Kbuild files, Ralf Baechle, (Thu Jun 3, 5:47 pm)
Re: [RFC][PATCH 22/26] hwmon: Add JZ4740 ADC driver, Jonathan Cameron, (Sat Jun 5, 10:22 am)
Re: [rtc-linux] [RFC][PATCH 15/26] RTC: Add JZ4740 RTC driver, Lars-Peter Clausen, (Sat Jun 5, 10:26 am)
Re: [RFC][PATCH 22/26] hwmon: Add JZ4740 ADC driver, Lars-Peter Clausen, (Sat Jun 5, 12:08 pm)
Re: [lm-sensors] [RFC][PATCH 22/26] hwmon: Add JZ4740 ADC ..., Lars-Peter Clausen, (Sat Jun 5, 3:12 pm)
Re: [RFC][PATCH 17/26] MTD: Nand: Add JZ4740 NAND driver, Artem Bityutskiy, (Sun Jun 13, 2:40 am)
Re: [RFC][PATCH 23/26] power: Add JZ4740 battery driver., Anton Vorontsov, (Mon Jun 14, 8:51 am)
Re: [RFC][PATCH 23/26] power: Add JZ4740 battery driver., Lars-Peter Clausen, (Tue Jun 15, 10:28 am)
Re: [RFC][PATCH 23/26] power: Add JZ4740 battery driver., Ralf Baechle, (Tue Jun 15, 10:34 am)
Re: [RFC][PATCH 23/26] power: Add JZ4740 battery driver., Lars-Peter Clausen, (Fri Jun 18, 8:48 pm)
hi!!!!, dkisky, (Sun Nov 14, 6:29 am)