mirror of
https://github.com/adulau/aha.git
synced 2024-12-29 12:16:20 +00:00
Use new txx9 serial driver.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
cdaed73afb
commit
5eaf7a21be
5 changed files with 53 additions and 29 deletions
|
@ -635,6 +635,7 @@ config SGI_IP32
|
|||
select OWN_DMA
|
||||
select DMA_IP32
|
||||
select DMA_NONCOHERENT
|
||||
select HAS_TXX9_SERIAL
|
||||
select HW_HAS_PCI
|
||||
select R5000_CPU_SCACHE
|
||||
select RM7000_CPU_SCACHE
|
||||
|
@ -814,6 +815,7 @@ config RWSEM_GENERIC_SPINLOCK
|
|||
|
||||
config RWSEM_XCHGADD_ALGORITHM
|
||||
bool
|
||||
select HAS_TXX9_SERIAL
|
||||
|
||||
config GENERIC_CALIBRATE_DELAY
|
||||
bool
|
||||
|
|
|
@ -44,6 +44,11 @@
|
|||
#include <linux/ioport.h>
|
||||
#include <linux/param.h> /* for HZ */
|
||||
#include <linux/delay.h>
|
||||
#ifdef CONFIG_SERIAL_TXX9
|
||||
#include <linux/tty.h>
|
||||
#include <linux/serial.h>
|
||||
#include <linux/serial_core.h>
|
||||
#endif
|
||||
|
||||
#include <asm/addrspace.h>
|
||||
#include <asm/time.h>
|
||||
|
@ -211,8 +216,8 @@ void __init plat_setup(void)
|
|||
*/
|
||||
ioport_resource.start = pci_io_resource.start;
|
||||
ioport_resource.end = pci_io_resource.end;
|
||||
iomem_resource.start = pci_mem_resource.start;
|
||||
iomem_resource.end = pci_mem_resource.end;
|
||||
iomem_resource.start = 0;
|
||||
iomem_resource.end = 0xffffffff;
|
||||
|
||||
/* Reboot on panic */
|
||||
panic_timeout = 180;
|
||||
|
@ -265,13 +270,33 @@ void __init plat_setup(void)
|
|||
strcat(argptr, " ip=bootp");
|
||||
}
|
||||
|
||||
#ifdef CONFIG_TXX927_SERIAL_CONSOLE
|
||||
#ifdef CONFIG_SERIAL_TXX9
|
||||
{
|
||||
extern int early_serial_txx9_setup(struct uart_port *port);
|
||||
int i;
|
||||
struct uart_port req;
|
||||
for(i = 0; i < 2; i++) {
|
||||
memset(&req, 0, sizeof(req));
|
||||
req.line = i;
|
||||
req.iotype = UPIO_MEM;
|
||||
req.membase = (char *)TX3927_SIO_REG(i);
|
||||
req.mapbase = TX3927_SIO_REG(i);
|
||||
req.irq = i == 0 ?
|
||||
JMR3927_IRQ_IRC_SIO0 : JMR3927_IRQ_IRC_SIO1;
|
||||
if (i == 0)
|
||||
req.flags |= UPF_BUGGY_UART /*HAVE_CTS_LINE*/;
|
||||
req.uartclk = JMR3927_IMCLK;
|
||||
early_serial_txx9_setup(&req);
|
||||
}
|
||||
}
|
||||
#ifdef CONFIG_SERIAL_TXX9_CONSOLE
|
||||
argptr = prom_getcmdline();
|
||||
if ((argptr = strstr(argptr, "console=")) == NULL) {
|
||||
argptr = prom_getcmdline();
|
||||
strcat(argptr, " console=ttyS1,115200");
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
static void tx3927_setup(void);
|
||||
|
|
|
@ -77,6 +77,11 @@
|
|||
#include <linux/hdreg.h>
|
||||
#include <linux/ide.h>
|
||||
#endif
|
||||
#ifdef CONFIG_SERIAL_TXX9
|
||||
#include <linux/tty.h>
|
||||
#include <linux/serial.h>
|
||||
#include <linux/serial_core.h>
|
||||
#endif
|
||||
|
||||
#undef TOSHIBA_RBTX4927_SETUP_DEBUG
|
||||
|
||||
|
@ -920,12 +925,30 @@ void __init toshiba_rbtx4927_setup(void)
|
|||
|
||||
#endif /* CONFIG_PCI */
|
||||
|
||||
#ifdef CONFIG_SERIAL_TXX9
|
||||
{
|
||||
extern int early_serial_txx9_setup(struct uart_port *port);
|
||||
int i;
|
||||
struct uart_port req;
|
||||
for(i = 0; i < 2; i++) {
|
||||
memset(&req, 0, sizeof(req));
|
||||
req.line = i;
|
||||
req.iotype = UPIO_MEM;
|
||||
req.membase = (char *)(0xff1ff300 + i * 0x100);
|
||||
req.mapbase = 0xff1ff300 + i * 0x100;
|
||||
req.irq = 32 + i;
|
||||
req.flags |= UPF_BUGGY_UART /*HAVE_CTS_LINE*/;
|
||||
req.uartclk = 50000000;
|
||||
early_serial_txx9_setup(&req);
|
||||
}
|
||||
}
|
||||
#ifdef CONFIG_SERIAL_TXX9_CONSOLE
|
||||
argptr = prom_getcmdline();
|
||||
if (strstr(argptr, "console=") == NULL) {
|
||||
strcat(argptr, " console=ttyS0,38400");
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ROOT_NFS
|
||||
argptr = prom_getcmdline();
|
||||
|
|
|
@ -201,20 +201,6 @@ static inline int jmr3927_have_isac(void)
|
|||
|
||||
#endif /* !__ASSEMBLY__ */
|
||||
|
||||
/*
|
||||
* UART defines for serial.h
|
||||
*/
|
||||
|
||||
/* use Pre-scaler T0 (1/2) */
|
||||
#define JMR3927_BASE_BAUD (JMR3927_IMCLK / 2 / 16)
|
||||
|
||||
#define UART0_ADDR 0xfffef300
|
||||
#define UART1_ADDR 0xfffef400
|
||||
#define UART0_INT JMR3927_IRQ_IRC_SIO0
|
||||
#define UART1_INT JMR3927_IRQ_IRC_SIO1
|
||||
#define UART0_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#define UART1_FLAGS 0
|
||||
|
||||
/*
|
||||
* IRQ mappings
|
||||
*/
|
||||
|
|
|
@ -103,17 +103,6 @@
|
|||
#define IVR_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TOSHIBA_JMR3927
|
||||
#include <asm/jmr3927/jmr3927.h>
|
||||
#define TXX927_SERIAL_PORT_DEFNS \
|
||||
{ .baud_base = JMR3927_BASE_BAUD, .port = UART0_ADDR, .irq = UART0_INT, \
|
||||
.flags = UART0_FLAGS, .type = 1 }, \
|
||||
{ .baud_base = JMR3927_BASE_BAUD, .port = UART1_ADDR, .irq = UART1_INT, \
|
||||
.flags = UART1_FLAGS, .type = 1 },
|
||||
#else
|
||||
#define TXX927_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_AU1X00
|
||||
#include <asm/mach-au1x00/au1000.h>
|
||||
#ifdef CONFIG_SOC_AU1000
|
||||
|
@ -343,7 +332,6 @@
|
|||
MOMENCO_OCELOT_C_SERIAL_PORT_DEFNS \
|
||||
MOMENCO_OCELOT_SERIAL_PORT_DEFNS \
|
||||
MOMENCO_OCELOT_3_SERIAL_PORT_DEFNS \
|
||||
TXX927_SERIAL_PORT_DEFNS \
|
||||
AU1000_SERIAL_PORT_DEFNS
|
||||
|
||||
#endif /* _ASM_SERIAL_H */
|
||||
|
|
Loading…
Reference in a new issue