aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/boards/se/7751
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-09-27 02:41:24 -0400
committerPaul Mundt <lethal@linux-sh.org>2006-09-27 02:41:24 -0400
commit373e68b5472d421cbd2703e7a77caf053f78c005 (patch)
tree6fed51fdf1b89f80a1ec9ea4aab285c1af649945 /arch/sh/boards/se/7751
parentf647d33f879d258de4ab2559975bd6eebda2033e (diff)
sh: Board updates for I/O routine rework.
This updates the various boards for some of the recent I/O routine updates. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boards/se/7751')
-rw-r--r--arch/sh/boards/se/7751/io.c26
-rw-r--r--arch/sh/boards/se/7751/irq.c2
-rw-r--r--arch/sh/boards/se/7751/led.c3
-rw-r--r--arch/sh/boards/se/7751/mach.c8
-rw-r--r--arch/sh/boards/se/7751/setup.c6
5 files changed, 14 insertions, 31 deletions
diff --git a/arch/sh/boards/se/7751/io.c b/arch/sh/boards/se/7751/io.c
index 99041b269261..0e8a3ba48316 100644
--- a/arch/sh/boards/se/7751/io.c
+++ b/arch/sh/boards/se/7751/io.c
@@ -1,4 +1,4 @@
1/* 1/*
2 * linux/arch/sh/kernel/io_7751se.c 2 * linux/arch/sh/kernel/io_7751se.c
3 * 3 *
4 * Copyright (C) 2001 Ian da Silva, Jeremy Siegel 4 * Copyright (C) 2001 Ian da Silva, Jeremy Siegel
@@ -14,7 +14,7 @@
14#include <linux/kernel.h> 14#include <linux/kernel.h>
15#include <linux/types.h> 15#include <linux/types.h>
16#include <asm/io.h> 16#include <asm/io.h>
17#include <asm/se7751/se7751.h> 17#include <asm/se7751.h>
18#include <asm/addrspace.h> 18#include <asm/addrspace.h>
19 19
20#include <linux/pci.h> 20#include <linux/pci.h>
@@ -52,10 +52,6 @@ int sh_pcic_io_dummy;
52 52
53#define PCI_IOMAP(adr) (PCI_IO_AREA + (adr & ~SH7751_PCIIOBR_MASK)) 53#define PCI_IOMAP(adr) (PCI_IO_AREA + (adr & ~SH7751_PCIIOBR_MASK))
54 54
55#define maybebadio(name,port) \
56 printk("bad PC-like io %s for port 0x%lx at 0x%08x\n", \
57 #name, (port), (__u32) __builtin_return_address(0))
58
59static inline void delay(void) 55static inline void delay(void)
60{ 56{
61 ctrl_inw(0xa0000000); 57 ctrl_inw(0xa0000000);
@@ -66,11 +62,7 @@ port2adr(unsigned int port)
66{ 62{
67 if (port >= 0x2000) 63 if (port >= 0x2000)
68 return (volatile __u16 *) (PA_MRSHPC + (port - 0x2000)); 64 return (volatile __u16 *) (PA_MRSHPC + (port - 0x2000));
69#if 0 65 maybebadio((unsigned long)port);
70 else
71 return (volatile __u16 *) (PA_SUPERIO + (port << 1));
72#endif
73 maybebadio(name,(unsigned long)port);
74 return (volatile __u16*)port; 66 return (volatile __u16*)port;
75} 67}
76 68
@@ -140,7 +132,7 @@ unsigned short sh7751se_inw(unsigned long port)
140 else if (port >= 0x2000) 132 else if (port >= 0x2000)
141 return *port2adr(port); 133 return *port2adr(port);
142 else 134 else
143 maybebadio(inw, port); 135 maybebadio(port);
144 return 0; 136 return 0;
145} 137}
146 138
@@ -153,7 +145,7 @@ unsigned int sh7751se_inl(unsigned long port)
153 else if (port >= 0x2000) 145 else if (port >= 0x2000)
154 return *port2adr(port); 146 return *port2adr(port);
155 else 147 else
156 maybebadio(inl, port); 148 maybebadio(port);
157 return 0; 149 return 0;
158} 150}
159 151
@@ -188,7 +180,7 @@ void sh7751se_outw(unsigned short value, unsigned long port)
188 else if (port >= 0x2000) 180 else if (port >= 0x2000)
189 *port2adr(port) = value; 181 *port2adr(port) = value;
190 else 182 else
191 maybebadio(outw, port); 183 maybebadio(port);
192} 184}
193 185
194void sh7751se_outl(unsigned int value, unsigned long port) 186void sh7751se_outl(unsigned int value, unsigned long port)
@@ -198,17 +190,17 @@ void sh7751se_outl(unsigned int value, unsigned long port)
198 else if (CHECK_SH7751_PCIIO(port)) 190 else if (CHECK_SH7751_PCIIO(port))
199 *((unsigned long*)PCI_IOMAP(port)) = value; 191 *((unsigned long*)PCI_IOMAP(port)) = value;
200 else 192 else
201 maybebadio(outl, port); 193 maybebadio(port);
202} 194}
203 195
204void sh7751se_insl(unsigned long port, void *addr, unsigned long count) 196void sh7751se_insl(unsigned long port, void *addr, unsigned long count)
205{ 197{
206 maybebadio(insl, port); 198 maybebadio(port);
207} 199}
208 200
209void sh7751se_outsl(unsigned long port, const void *addr, unsigned long count) 201void sh7751se_outsl(unsigned long port, const void *addr, unsigned long count)
210{ 202{
211 maybebadio(outsw, port); 203 maybebadio(port);
212} 204}
213 205
214/* Map ISA bus address to the real address. Only for PCMCIA. */ 206/* Map ISA bus address to the real address. Only for PCMCIA. */
diff --git a/arch/sh/boards/se/7751/irq.c b/arch/sh/boards/se/7751/irq.c
index bf6c023615df..c607b0a48479 100644
--- a/arch/sh/boards/se/7751/irq.c
+++ b/arch/sh/boards/se/7751/irq.c
@@ -12,7 +12,7 @@
12#include <linux/init.h> 12#include <linux/init.h>
13#include <linux/irq.h> 13#include <linux/irq.h>
14#include <asm/irq.h> 14#include <asm/irq.h>
15#include <asm/se7751/se7751.h> 15#include <asm/se7751.h>
16 16
17/* 17/*
18 * Initialize IRQ setting 18 * Initialize IRQ setting
diff --git a/arch/sh/boards/se/7751/led.c b/arch/sh/boards/se/7751/led.c
index 4405e26cf866..ff0355dea81b 100644
--- a/arch/sh/boards/se/7751/led.c
+++ b/arch/sh/boards/se/7751/led.c
@@ -8,9 +8,8 @@
8 * 8 *
9 * This file contains Solution Engine specific LED code. 9 * This file contains Solution Engine specific LED code.
10 */ 10 */
11
12#include <asm/se7751/se7751.h>
13#include <linux/sched.h> 11#include <linux/sched.h>
12#include <asm/se7751.h>
14 13
15/* Cycle the LED's in the clasic Knightrider/Sun pattern */ 14/* Cycle the LED's in the clasic Knightrider/Sun pattern */
16void heartbeat_7751se(void) 15void heartbeat_7751se(void)
diff --git a/arch/sh/boards/se/7751/mach.c b/arch/sh/boards/se/7751/mach.c
index 62d8d3e62590..1bb9047d863b 100644
--- a/arch/sh/boards/se/7751/mach.c
+++ b/arch/sh/boards/se/7751/mach.c
@@ -10,12 +10,8 @@
10 */ 10 */
11 11
12#include <linux/init.h> 12#include <linux/init.h>
13
14#include <asm/machvec.h> 13#include <asm/machvec.h>
15#include <asm/rtc.h> 14#include <asm/se7751.h>
16#include <asm/machvec_init.h>
17
18#include <asm/se7751/io.h>
19 15
20void heartbeat_7751se(void); 16void heartbeat_7751se(void);
21void init_7751se_IRQ(void); 17void init_7751se_IRQ(void);
@@ -44,8 +40,6 @@ struct sh_machine_vector mv_7751se __initmv = {
44 .mv_insl = sh7751se_insl, 40 .mv_insl = sh7751se_insl,
45 .mv_outsl = sh7751se_outsl, 41 .mv_outsl = sh7751se_outsl,
46 42
47 .mv_isa_port2addr = sh7751se_isa_port2addr,
48
49 .mv_init_irq = init_7751se_IRQ, 43 .mv_init_irq = init_7751se_IRQ,
50#ifdef CONFIG_HEARTBEAT 44#ifdef CONFIG_HEARTBEAT
51 .mv_heartbeat = heartbeat_7751se, 45 .mv_heartbeat = heartbeat_7751se,
diff --git a/arch/sh/boards/se/7751/setup.c b/arch/sh/boards/se/7751/setup.c
index 48dc5aee67d4..8b693105893c 100644
--- a/arch/sh/boards/se/7751/setup.c
+++ b/arch/sh/boards/se/7751/setup.c
@@ -1,4 +1,4 @@
1/* 1/*
2 * linux/arch/sh/kernel/setup_7751se.c 2 * linux/arch/sh/kernel/setup_7751se.c
3 * 3 *
4 * Copyright (C) 2000 Kazumoto Kojima 4 * Copyright (C) 2000 Kazumoto Kojima
@@ -11,11 +11,9 @@
11 11
12#include <linux/init.h> 12#include <linux/init.h>
13#include <linux/irq.h> 13#include <linux/irq.h>
14
15#include <linux/hdreg.h>
16#include <linux/ide.h> 14#include <linux/ide.h>
17#include <asm/io.h> 15#include <asm/io.h>
18#include <asm/se7751/se7751.h> 16#include <asm/se7751.h>
19 17
20#ifdef CONFIG_SH_KGDB 18#ifdef CONFIG_SH_KGDB
21#include <asm/kgdb.h> 19#include <asm/kgdb.h>