Ver código fonte

sh: mach-sh03: Use __set_io_port_base(), kill off special ioport_map().

This also fixes up a long-standing bug for this platform where the PIO
base was set to a register offset, rather than the actual PIO offset
itself.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt 16 anos atrás
pai
commit
43eeb0fb9f
2 arquivos alterados com 2 adições e 10 exclusões
  1. 0 9
      arch/sh/boards/mach-sh03/setup.c
  2. 2 1
      arch/sh/drivers/pci/ops-sh03.c

+ 0 - 9
arch/sh/boards/mach-sh03/setup.c

@@ -21,14 +21,6 @@ static void __init init_sh03_IRQ(void)
 	plat_irq_setup_pins(IRQ_MODE_IRQ);
 }
 
-static void __iomem *sh03_ioport_map(unsigned long port, unsigned int size)
-{
-	if (PXSEG(port))
-		return (void __iomem *)port;
-
-        return (void __iomem *)(port + PCI_IO_BASE);
-}
-
 /* arch/sh/boards/sh03/rtc.c */
 void sh03_time_init(void);
 
@@ -99,6 +91,5 @@ static struct sh_machine_vector mv_sh03 __initmv = {
 	.mv_name		= "Interface (CTP/PCI-SH03)",
 	.mv_setup		= sh03_setup,
 	.mv_nr_irqs		= 48,
-	.mv_ioport_map		= sh03_ioport_map,
 	.mv_init_irq		= init_sh03_IRQ,
 };

+ 2 - 1
arch/sh/drivers/pci/ops-sh03.c

@@ -18,7 +18,8 @@
  */
 int __init pcibios_init_platform(void)
 {
-   return 1;
+	__set_io_port_base(SH7751_PCI_IO_BASE);
+	return 1;
 }
 
 static struct resource sh7751_io_resource = {