diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2005-07-01 12:10:40 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:31:35 -0400 |
commit | a5fc9c0bbee8b91025993a49a9176a88380aef3c (patch) | |
tree | e68ee45e852028ddde712abb18531777dba6e468 /arch/mips/dec/prom | |
parent | 7d7ee221213609319401d1b9d6dc4bf22ab928ea (diff) |
Use physical addresses at the interface level, letting drivers remap
them as appropriate.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/dec/prom')
-rw-r--r-- | arch/mips/dec/prom/identify.c | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/arch/mips/dec/prom/identify.c b/arch/mips/dec/prom/identify.c index 9380588cb15c..81d5e878ddce 100644 --- a/arch/mips/dec/prom/identify.c +++ b/arch/mips/dec/prom/identify.c | |||
@@ -2,7 +2,7 @@ | |||
2 | * identify.c: machine identification code. | 2 | * identify.c: machine identification code. |
3 | * | 3 | * |
4 | * Copyright (C) 1998 Harald Koerfgen and Paul M. Antoine | 4 | * Copyright (C) 1998 Harald Koerfgen and Paul M. Antoine |
5 | * Copyright (C) 2002, 2003, 2004 Maciej W. Rozycki | 5 | * Copyright (C) 2002, 2003, 2004, 2005 Maciej W. Rozycki |
6 | */ | 6 | */ |
7 | #include <linux/init.h> | 7 | #include <linux/init.h> |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/types.h> | 12 | #include <linux/types.h> |
13 | 13 | ||
14 | #include <asm/bootinfo.h> | 14 | #include <asm/bootinfo.h> |
15 | |||
15 | #include <asm/dec/ioasic.h> | 16 | #include <asm/dec/ioasic.h> |
16 | #include <asm/dec/ioasic_addrs.h> | 17 | #include <asm/dec/ioasic_addrs.h> |
17 | #include <asm/dec/kn01.h> | 18 | #include <asm/dec/kn01.h> |
@@ -21,6 +22,7 @@ | |||
21 | #include <asm/dec/kn03.h> | 22 | #include <asm/dec/kn03.h> |
22 | #include <asm/dec/kn230.h> | 23 | #include <asm/dec/kn230.h> |
23 | #include <asm/dec/prom.h> | 24 | #include <asm/dec/prom.h> |
25 | #include <asm/dec/system.h> | ||
24 | 26 | ||
25 | #include "dectypes.h" | 27 | #include "dectypes.h" |
26 | 28 | ||
@@ -68,34 +70,44 @@ EXPORT_SYMBOL(dec_rtc_base); | |||
68 | 70 | ||
69 | static inline void prom_init_kn01(void) | 71 | static inline void prom_init_kn01(void) |
70 | { | 72 | { |
71 | dec_rtc_base = (void *)KN01_RTC_BASE; | 73 | dec_kn_slot_base = KN01_SLOT_BASE; |
72 | dec_kn_slot_size = KN01_SLOT_SIZE; | 74 | dec_kn_slot_size = KN01_SLOT_SIZE; |
75 | |||
76 | dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN01_RTC); | ||
73 | } | 77 | } |
74 | 78 | ||
75 | static inline void prom_init_kn230(void) | 79 | static inline void prom_init_kn230(void) |
76 | { | 80 | { |
77 | dec_rtc_base = (void *)KN01_RTC_BASE; | 81 | dec_kn_slot_base = KN01_SLOT_BASE; |
78 | dec_kn_slot_size = KN01_SLOT_SIZE; | 82 | dec_kn_slot_size = KN01_SLOT_SIZE; |
83 | |||
84 | dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN01_RTC); | ||
79 | } | 85 | } |
80 | 86 | ||
81 | static inline void prom_init_kn02(void) | 87 | static inline void prom_init_kn02(void) |
82 | { | 88 | { |
83 | dec_rtc_base = (void *)KN02_RTC_BASE; | 89 | dec_kn_slot_base = KN02_SLOT_BASE; |
84 | dec_kn_slot_size = KN02_SLOT_SIZE; | 90 | dec_kn_slot_size = KN02_SLOT_SIZE; |
91 | |||
92 | dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + KN02_RTC); | ||
85 | } | 93 | } |
86 | 94 | ||
87 | static inline void prom_init_kn02xa(void) | 95 | static inline void prom_init_kn02xa(void) |
88 | { | 96 | { |
89 | ioasic_base = (void *)KN02XA_IOASIC_BASE; | 97 | dec_kn_slot_base = KN02XA_SLOT_BASE; |
90 | dec_rtc_base = (void *)KN02XA_RTC_BASE; | ||
91 | dec_kn_slot_size = IOASIC_SLOT_SIZE; | 98 | dec_kn_slot_size = IOASIC_SLOT_SIZE; |
99 | |||
100 | ioasic_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_IOCTL); | ||
101 | dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_TOY); | ||
92 | } | 102 | } |
93 | 103 | ||
94 | static inline void prom_init_kn03(void) | 104 | static inline void prom_init_kn03(void) |
95 | { | 105 | { |
96 | ioasic_base = (void *)KN03_IOASIC_BASE; | 106 | dec_kn_slot_base = KN03_SLOT_BASE; |
97 | dec_rtc_base = (void *)KN03_RTC_BASE; | ||
98 | dec_kn_slot_size = IOASIC_SLOT_SIZE; | 107 | dec_kn_slot_size = IOASIC_SLOT_SIZE; |
108 | |||
109 | ioasic_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_IOCTL); | ||
110 | dec_rtc_base = (void *)CKSEG1ADDR(dec_kn_slot_base + IOASIC_TOY); | ||
99 | } | 111 | } |
100 | 112 | ||
101 | 113 | ||