mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	MIPS: pic32: treat port as signed integer
get_port_from_cmdline() returns an int, yet is assigned to a char, which is wrong in its own right, but also, with char becoming unsigned, this poses problems, because -1 is used as an error value. Further complicating things, fw_init_early_console() is only ever called with a -1 argument. Fix this up by removing the unused argument from fw_init_early_console() and treating port as a proper signed integer. Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
This commit is contained in:
		
							parent
							
								
									64ac0befe7
								
							
						
					
					
						commit
						648060902a
					
				
					 3 changed files with 8 additions and 9 deletions
				
			
		| 
						 | 
					@ -26,6 +26,6 @@ extern char *fw_getcmdline(void);
 | 
				
			||||||
extern void fw_meminit(void);
 | 
					extern void fw_meminit(void);
 | 
				
			||||||
extern char *fw_getenv(char *name);
 | 
					extern char *fw_getenv(char *name);
 | 
				
			||||||
extern unsigned long fw_getenvl(char *name);
 | 
					extern unsigned long fw_getenvl(char *name);
 | 
				
			||||||
extern void fw_init_early_console(char port);
 | 
					extern void fw_init_early_console(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* __ASM_FW_H_ */
 | 
					#endif /* __ASM_FW_H_ */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -27,7 +27,7 @@
 | 
				
			||||||
#define U_BRG(x)	(UART_BASE(x) + 0x40)
 | 
					#define U_BRG(x)	(UART_BASE(x) + 0x40)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void __iomem *uart_base;
 | 
					static void __iomem *uart_base;
 | 
				
			||||||
static char console_port = -1;
 | 
					static int console_port = -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init configure_uart_pins(int port)
 | 
					static int __init configure_uart_pins(int port)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -47,7 +47,7 @@ static int __init configure_uart_pins(int port)
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void __init configure_uart(char port, int baud)
 | 
					static void __init configure_uart(int port, int baud)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	u32 pbclk;
 | 
						u32 pbclk;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -60,7 +60,7 @@ static void __init configure_uart(char port, int baud)
 | 
				
			||||||
		     uart_base + PIC32_SET(U_STA(port)));
 | 
							     uart_base + PIC32_SET(U_STA(port)));
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void __init setup_early_console(char port, int baud)
 | 
					static void __init setup_early_console(int port, int baud)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if (configure_uart_pins(port))
 | 
						if (configure_uart_pins(port))
 | 
				
			||||||
		return;
 | 
							return;
 | 
				
			||||||
| 
						 | 
					@ -130,16 +130,15 @@ static int __init get_baud_from_cmdline(char *arch_cmdline)
 | 
				
			||||||
	return baud;
 | 
						return baud;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void __init fw_init_early_console(char port)
 | 
					void __init fw_init_early_console(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	char *arch_cmdline = pic32_getcmdline();
 | 
						char *arch_cmdline = pic32_getcmdline();
 | 
				
			||||||
	int baud = -1;
 | 
						int baud, port;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	uart_base = ioremap(PIC32_BASE_UART, 0xc00);
 | 
						uart_base = ioremap(PIC32_BASE_UART, 0xc00);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	baud = get_baud_from_cmdline(arch_cmdline);
 | 
						baud = get_baud_from_cmdline(arch_cmdline);
 | 
				
			||||||
	if (port == -1)
 | 
						port = get_port_from_cmdline(arch_cmdline);
 | 
				
			||||||
		port = get_port_from_cmdline(arch_cmdline);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (port == -1)
 | 
						if (port == -1)
 | 
				
			||||||
		port = EARLY_CONSOLE_PORT;
 | 
							port = EARLY_CONSOLE_PORT;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,7 +47,7 @@ void __init plat_mem_setup(void)
 | 
				
			||||||
		strscpy(arcs_cmdline, boot_command_line, COMMAND_LINE_SIZE);
 | 
							strscpy(arcs_cmdline, boot_command_line, COMMAND_LINE_SIZE);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_EARLY_PRINTK
 | 
					#ifdef CONFIG_EARLY_PRINTK
 | 
				
			||||||
	fw_init_early_console(-1);
 | 
						fw_init_early_console();
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
	pic32_config_init();
 | 
						pic32_config_init();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue