pci_resource_end() changed problem with 2.6.14

Geoff Levand geoffrey.levand at am.sony.com
Fri Nov 4 14:55:19 EST 2005


I found that the serial port probe code in drivers/serial/8250_pci.c 
no longer works properly for ppc64 in 2.6.14.  It seems the value 
returned by pci_resource_len() on ppc64 changed from 8 to 16 since 
2.6.13.  I tested on a PC and pci_resource_len() returns 8 as 
expected.

Any help on on where to look for the problem would be appreciated.

Here's the code that hits the problem:

		if (pci_resource_flags(dev, i) & IORESOURCE_IO &&
		    pci_resource_len(dev, i) == 8 &&

And here are some test results:

2.6.13-ppc64

--serial_pci_guess_board flags: 101h, start: 80, end: 87, len: 8
--serial_pci_guess_board found
--serial_pci_guess_board flags: 101h, start: 64, end: 71, len: 8
--serial_pci_guess_board found

2.6.14-ppc64

--serial_pci_guess_board flags: 101h, start: 80, end: 95, len: 16
--serial_pci_guess_board not found
--serial_pci_guess_board flags: 101h, start: 64, end: 79, len: 16
--serial_pci_guess_board not found

2.6.14-i386:

--serial_pci_guess_board flags: 101h, start: 48128, end: 48135, len: 8
--serial_pci_guess_board found
--serial_pci_guess_board flags: 101h, start: 46080, end: 46087, len: 8
--serial_pci_guess_board found

-Geoff




More information about the Linuxppc64-dev mailing list