38 lines
1.1 KiB
Plaintext
38 lines
1.1 KiB
Plaintext
|
--- linux-mips-cvs/drivers/char/serial.c 2004-12-27 05:13:43.000000000 +0100
|
||
|
+++ linux-broadcom/drivers/char/serial.c 2005-01-31 13:13:14.000000000 +0100
|
||
|
@@ -444,6 +444,10 @@
|
||
|
return inb(info->port+1);
|
||
|
#endif
|
||
|
case SERIAL_IO_MEM:
|
||
|
+#ifdef CONFIG_BCM4310
|
||
|
+ readb((unsigned long) info->iomem_base +
|
||
|
+ (UART_SCR<<info->iomem_reg_shift));
|
||
|
+#endif
|
||
|
return readb((unsigned long) info->iomem_base +
|
||
|
(offset<<info->iomem_reg_shift));
|
||
|
default:
|
||
|
@@ -464,6 +468,9 @@
|
||
|
case SERIAL_IO_MEM:
|
||
|
writeb(value, (unsigned long) info->iomem_base +
|
||
|
(offset<<info->iomem_reg_shift));
|
||
|
+#ifdef CONFIG_BCM4704
|
||
|
+ *((volatile unsigned int *) KSEG1ADDR(0x18000000));
|
||
|
+#endif
|
||
|
break;
|
||
|
default:
|
||
|
outb(value, info->port+offset);
|
||
|
@@ -5996,6 +6003,13 @@
|
||
|
* Divisor, bytesize and parity
|
||
|
*/
|
||
|
state = rs_table + co->index;
|
||
|
+ /*
|
||
|
+ * Safe guard: state structure must have been initialized
|
||
|
+ */
|
||
|
+ if (state->iomem_base == NULL) {
|
||
|
+ printk("!unable to setup serial console!\n");
|
||
|
+ return -1;
|
||
|
+ }
|
||
|
if (doflow)
|
||
|
state->flags |= ASYNC_CONS_FLOW;
|
||
|
info = &async_sercons;
|