diff options
author | Thomas Bogendoerfer <tsbogend@alpha.franken.de> | 2007-08-25 05:01:50 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-10-11 18:46:00 -0400 |
commit | ea202c632a52c4a83f1bd82d8d06bc8e04f2689a (patch) | |
tree | 1815b69d45b99d8f20d0fb33ba7b34b8319f2507 /include/asm-mips | |
parent | 1f21d2bde0046e959b53756f74d96dfd040a803b (diff) |
[MIPS] JAZZ fixes
- restructured irq handling
- switched vdma to use memory allocated via get_free_pages
- setup platform devices for serial, jazz_esp and jazzsonic
- fixed cmos rtc access
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips')
-rw-r--r-- | include/asm-mips/jazz.h | 40 | ||||
-rw-r--r-- | include/asm-mips/jazzdma.h | 1 | ||||
-rw-r--r-- | include/asm-mips/mach-jazz/mc146818rtc.h | 10 |
3 files changed, 21 insertions, 30 deletions
diff --git a/include/asm-mips/jazz.h b/include/asm-mips/jazz.h index 81cbf004fd13..83f449dec95e 100644 --- a/include/asm-mips/jazz.h +++ b/include/asm-mips/jazz.h | |||
@@ -185,37 +185,25 @@ typedef struct { | |||
185 | #define JAZZ_IO_IRQ_ENABLE 0xe0010002 | 185 | #define JAZZ_IO_IRQ_ENABLE 0xe0010002 |
186 | 186 | ||
187 | /* | 187 | /* |
188 | * JAZZ interrupt enable bits | ||
189 | */ | ||
190 | #define JAZZ_IE_PARALLEL (1 << 0) | ||
191 | #define JAZZ_IE_FLOPPY (1 << 1) | ||
192 | #define JAZZ_IE_SOUND (1 << 2) | ||
193 | #define JAZZ_IE_VIDEO (1 << 3) | ||
194 | #define JAZZ_IE_ETHERNET (1 << 4) | ||
195 | #define JAZZ_IE_SCSI (1 << 5) | ||
196 | #define JAZZ_IE_KEYBOARD (1 << 6) | ||
197 | #define JAZZ_IE_MOUSE (1 << 7) | ||
198 | #define JAZZ_IE_SERIAL1 (1 << 8) | ||
199 | #define JAZZ_IE_SERIAL2 (1 << 9) | ||
200 | |||
201 | /* | ||
202 | * JAZZ Interrupt Level definitions | 188 | * JAZZ Interrupt Level definitions |
203 | * | 189 | * |
204 | * This is somewhat broken. For reasons which nobody can remember anymore | 190 | * This is somewhat broken. For reasons which nobody can remember anymore |
205 | * we remap the Jazz interrupts to the usual ISA style interrupt numbers. | 191 | * we remap the Jazz interrupts to the usual ISA style interrupt numbers. |
206 | */ | 192 | */ |
207 | #define JAZZ_PARALLEL_IRQ 16 | 193 | #define JAZZ_IRQ_START 24 |
208 | #define JAZZ_FLOPPY_IRQ 17 | 194 | #define JAZZ_IRQ_END (24 + 9) |
209 | #define JAZZ_SOUND_IRQ 18 | 195 | #define JAZZ_PARALLEL_IRQ (JAZZ_IRQ_START + 0) |
210 | #define JAZZ_VIDEO_IRQ 19 | 196 | #define JAZZ_FLOPPY_IRQ (JAZZ_IRQ_START + 1) |
211 | #define JAZZ_ETHERNET_IRQ 20 | 197 | #define JAZZ_SOUND_IRQ (JAZZ_IRQ_START + 2) |
212 | #define JAZZ_SCSI_IRQ 21 | 198 | #define JAZZ_VIDEO_IRQ (JAZZ_IRQ_START + 3) |
213 | #define JAZZ_KEYBOARD_IRQ 22 | 199 | #define JAZZ_ETHERNET_IRQ (JAZZ_IRQ_START + 4) |
214 | #define JAZZ_MOUSE_IRQ 23 | 200 | #define JAZZ_SCSI_IRQ (JAZZ_IRQ_START + 5) |
215 | #define JAZZ_SERIAL1_IRQ 24 | 201 | #define JAZZ_KEYBOARD_IRQ (JAZZ_IRQ_START + 6) |
216 | #define JAZZ_SERIAL2_IRQ 25 | 202 | #define JAZZ_MOUSE_IRQ (JAZZ_IRQ_START + 7) |
217 | 203 | #define JAZZ_SERIAL1_IRQ (JAZZ_IRQ_START + 8) | |
218 | #define JAZZ_TIMER_IRQ 31 | 204 | #define JAZZ_SERIAL2_IRQ (JAZZ_IRQ_START + 9) |
205 | |||
206 | #define JAZZ_TIMER_IRQ (MIPS_CPU_IRQ_BASE+6) | ||
219 | 207 | ||
220 | 208 | ||
221 | /* | 209 | /* |
diff --git a/include/asm-mips/jazzdma.h b/include/asm-mips/jazzdma.h index 0a205b77e505..8bb37bba68f0 100644 --- a/include/asm-mips/jazzdma.h +++ b/include/asm-mips/jazzdma.h | |||
@@ -7,7 +7,6 @@ | |||
7 | /* | 7 | /* |
8 | * Prototypes and macros | 8 | * Prototypes and macros |
9 | */ | 9 | */ |
10 | extern void vdma_init(void); | ||
11 | extern unsigned long vdma_alloc(unsigned long paddr, unsigned long size); | 10 | extern unsigned long vdma_alloc(unsigned long paddr, unsigned long size); |
12 | extern int vdma_free(unsigned long laddr); | 11 | extern int vdma_free(unsigned long laddr); |
13 | extern int vdma_remap(unsigned long laddr, unsigned long paddr, | 12 | extern int vdma_remap(unsigned long laddr, unsigned long paddr, |
diff --git a/include/asm-mips/mach-jazz/mc146818rtc.h b/include/asm-mips/mach-jazz/mc146818rtc.h index f44fdba1998b..987f727afe25 100644 --- a/include/asm-mips/mach-jazz/mc146818rtc.h +++ b/include/asm-mips/mach-jazz/mc146818rtc.h | |||
@@ -4,12 +4,15 @@ | |||
4 | * for more details. | 4 | * for more details. |
5 | * | 5 | * |
6 | * Copyright (C) 1998, 2001, 03 by Ralf Baechle | 6 | * Copyright (C) 1998, 2001, 03 by Ralf Baechle |
7 | * Copyright (C) 2007 Thomas Bogendoerfer | ||
7 | * | 8 | * |
8 | * RTC routines for Jazz style attached Dallas chip. | 9 | * RTC routines for Jazz style attached Dallas chip. |
9 | */ | 10 | */ |
10 | #ifndef __ASM_MACH_JAZZ_MC146818RTC_H | 11 | #ifndef __ASM_MACH_JAZZ_MC146818RTC_H |
11 | #define __ASM_MACH_JAZZ_MC146818RTC_H | 12 | #define __ASM_MACH_JAZZ_MC146818RTC_H |
12 | 13 | ||
14 | #include <linux/delay.h> | ||
15 | |||
13 | #include <asm/io.h> | 16 | #include <asm/io.h> |
14 | #include <asm/jazz.h> | 17 | #include <asm/jazz.h> |
15 | 18 | ||
@@ -19,16 +22,17 @@ | |||
19 | static inline unsigned char CMOS_READ(unsigned long addr) | 22 | static inline unsigned char CMOS_READ(unsigned long addr) |
20 | { | 23 | { |
21 | outb_p(addr, RTC_PORT(0)); | 24 | outb_p(addr, RTC_PORT(0)); |
22 | 25 | return *(volatile char *)JAZZ_RTC_BASE; | |
23 | return *(char *)JAZZ_RTC_BASE; | ||
24 | } | 26 | } |
25 | 27 | ||
26 | static inline void CMOS_WRITE(unsigned char data, unsigned long addr) | 28 | static inline void CMOS_WRITE(unsigned char data, unsigned long addr) |
27 | { | 29 | { |
28 | outb_p(addr, RTC_PORT(0)); | 30 | outb_p(addr, RTC_PORT(0)); |
29 | *(char *)JAZZ_RTC_BASE = data; | 31 | *(volatile char *)JAZZ_RTC_BASE = data; |
30 | } | 32 | } |
31 | 33 | ||
32 | #define RTC_ALWAYS_BCD 0 | 34 | #define RTC_ALWAYS_BCD 0 |
33 | 35 | ||
36 | #define mc146818_decode_year(year) ((year) + 1980) | ||
37 | |||
34 | #endif /* __ASM_MACH_JAZZ_MC146818RTC_H */ | 38 | #endif /* __ASM_MACH_JAZZ_MC146818RTC_H */ |