Use physical addresses at the interface level, letting drivers remap
them as appropriate. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
7d7ee22121
commit
a5fc9c0bbe
@@ -2,7 +2,7 @@
|
||||
* identify.c: machine identification code.
|
||||
*
|
||||
* Copyright (C) 1998 Harald Koerfgen and Paul M. Antoine
|
||||
* Copyright (C) 2002, 2003, 2004 Maciej W. Rozycki
|
||||
* Copyright (C) 2002, 2003, 2004, 2005 Maciej W. Rozycki
|
||||
*/
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <linux/types.h>
|
||||
|
||||
#include <asm/bootinfo.h>
|
||||
|
||||
#include <asm/dec/ioasic.h>
|
||||
#include <asm/dec/ioasic_addrs.h>
|
||||
#include <asm/dec/kn01.h>
|
||||
@@ -21,6 +22,7 @@
|
||||
#include <asm/dec/kn03.h>
|
||||
#include <asm/dec/kn230.h>
|
||||
#include <asm/dec/prom.h>
|
||||
#include <asm/dec/system.h>
|
||||
|
||||
#include "dectypes.h"
|
||||
|
||||
@@ -68,34 +70,44 @@ EXPORT_SYMBOL(dec_rtc_base);
|
||||
|
||||
static inline void prom_init_kn01(void)
|
||||
{
|
||||
dec_rtc_base = (void *)KN01_RTC_BASE;
|
||||
dec_kn_slot_base = KN01_SLOT_BASE;
|
||||
dec_kn_slot_size = KN01_SLOT_SIZE;
|
||||
|
||||
dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN01_RTC);
|
||||
}
|
||||
|
||||
static inline void prom_init_kn230(void)
|
||||
{
|
||||
dec_rtc_base = (void *)KN01_RTC_BASE;
|
||||
dec_kn_slot_base = KN01_SLOT_BASE;
|
||||
dec_kn_slot_size = KN01_SLOT_SIZE;
|
||||
|
||||
dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN01_RTC);
|
||||
}
|
||||
|
||||
static inline void prom_init_kn02(void)
|
||||
{
|
||||
dec_rtc_base = (void *)KN02_RTC_BASE;
|
||||
dec_kn_slot_base = KN02_SLOT_BASE;
|
||||
dec_kn_slot_size = KN02_SLOT_SIZE;
|
||||
|
||||
dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN02_RTC);
|
||||
}
|
||||
|
||||
static inline void prom_init_kn02xa(void)
|
||||
{
|
||||
ioasic_base = (void *)KN02XA_IOASIC_BASE;
|
||||
dec_rtc_base = (void *)KN02XA_RTC_BASE;
|
||||
dec_kn_slot_base = KN02XA_SLOT_BASE;
|
||||
dec_kn_slot_size = IOASIC_SLOT_SIZE;
|
||||
|
||||
ioasic_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_IOCTL);
|
||||
dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_TOY);
|
||||
}
|
||||
|
||||
static inline void prom_init_kn03(void)
|
||||
{
|
||||
ioasic_base = (void *)KN03_IOASIC_BASE;
|
||||
dec_rtc_base = (void *)KN03_RTC_BASE;
|
||||
dec_kn_slot_base = KN03_SLOT_BASE;
|
||||
dec_kn_slot_size = IOASIC_SLOT_SIZE;
|
||||
|
||||
ioasic_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_IOCTL);
|
||||
dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_TOY);
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user