[IA64] Altix: ioremap vga_console_iobase
When booting an SN system without specifing a console (i.e., no "console=" on boot line), the system will hang during boot at the point where /sbin/init is run. The problem is that vga_console_iobase is not converted to a virtual address before storing in io_space[0].mmio_base. The conversion was happening in sn_scan_pcdp(), but not in setup_vga_console(). Signed-off-by: John Keller <jpk@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
parent
60b548dfe4
commit
0bdfc19007
|
@ -348,8 +348,7 @@ sn_scan_pcdp(void)
|
|||
continue; /* not PCI interconnect */
|
||||
|
||||
if (if_pci.translation & PCDP_PCI_TRANS_IOPORT)
|
||||
vga_console_iobase =
|
||||
if_pci.ioport_tra | __IA64_UNCACHED_OFFSET;
|
||||
vga_console_iobase = if_pci.ioport_tra;
|
||||
|
||||
if (if_pci.translation & PCDP_PCI_TRANS_MMIO)
|
||||
vga_console_membase =
|
||||
|
@ -429,7 +428,8 @@ void __init sn_setup(char **cmdline_p)
|
|||
* bus containing the VGA console.
|
||||
*/
|
||||
if (vga_console_iobase) {
|
||||
io_space[0].mmio_base = vga_console_iobase;
|
||||
io_space[0].mmio_base =
|
||||
(unsigned long) ioremap(vga_console_iobase, 0);
|
||||
io_space[0].sparse = 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue