diff options
Diffstat (limited to 'arch/sh/kernel/machvec.c')
-rw-r--r-- | arch/sh/kernel/machvec.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/arch/sh/kernel/machvec.c b/arch/sh/kernel/machvec.c index 85cfaf916fdc..9f9bb63616ad 100644 --- a/arch/sh/kernel/machvec.c +++ b/arch/sh/kernel/machvec.c | |||
@@ -118,6 +118,14 @@ void __init sh_mv_setup(void) | |||
118 | sh_mv.mv_##elem = generic_##elem; \ | 118 | sh_mv.mv_##elem = generic_##elem; \ |
119 | } while (0) | 119 | } while (0) |
120 | 120 | ||
121 | #ifdef CONFIG_HAS_IOPORT | ||
122 | |||
123 | #ifdef P2SEG | ||
124 | __set_io_port_base(P2SEG); | ||
125 | #else | ||
126 | __set_io_port_base(0); | ||
127 | #endif | ||
128 | |||
121 | mv_set(inb); mv_set(inw); mv_set(inl); | 129 | mv_set(inb); mv_set(inw); mv_set(inl); |
122 | mv_set(outb); mv_set(outw); mv_set(outl); | 130 | mv_set(outb); mv_set(outw); mv_set(outl); |
123 | 131 | ||
@@ -129,16 +137,13 @@ void __init sh_mv_setup(void) | |||
129 | 137 | ||
130 | mv_set(ioport_map); | 138 | mv_set(ioport_map); |
131 | mv_set(ioport_unmap); | 139 | mv_set(ioport_unmap); |
140 | |||
141 | #endif | ||
142 | |||
132 | mv_set(irq_demux); | 143 | mv_set(irq_demux); |
133 | mv_set(mode_pins); | 144 | mv_set(mode_pins); |
134 | mv_set(mem_init); | 145 | mv_set(mem_init); |
135 | 146 | ||
136 | if (!sh_mv.mv_nr_irqs) | 147 | if (!sh_mv.mv_nr_irqs) |
137 | sh_mv.mv_nr_irqs = NR_IRQS; | 148 | sh_mv.mv_nr_irqs = NR_IRQS; |
138 | |||
139 | #ifdef P2SEG | ||
140 | __set_io_port_base(P2SEG); | ||
141 | #else | ||
142 | __set_io_port_base(0); | ||
143 | #endif | ||
144 | } | 149 | } |