[patch 1/3] powerpc: fix pci_setup_phb_io_dynamic for pci_iomap

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Jun 6 17:05:30 EST 2007


On Mon, 2007-06-04 at 20:14 +0200, Arnd Bergmann wrote:
> plain text document attachment (pci-iomap-fix-2.diff)
> From: Arnd Bergmann <arnd.bergmann at de.ibm.com>
> We had a problem on a system with only dynamically allocated
> PCI buses (using of_pci_phb_driver) in combination with libata.
> This setup ended up having no "primary" phb, which means
> that pci_io_base never got initialized and all IO port
> numbers are 64 bit numbers, which is larger than the
> PIO_MASK limit.
> 
> Signed-off-by: Arnd Bergmann <arnd.bergmann at de.ibm.com>

Acked-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

Paulus, that's a bug fix, should probably go into 2.6.22

> ---
> Index: linux-2.6/arch/powerpc/kernel/of_platform.c
> ===================================================================
> --- linux-2.6.orig/arch/powerpc/kernel/of_platform.c
> +++ linux-2.6/arch/powerpc/kernel/of_platform.c
> @@ -433,7 +433,7 @@ static int __devinit of_pci_phb_probe(st
>  	 * Note also that we don't do ISA, this will also be fixed with a
>  	 * more massive rework.
>  	 */
> -	pci_setup_phb_io(phb, 0);
> +	pci_setup_phb_io(phb, pci_io_base == 0);
>  
>  	/* Init pci_dn data structures */
>  	pci_devs_phb_init_dynamic(phb);
> 
> --




More information about the Linuxppc-dev mailing list