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

Commit 4c7a47de authored by Paul Mundt's avatar Paul Mundt
Browse files

sh: pci: Kill off platform-specific multi-window mappings.



Commit 68b42d1b ("sh: sh7785lcr: Map
whole PCI address space.") changed around the semantics of how various
chip-selects are made accessible to PCI. Now that there is a single
large mapping covering from CS0-CS6, there is no longer any need to
do multi-window mapping. Subsequently, all of the differing
implementations can be consolidated in to pci-sh7780.

Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent ab1363a8
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -49,4 +49,21 @@ void __init init_se7780_IRQ(void)

	/* ICR1: detect low level(for 2ndcut) */
	ctrl_outl(0xAAAA0000, INTC_ICR1);

	/*
	 * FPGA PCISEL register initialize
	 *
	 *  CPU  || SLOT1 | SLOT2 | S-ATA | USB
	 *  -------------------------------------
	 *  INTA || INTA  | INTD  |  --   | INTB
	 *  -------------------------------------
	 *  INTB || INTB  | INTA  |  --   | INTC
	 *  -------------------------------------
	 *  INTC || INTC  | INTB  | INTA  |  --
	 *  -------------------------------------
	 *  INTD || INTD  | INTC  |  --   | INTA
	 *  -------------------------------------
	 */
	ctrl_outw(0x0013, FPGA_PCI_INTSEL1);
	ctrl_outw(0xE402, FPGA_PCI_INTSEL2);
}
+0 −17
Original line number Diff line number Diff line
@@ -25,20 +25,3 @@ int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
{
	return irq_tab[slot];
}

static struct sh4_pci_address_map sh7780_pci_map = {
	.window0	= {
		.base	= SH7780_CS2_BASE_ADDR,
		.size	= 0x04000000,
	},

	.window1	= {
		.base	= SH7780_CS3_BASE_ADDR,
		.size	= 0x04000000,
	},
};

int __init pcibios_init_platform(void)
{
	return sh7780_pcic_init(&sh7780_pci_map);
}
+0 −17
Original line number Diff line number Diff line
@@ -33,20 +33,3 @@ int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
{
       return sdk7780_irq_tab[pin-1][slot];
}

static struct sh4_pci_address_map sdk7780_pci_map = {
	.window0	= {
		.base	= SH7780_CS2_BASE_ADDR,
		.size	= 0x04000000,
	},
	.window1	= {
		.base	= SH7780_CS3_BASE_ADDR,
		.size	= 0x04000000,
	},
};

int __init pcibios_init_platform(void)
{
	printk(KERN_INFO "SH7780 PCI: Finished initializing PCI controller\n");
	return sh7780_pcic_init(&sdk7780_pci_map);
}
+0 −31
Original line number Diff line number Diff line
@@ -40,34 +40,3 @@ int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
{
       return se7780_irq_tab[pin-1][slot];
}

static struct sh4_pci_address_map se7780_pci_map = {
	.window0	= {
		.base	= SH7780_CS2_BASE_ADDR,
		.size	= 0x04000000,
	},
};

int __init pcibios_init_platform(void)
{
	printk("SH7780 PCI: Finished initialization of the PCI controller\n");

	/*
	 * FPGA PCISEL register initialize
	 *
	 *  CPU  || SLOT1 | SLOT2 | S-ATA | USB
	 *  -------------------------------------
	 *  INTA || INTA  | INTD  |  --   | INTB
	 *  -------------------------------------
	 *  INTB || INTB  | INTA  |  --   | INTC
	 *  -------------------------------------
	 *  INTC || INTC  | INTB  | INTA  |  --
	 *  -------------------------------------
	 *  INTD || INTD  | INTC  |  --   | INTA
	 *  -------------------------------------
	 */
	ctrl_outw(0x0013, FPGA_PCI_INTSEL1);
	ctrl_outw(0xE402, FPGA_PCI_INTSEL2);

	return sh7780_pcic_init(&se7780_pci_map);
}
+0 −17
Original line number Diff line number Diff line
@@ -25,20 +25,3 @@ int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
{
	return irq_tab[slot];
}

static struct sh4_pci_address_map sh7785_pci_map = {
	.window0	= {
#if defined(CONFIG_32BIT)
		.base	= SH7780_32BIT_DDR_BASE_ADDR,
		.size	= 0x40000000,
#else
		.base	= SH7780_CS0_BASE_ADDR,
		.size	= 0x20000000,
#endif
	},
};

int __init pcibios_init_platform(void)
{
	return sh7780_pcic_init(&sh7785_pci_map);
}
Loading