prom_putchar() is used centrally in early printk infrastructure therefore
at least MIPS should agree on the function return type.
[paul.burton@mips.com:
  - Include linux/types.h in asm/setup.h to gain the bool typedef before
    we start include asm/setup.h elsewhere.
  - Include asm/setup.h in all files that use or define prom_putchar().
  - Also standardise on signed rather than unsigned char argument.]
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@nokia.com>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/19842/
Cc: linux-mips@linux-mips.org
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: James Hogan <jhogan@kernel.org>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: Kate Stewart <kstewart@linuxfoundation.org>
Cc: Philippe Ombredanne <pombredanne@nexb.com>
		
	
			
		
			
				
	
	
		
			42 lines
		
	
	
		
			955 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			955 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * This file is subject to the terms and conditions of the GNU General Public
 | |
|  * License.  See the file "COPYING" in the main directory of this archive
 | |
|  * for more details.
 | |
|  *
 | |
|  * Copyright (C) 2002, 2003, 06, 07 Ralf Baechle (ralf@linux-mips.org)
 | |
|  * Copyright (C) 2007 MIPS Technologies, Inc.
 | |
|  *   written by Ralf Baechle (ralf@linux-mips.org)
 | |
|  */
 | |
| #include <linux/kernel.h>
 | |
| #include <linux/console.h>
 | |
| #include <linux/printk.h>
 | |
| #include <linux/init.h>
 | |
| 
 | |
| #include <asm/setup.h>
 | |
| 
 | |
| static void early_console_write(struct console *con, const char *s, unsigned n)
 | |
| {
 | |
| 	while (n-- && *s) {
 | |
| 		if (*s == '\n')
 | |
| 			prom_putchar('\r');
 | |
| 		prom_putchar(*s);
 | |
| 		s++;
 | |
| 	}
 | |
| }
 | |
| 
 | |
| static struct console early_console_prom = {
 | |
| 	.name	= "early",
 | |
| 	.write	= early_console_write,
 | |
| 	.flags	= CON_PRINTBUFFER | CON_BOOT,
 | |
| 	.index	= -1
 | |
| };
 | |
| 
 | |
| void __init setup_early_printk(void)
 | |
| {
 | |
| 	if (early_console)
 | |
| 		return;
 | |
| 	early_console = &early_console_prom;
 | |
| 
 | |
| 	register_console(&early_console_prom);
 | |
| }
 |