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

Commit d0f9cbd4 authored by Maciej W. Rozycki's avatar Maciej W. Rozycki Committed by Ralf Baechle
Browse files

[MIPS] SB1250: Initialize io_map_base



Correctly initialize io_map_base for the SB1250 PCI controller as required
for proper iomap support.  Based on a proposal from Daniel Jacobowitz.

Signed-off-by: default avatarMaciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 6b7d0b2f
Loading
Loading
Loading
Loading
+5 −3
Original line number Original line Diff line number Diff line
@@ -207,6 +207,7 @@ struct pci_controller sb1250_controller = {


static int __init sb1250_pcibios_init(void)
static int __init sb1250_pcibios_init(void)
{
{
	void __iomem *io_map_base;
	uint32_t cmdreg;
	uint32_t cmdreg;
	uint64_t reg;
	uint64_t reg;
	extern int pci_probe_only;
	extern int pci_probe_only;
@@ -253,12 +254,13 @@ static int __init sb1250_pcibios_init(void)
	 * works correctly with most of Linux's drivers.
	 * works correctly with most of Linux's drivers.
	 * XXX ehs: Should this happen in PCI Device mode?
	 * XXX ehs: Should this happen in PCI Device mode?
	 */
	 */

	set_io_port_base((unsigned long)
			 ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES, 65536));
	isa_slot_offset = (unsigned long)
	isa_slot_offset = (unsigned long)
	    ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES_32, 1024 * 1024);
	    ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES_32, 1024 * 1024);


	io_map_base = ioremap(A_PHYS_LDTPCI_IO_MATCH_BYTES, 1024 * 1024);
	sb1250_controller.io_map_base = io_map_base;
	set_io_port_base((unsigned long)io_map_base);

#ifdef CONFIG_SIBYTE_HAS_LDT
#ifdef CONFIG_SIBYTE_HAS_LDT
	/*
	/*
	 * Also check the LDT bridge's enable, just in case we didn't
	 * Also check the LDT bridge's enable, just in case we didn't