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

Commit ef53fdeb authored by Magnus Damm's avatar Magnus Damm Committed by Paul Mundt
Browse files

sh: add io_base member to pci_channel



Store the io window base address in struct pci_channel and use that one
instead of SH77xx_PCI_IO_BASE.

Signed-off-by: default avatarMagnus Damm <damm@igel.co.jp>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent e4c6a360
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ int __init sh7751_pci_init(struct pci_channel *chan)
	pr_debug("PCI: Starting intialization.\n");

	chan->reg_base = 0xfe200000;
	chan->io_base = 0xfe240000;

	/* check for SH7751/SH7751R hardware */
	id = pci_read_reg(chan, SH7751_PCICONF0);
@@ -153,9 +154,9 @@ int __init sh7751_pcic_init(struct pci_channel *chan,
	/* Map IO space into PCI IO window:
	 * IO addresses will be translated to the PCI IO window base address
	 */
	pr_debug("PCI: Mapping IO address 0x%x - 0x%x to base 0x%x\n",
	pr_debug("PCI: Mapping IO address 0x%x - 0x%x to base 0x%lx\n",
		 chan->io_resource->start, chan->io_resource->end,
		 SH7751_PCI_IO_BASE + chan->io_resource->start);
		 chan->io_base + chan->io_resource->start);

	/* Make sure the MSB's of IO window are set to access PCI space
	 * correctly */
+3 −2
Original line number Diff line number Diff line
@@ -53,6 +53,7 @@ int __init sh7780_pci_init(struct pci_channel *chan)
	pr_debug("PCI: Starting intialization.\n");

	chan->reg_base = 0xfe040000;
	chan->io_base = 0xfe200000;

	ctrl_outl(0x00000001, SH7780_PCI_VCR2); /* Enable PCIC */

@@ -135,9 +136,9 @@ int __init sh7780_pcic_init(struct pci_channel *chan,
	/* Map IO space into PCI IO window:
	 * IO addresses will be translated to the PCI IO window base address
	 */
	pr_debug("PCI: Mapping IO address 0x%x - 0x%x to base 0x%x\n",
	pr_debug("PCI: Mapping IO address 0x%x - 0x%x to base 0x%lx\n",
		 chan->io_resource->start, chan->io_resource->end,
		 SH7780_PCI_IO_BASE + chan->io_resource->start);
		 chan->io_base + chan->io_resource->start);

	/* NOTE: I'm ignoring the PCI error IRQs for now..
	 * TODO: add support for the internal error interrupts and
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ struct pci_channel {
	int last_devfn;
	int enabled;
	unsigned long reg_base;
	unsigned long io_base;
};

/*