Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0bdfc190 authored by John Keller's avatar John Keller Committed by Tony Luck
Browse files

[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: default avatarJohn Keller <jpk@sgi.com>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent 60b548df
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -348,8 +348,7 @@ sn_scan_pcdp(void)
			continue;	/* not PCI interconnect */
			continue;	/* not PCI interconnect */


		if (if_pci.translation & PCDP_PCI_TRANS_IOPORT)
		if (if_pci.translation & PCDP_PCI_TRANS_IOPORT)
			vga_console_iobase =
			vga_console_iobase = if_pci.ioport_tra;
				if_pci.ioport_tra | __IA64_UNCACHED_OFFSET;


		if (if_pci.translation & PCDP_PCI_TRANS_MMIO)
		if (if_pci.translation & PCDP_PCI_TRANS_MMIO)
			vga_console_membase =
			vga_console_membase =
@@ -429,7 +428,8 @@ void __init sn_setup(char **cmdline_p)
	 * 	bus containing the VGA console.
	 * 	bus containing the VGA console.
	 */
	 */
	if (vga_console_iobase) {
	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;
		io_space[0].sparse = 0;
	}
	}