diff options
author | Len Brown <len.brown@intel.com> | 2005-07-30 01:55:32 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-07-30 01:55:32 -0400 |
commit | adbedd34244e2b054557002817f979a9b004a405 (patch) | |
tree | 78e4a524e84f8b3e23ae8b49ac689048584e4668 /drivers/firmware/pcdp.c | |
parent | d6ac1a7910d22626bc77e73db091e00b810715f4 (diff) | |
parent | b0825488a642cadcf39709961dde61440cb0731c (diff) | |
download | kernel_goldelico_gta04-adbedd34244e2b054557002817f979a9b004a405.zip kernel_goldelico_gta04-adbedd34244e2b054557002817f979a9b004a405.tar.gz kernel_goldelico_gta04-adbedd34244e2b054557002817f979a9b004a405.tar.bz2 |
merge 2.6.13-rc4 with ACPI's to-linus tree
Diffstat (limited to 'drivers/firmware/pcdp.c')
-rw-r--r-- | drivers/firmware/pcdp.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/firmware/pcdp.c b/drivers/firmware/pcdp.c index 53c95c0..ae1fb45 100644 --- a/drivers/firmware/pcdp.c +++ b/drivers/firmware/pcdp.c @@ -25,14 +25,22 @@ setup_serial_console(struct pcdp_uart *uart) #ifdef CONFIG_SERIAL_8250_CONSOLE int mmio; static char options[64], *p = options; + char parity; mmio = (uart->addr.address_space_id == ACPI_ADR_SPACE_SYSTEM_MEMORY); p += sprintf(p, "console=uart,%s,0x%lx", mmio ? "mmio" : "io", uart->addr.address); - if (uart->baud) + if (uart->baud) { p += sprintf(p, ",%lu", uart->baud); - if (uart->bits) - p += sprintf(p, "n%d", uart->bits); + if (uart->bits) { + switch (uart->parity) { + case 0x2: parity = 'e'; break; + case 0x3: parity = 'o'; break; + default: parity = 'n'; + } + p += sprintf(p, "%c%d", parity, uart->bits); + } + } return early_serial_console_init(options); #else |