Hello, I wrote: >> Well, I'm having a very related issue with the U-Boot on MPC85xx: >> recently >>I've noticed that it started allocating PCI I/O space from 0 (while the older >>versions started from 0x1000). The IDE core can't tolerate this, giving me >>such messages on bootup:
>>PDC20269: inconsistent baseregs (BIOS) for port 0, skipping This is due to U-Boot assigning the PCI resources fram address 0 (which is BTW illegal according to PCI 2.1). I have a patch for drivers/pci_auto.c which I'm going to post tomorrow... >>when I have Promise Ultra133TX2 card inserted into PCI alone. I've looked >>thru >>the U-Boot sources and commit history but failed to locate the change that >>led >>to this... > It's actually much worse than just that. When I also plug in some other > PCI card so Ultra133TX2 doesn't get the zero addresses anymore, I'm getting > this: > eepro100.c: $Revision: 1.36 $ 2000/11/17 Modified by Andrey V. Savochkin > <[EMAIL PROTECTED]> and others > eth3: Invalid EEPROM checksum 0xfffe, check settings before activating this > device! > eth3: OEM i82557/i82558 10/100 Ethernet, 00:00:00:00:FF:FF, IRQ 52. > [...] > PDC20269: 100% native mode on irq 51 > ide2: BM-DMA at 0x0060-0x0067, BIOS settings: hde:pio, hdf:pio > PDC20269: simplex device: DMA disabled > ide3: PDC20269 Bus-Master DMA disabled (BIOS) > I've just verified that both these cards are working OK in x86 box > As for the simplex message, I've encountered this some months ago and it was > caused by invalid programming of the MPC85xx bridge PCI/X outbound > translation > address register for the I/O space No, the programming was valid. I've finally found the ultimate reason of breakage -- it lies in board/*/init.S files. The patch tomorrow... > or at least by the non-zero value of the > bus I/O address in the "ranges" property of the bridge device node in the > device tree... It was the real reason -- the arch/powerpc/ kernel just ignores ranges with non-zero I/O port address. > I'm somewhat confused now since I know that the relevant U-Boot > code has been fixed but it looks like that made it only worse -- I was using > the custom patched version of U-Boot before which missed that fix: > http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commitdiff;h=97074ed9655309b64231bc2cee69fe85399f8055 It was actually the following patch that broke PCI: http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commit;h=52c7a68b8d587ebcf5a6b051b58b3d3ffa377ddc There were other places relying on CFG_PCI1_IO_BASE and those weren't changed... sigh. :-/ WBR, Sergei _______________________________________________ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded