diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/serial/serial.c | 17 | ||||
| -rw-r--r-- | drivers/serial/serial_s3c24x0.c | 14 | ||||
| -rw-r--r-- | drivers/serial/serial_s5p.c | 16 | 
3 files changed, 47 insertions, 0 deletions
| diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index 4032dfde7..4afdd414e 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -22,6 +22,7 @@   */  #include <common.h> +#include <linux/compiler.h>  #include <ns16550.h>  #ifdef CONFIG_NS87308 @@ -335,4 +336,20 @@ struct serial_device eserial3_device =  DECLARE_ESERIAL_FUNCTIONS(4);  struct serial_device eserial4_device =  	INIT_ESERIAL_STRUCTURE(4,"eserial3","EUART4"); + +__weak struct serial_device *default_serial_console(void) +{ +#if CONFIG_CONS_INDEX == 1 +	return &eserial1_device; +#elif CONFIG_CONS_INDEX == 2 +	return &eserial2_device; +#elif CONFIG_CONS_INDEX == 3 +	return &eserial3_device; +#elif CONFIG_CONS_INDEX == 4 +	return &eserial4_device; +#else +#error "Bad CONFIG_CONS_INDEX." +#endif +} +  #endif /* CONFIG_SERIAL_MULTI */ diff --git a/drivers/serial/serial_s3c24x0.c b/drivers/serial/serial_s3c24x0.c index abdbff1cb..ff35ce595 100644 --- a/drivers/serial/serial_s3c24x0.c +++ b/drivers/serial/serial_s3c24x0.c @@ -19,6 +19,7 @@   */  #include <common.h> +#include <linux/compiler.h>  #include <asm/arch/s3c24x0_cpu.h>  DECLARE_GLOBAL_DATA_PTR; @@ -310,4 +311,17 @@ INIT_S3C_SERIAL_STRUCTURE(1, "s3ser1", "S3UART2");  DECLARE_S3C_SERIAL_FUNCTIONS(2);  struct serial_device s3c24xx_serial2_device =  INIT_S3C_SERIAL_STRUCTURE(2, "s3ser2", "S3UART3"); + +__weak struct serial_device *default_serial_console(void) +{ +#if defined(CONFIG_SERIAL1) +	return &s3c24xx_serial0_device; +#elif defined(CONFIG_SERIAL2) +	return &s3c24xx_serial1_device; +#elif defined(CONFIG_SERIAL3) +	return &s3c24xx_serial2_device; +#else +#error "CONFIG_SERIAL? missing." +#endif +}  #endif /* CONFIG_SERIAL_MULTI */ diff --git a/drivers/serial/serial_s5p.c b/drivers/serial/serial_s5p.c index f1ffa29fd..6604aa94a 100644 --- a/drivers/serial/serial_s5p.c +++ b/drivers/serial/serial_s5p.c @@ -22,6 +22,7 @@   */  #include <common.h> +#include <linux/compiler.h>  #include <asm/io.h>  #include <asm/arch/uart.h>  #include <asm/arch/clk.h> @@ -205,3 +206,18 @@ struct serial_device s5p_serial2_device =  DECLARE_S5P_SERIAL_FUNCTIONS(3);  struct serial_device s5p_serial3_device =  	INIT_S5P_SERIAL_STRUCTURE(3, "s5pser3", "S5PUART3"); + +__weak struct serial_device *default_serial_console(void) +{ +#if defined(CONFIG_SERIAL0) +	return &s5p_serial0_device; +#elif defined(CONFIG_SERIAL1) +	return &s5p_serial1_device; +#elif defined(CONFIG_SERIAL2) +	return &s5p_serial2_device; +#elif defined(CONFIG_SERIAL3) +	return &s5p_serial3_device; +#else +#error "CONFIG_SERIAL? missing." +#endif +} |