Commit 70cc3dfa authored by Dirk Behme's avatar Dirk Behme Committed by Russell King

[ARM PATCH] 1835/1: Make ALTERA Excalibur work again in 2.6.5

Patch from Dirk Behme

Make ALTERA Excalibur work again in 2.6.4. Update serial driver uart00.c and defconfig.

This is an update of patch 1833/1.

Remove #include <config/pld/hotswap.h>, it isn't necessary at all. 
parent f3fea915
This diff is collapsed.
...@@ -7,6 +7,8 @@ ...@@ -7,6 +7,8 @@
* Deep Blue Solutions Ltd. * Deep Blue Solutions Ltd.
* Copyright 2001 Altera Corporation * Copyright 2001 Altera Corporation
* *
* Update for 2.6.4 by Dirk Behme <dirk.behme@de.bosch.com>
*
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
...@@ -32,7 +34,6 @@ ...@@ -32,7 +34,6 @@
#include <linux/serial.h> #include <linux/serial.h>
#include <linux/console.h> #include <linux/console.h>
#include <linux/sysrq.h> #include <linux/sysrq.h>
#include <linux/pld/pld_hotswap.h>
#include <asm/io.h> #include <asm/io.h>
#include <asm/irq.h> #include <asm/irq.h>
...@@ -251,7 +252,7 @@ static void uart00_modem_status(struct uart_port *port) ...@@ -251,7 +252,7 @@ static void uart00_modem_status(struct uart_port *port)
wake_up_interruptible(&port->info->delta_msr_wait); wake_up_interruptible(&port->info->delta_msr_wait);
} }
static void uart00_int(int irq, void *dev_id, struct pt_regs *regs) static irqreturn_t uart00_int(int irq, void *dev_id, struct pt_regs *regs)
{ {
struct uart_port *port = dev_id; struct uart_port *port = dev_id;
unsigned int status, pass_counter = 0; unsigned int status, pass_counter = 0;
...@@ -269,6 +270,8 @@ static void uart00_int(int irq, void *dev_id, struct pt_regs *regs) ...@@ -269,6 +270,8 @@ static void uart00_int(int irq, void *dev_id, struct pt_regs *regs)
status = UART_GET_INT_STATUS(port); status = UART_GET_INT_STATUS(port);
} while (status); } while (status);
return IRQ_HANDLED;
} }
static unsigned int uart00_tx_empty(struct uart_port *port) static unsigned int uart00_tx_empty(struct uart_port *port)
...@@ -613,7 +616,7 @@ uart00_console_get_options(struct uart_port *port, int *baud, ...@@ -613,7 +616,7 @@ uart00_console_get_options(struct uart_port *port, int *baud,
static int __init uart00_console_setup(struct console *co, char *options) static int __init uart00_console_setup(struct console *co, char *options)
{ {
struct uart_port *port; struct uart_port *port;
int baud = 38400; int baud = 115200;
int bits = 8; int bits = 8;
int parity = 'n'; int parity = 'n';
int flow = 'n'; int flow = 'n';
...@@ -639,7 +642,7 @@ static struct console uart00_console = { ...@@ -639,7 +642,7 @@ static struct console uart00_console = {
.setup = uart00_console_setup, .setup = uart00_console_setup,
.flags = CON_PRINTBUFFER, .flags = CON_PRINTBUFFER,
.index = 0, .index = 0,
.data = &uart00_reg; .data = &uart00_reg,
}; };
static int __init uart00_console_init(void) static int __init uart00_console_init(void)
...@@ -669,9 +672,10 @@ struct dev_port_entry{ ...@@ -669,9 +672,10 @@ struct dev_port_entry{
struct uart_port *port; struct uart_port *port;
}; };
#ifdef CONFIG_PLD_HOTSWAP
static struct dev_port_entry dev_port_map[UART_NR]; static struct dev_port_entry dev_port_map[UART_NR];
#ifdef CONFIG_PLD_HOTSWAP
/* /*
* Keep a mapping of dev_info addresses -> port lines to use when * Keep a mapping of dev_info addresses -> port lines to use when
* removing ports dev==NULL indicates unused entry * removing ports dev==NULL indicates unused entry
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment