[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>
This commit is contained in:
Thomas Bogendoerfer
2007-08-25 11:01:50 +02:00
committed by Ralf Baechle
parent 1f21d2bde0
commit ea202c632a
9 changed files with 181 additions and 187 deletions

View File

@@ -184,38 +184,26 @@ typedef struct {
#define JAZZ_IO_IRQ_SOURCE 0xe0010000
#define JAZZ_IO_IRQ_ENABLE 0xe0010002
/*
* JAZZ interrupt enable bits
*/
#define JAZZ_IE_PARALLEL (1 << 0)
#define JAZZ_IE_FLOPPY (1 << 1)
#define JAZZ_IE_SOUND (1 << 2)
#define JAZZ_IE_VIDEO (1 << 3)
#define JAZZ_IE_ETHERNET (1 << 4)
#define JAZZ_IE_SCSI (1 << 5)
#define JAZZ_IE_KEYBOARD (1 << 6)
#define JAZZ_IE_MOUSE (1 << 7)
#define JAZZ_IE_SERIAL1 (1 << 8)
#define JAZZ_IE_SERIAL2 (1 << 9)
/*
* JAZZ Interrupt Level definitions
*
* This is somewhat broken. For reasons which nobody can remember anymore
* we remap the Jazz interrupts to the usual ISA style interrupt numbers.
*/
#define JAZZ_PARALLEL_IRQ 16
#define JAZZ_FLOPPY_IRQ 17
#define JAZZ_SOUND_IRQ 18
#define JAZZ_VIDEO_IRQ 19
#define JAZZ_ETHERNET_IRQ 20
#define JAZZ_SCSI_IRQ 21
#define JAZZ_KEYBOARD_IRQ 22
#define JAZZ_MOUSE_IRQ 23
#define JAZZ_SERIAL1_IRQ 24
#define JAZZ_SERIAL2_IRQ 25
#define JAZZ_IRQ_START 24
#define JAZZ_IRQ_END (24 + 9)
#define JAZZ_PARALLEL_IRQ (JAZZ_IRQ_START + 0)
#define JAZZ_FLOPPY_IRQ (JAZZ_IRQ_START + 1)
#define JAZZ_SOUND_IRQ (JAZZ_IRQ_START + 2)
#define JAZZ_VIDEO_IRQ (JAZZ_IRQ_START + 3)
#define JAZZ_ETHERNET_IRQ (JAZZ_IRQ_START + 4)
#define JAZZ_SCSI_IRQ (JAZZ_IRQ_START + 5)
#define JAZZ_KEYBOARD_IRQ (JAZZ_IRQ_START + 6)
#define JAZZ_MOUSE_IRQ (JAZZ_IRQ_START + 7)
#define JAZZ_SERIAL1_IRQ (JAZZ_IRQ_START + 8)
#define JAZZ_SERIAL2_IRQ (JAZZ_IRQ_START + 9)
#define JAZZ_TIMER_IRQ 31
#define JAZZ_TIMER_IRQ (MIPS_CPU_IRQ_BASE+6)
/*

View File

@@ -7,7 +7,6 @@
/*
* Prototypes and macros
*/
extern void vdma_init(void);
extern unsigned long vdma_alloc(unsigned long paddr, unsigned long size);
extern int vdma_free(unsigned long laddr);
extern int vdma_remap(unsigned long laddr, unsigned long paddr,

View File

@@ -4,12 +4,15 @@
* for more details.
*
* Copyright (C) 1998, 2001, 03 by Ralf Baechle
* Copyright (C) 2007 Thomas Bogendoerfer
*
* RTC routines for Jazz style attached Dallas chip.
*/
#ifndef __ASM_MACH_JAZZ_MC146818RTC_H
#define __ASM_MACH_JAZZ_MC146818RTC_H
#include <linux/delay.h>
#include <asm/io.h>
#include <asm/jazz.h>
@@ -19,16 +22,17 @@
static inline unsigned char CMOS_READ(unsigned long addr)
{
outb_p(addr, RTC_PORT(0));
return *(char *)JAZZ_RTC_BASE;
return *(volatile char *)JAZZ_RTC_BASE;
}
static inline void CMOS_WRITE(unsigned char data, unsigned long addr)
{
outb_p(addr, RTC_PORT(0));
*(char *)JAZZ_RTC_BASE = data;
*(volatile char *)JAZZ_RTC_BASE = data;
}
#define RTC_ALWAYS_BCD 0
#define mc146818_decode_year(year) ((year) + 1980)
#endif /* __ASM_MACH_JAZZ_MC146818RTC_H */