* bootloader/pci.c: Removed the r->size=0 and r->base=0
assignement which makes too-large regions conflict with onboard
hardware, replacing it with sfree which deletes the memory region
from the setup code, leaving it disabled.
PR 606/bsps
* bootloader/pci.c: Fixed IO remapping so buses >= 1 are remapped.
Reduced PCI space to match bat2. Fixed incorrect region size
calculation in pci_read_bases. Set PCI latency timers to known
sane values. Changed bridge PCI settings to minimum sane instead
of whatever sounded neat in the PCI spec. Force pf regions to
memory mapped to preserve byte access.
* bootloader/pci.c: Remove warnings by adding include <string.h>.
* irq/irq.c: Clean up includes to remove warnings.
* pci/pci.c, pci/pci.h, startup/bspstart.c: Better use of const
on struct _int_map.
PR 428/bsps
PR 432/bsps
* bootloader/pci.c: Re-instated code that prevents remapping small
IO regions, which if remapped would cause i8259 registers to move
out from under the #define'd base addresses.
* startup/bspstart.c: Reduced BAT2 PCI memory allocation to 256
megs, I incorrectly had extended it which would cause problems with
PCI devices that defined prefetchable memory.
PR 405/bsps
* bootloader/pci.c: Added support for configuring devices for pci
busses > 0
* pci/pci.c, pci/pci.h: Added FixupPCI() to store vectors in the
INTERRUPT_LINE register of pci devices any # of hops away
from the host processor.
* motorola/motorola.c, motorola/motorola.h: Added interrupt
routing tables in support of FixupPCI. This is board-specific,
each board will have to supply information for FixupPCI() to do
anything for it.
* startup/bspstart.c: Extended bat2 to cover entire PCI address space.
* irq/irq.c, irq/irq.h: Added support for shared interrupts.
Existing single hander vectors are undisturbed, a new function
added to allow adding/removing handlers from a vector.