2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-18 02:04:05 +08:00
linux-next/drivers/serial
Yinghai Lu 18a8bd949d serial: convert early_uart to earlycon for 8250
Beacuse SERIAL_PORT_DFNS is removed from include/asm-i386/serial.h and
include/asm-x86_64/serial.h.  the serial8250_ports need to be probed late in
serial initializing stage.  the console_init=>serial8250_console_init=>
register_console=>serial8250_console_setup will return -ENDEV, and console
ttyS0 can not be enabled at that time.  need to wait till uart_add_one_port in
drivers/serial/serial_core.c to call register_console to get console ttyS0.
that is too late.

Make early_uart to use early_param, so uart console can be used earlier.  Make
it to be bootconsole with CON_BOOT flag, so can use console handover feature.
and it will switch to corresponding normal serial console automatically.

new command line will be:
	console=uart8250,io,0x3f8,9600n8
	console=uart8250,mmio,0xff5e0000,115200n8
or
	earlycon=uart8250,io,0x3f8,9600n8
	earlycon=uart8250,mmio,0xff5e0000,115200n8

it will print in very early stage:
	Early serial console at I/O port 0x3f8 (options '9600n8')
	console [uart0] enabled
later for console it will print:
	console handover: boot [uart0] -> real [ttyS0]

Signed-off-by: <yinghai.lu@sun.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-16 09:05:35 -07:00
..
cpm_uart [POWERPC] CPM_UART: Removed __init from cpm_uart_init_portdesc to fix warning 2007-05-09 23:44:58 -05:00
jsm PCI: Change all drivers to use pci_device->revision 2007-07-11 16:02:10 -07:00
8250_accent.c
8250_acorn.c [ARM] ecard: add ecardm_iomap() / ecardm_iounmap() 2007-05-11 17:19:02 +01:00
8250_au1x00.c [SERIAL] AMD Alchemy UART: claim memory range 2006-04-30 11:15:58 +01:00
8250_boca.c
8250_early.c serial: convert early_uart to earlycon for 8250 2007-07-16 09:05:35 -07:00
8250_exar_st16c554.c [PATCH] Exar quad port serial 2006-12-07 08:39:35 -08:00
8250_fourport.c
8250_gsc.c [PARISC] Clean up asm-parisc/serial.h 2006-10-04 06:47:03 -06:00
8250_hp300.c [PATCH] hp300: fix driver_register() return handling, remove dio_module_init() 2006-03-25 08:22:53 -08:00
8250_hub6.c
8250_mca.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
8250_pci.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
8250_pnp.c [PATCH] add Fujitsu Siemens Tablet PC devices to 8250_pnp.c 2007-03-23 11:01:22 -07:00
8250.c serial: convert early_uart to earlycon for 8250 2007-07-16 09:05:35 -07:00
8250.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
21285.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
68328serial.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
68328serial.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
68360serial.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
amba-pl010.c [ARM] Fix 4417/1: Serial: Fix AMBA drivers locking 2007-06-05 19:39:49 +01:00
amba-pl011.c [ARM] 4417/1: Serial: Fix AMBA drivers locking 2007-05-30 14:33:01 +01:00
atmel_serial.c [ARM] 4357/1: AT91: Support slower serial baud-rates 2007-05-03 14:12:45 +01:00
atmel_serial.h [ARM] 4357/1: AT91: Support slower serial baud-rates 2007-05-03 14:12:45 +01:00
bfin_5xx.c Blackfin serial driver: supporting BF548-EZKIT serial port 2007-07-12 16:43:46 +08:00
clps711x.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
crisv10.c [PATCH] Char: tty_wakeup cleanup 2007-02-11 10:51:26 -08:00
dz.c [PATCH] dz: remove struct pt_regs references 2007-03-05 07:57:51 -08:00
dz.h [PATCH] dz: Fixes to make it work 2006-12-07 08:39:41 -08:00
icom.c icom: add new sub-device-id to support new adapter 2007-05-17 05:23:05 -07:00
icom.h do not truncate irq number for icom adapter 2007-04-24 08:23:08 -07:00
imx.c [ARM] 4328/1: Move i.MX UART regs to driver 2007-05-03 20:24:21 +01:00
ioc3_serial.c [PATCH] serial: replace kmalloc+memset with kzalloc 2007-02-14 08:09:52 -08:00
ioc4_serial.c [PATCH] serial: replace kmalloc+memset with kzalloc 2007-02-14 08:09:52 -08:00
ip22zilog.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ip22zilog.h
Kconfig serial: convert early_uart to earlycon for 8250 2007-07-16 09:05:35 -07:00
m32r_sio_reg.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
m32r_sio.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
m32r_sio.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
Makefile [ARM] 4332/2: KS8695: Serial driver 2007-05-11 22:02:52 +01:00
mcfserial.c [PATCH] m68knommu: fix work queues in mcfserial.c driver 2007-03-06 18:08:38 -08:00
mcfserial.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mpc52xx_uart.c [POWERPC] Don't shutdown TX on mpc5200 serial port if it is a console 2007-05-07 20:31:15 +10:00
mpsc.c serial: clear proper MPSC interrupt cause bits 2007-06-28 11:38:29 -07:00
mux.c Merge branch 'parisc' from /home/kyle/repos/parisc-2.6.git 2007-02-17 00:18:23 -05:00
netx-serial.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
of_serial.c Merge branch 'linux-2.6' 2007-05-08 13:37:51 +10:00
pmac_zilog.c [POWERPC] Rename device_is_compatible to of_device_is_compatible 2007-05-07 20:31:14 +10:00
pmac_zilog.h [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
pnx8xxx_uart.c [PATCH] PNX8550 UART driver 2007-02-14 08:09:52 -08:00
pxa.c [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX 2007-04-21 23:14:01 +01:00
s3c2410.c SPIN_LOCK_UNLOCKED cleanup in drivers/serial 2007-05-08 11:15:11 -07:00
sa1100.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
serial_core.c serial: assert DTR for serial console devices 2007-07-16 09:05:34 -07:00
serial_cs.c PCMCIA-NETDEV : add new ID of lan&modem multifunction card 2007-07-08 22:16:39 -04:00
serial_ks8695.c [ARM] 4411/1: KS8695: Another serial driver fix 2007-05-30 13:15:19 +01:00
serial_lh7a40x.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
serial_txx9.c serial_txx9: zap changelog from source code 2007-05-08 11:15:12 -07:00
sh-sci.c serial: sh-sci: Fix module clock refcount for serial console. 2007-05-07 02:11:56 +00:00
sh-sci.h sh: MS7712SE01 board support. 2007-05-07 02:10:54 +00:00
sn_console.c [PATCH] 2.6 Altix: console fix for CONFIG_DEBUG_SHIRQ usage 2007-03-08 07:39:15 -08:00
suncore.c [SPARC]: Linux always started with 9600 8N1 2007-05-29 02:50:07 -07:00
suncore.h
sunhv.c [SPARC64]: Add hypervisor API negotiation and fix console bugs. 2007-05-15 20:23:02 -07:00
sunsab.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sunsab.h
sunsu.c [SERIAL] sunsu: Fix section mismatch warnings. 2007-05-07 00:14:13 -07:00
sunzilog.c [SERIAL] sunzilog: section mismatch fix 2007-05-29 02:49:17 -07:00
sunzilog.h [SERIAL] sunzilog: Interrupt enable before ISR handler installed 2007-05-09 13:49:04 -07:00
uartlite.c [PATCH] drivers/serial NULL noise removal 2007-02-09 09:14:06 -08:00
v850e_uart.c [PATCH] tty: switch to ktermios 2006-12-08 08:28:57 -08:00
vr41xx_siu.c [MIPS] separate platform_device registration for VR41xx serial interface 2007-07-12 17:41:13 +01:00