pci: move pcidelay code to new location just before PCI bus scan
authorAnatolij Gustschin <agust@denx.de>
Tue, 11 Oct 2011 22:44:30 +0000 (22:44 +0000)
committerWolfgang Denk <wd@denx.de>
Sat, 15 Oct 2011 20:16:53 +0000 (22:16 +0200)
commit0da1fb03c588eebd6287b3fc7d06bf01b0588d89
tree740db526f8ef4a1aa4055140c6d78b325d66e50b
parent4f1ec4c176810bbc60e7142336b2bd74eac3bec1
pci: move pcidelay code to new location just before PCI bus scan

PCI cards might need some time after reset to respond. On some
boards (mpc5200 or mpc8260 based) the PCI bus reset is deasserted
at pci_init_board() time, so we currently can not use available
"pcidelay" option for waiting before PCI bus scan since this
waiting takes place before calling pci_init_board(). By moving
the pcidelay code to the new location using of the "pcidelay"
option is possible on mpc5200 or mpc8260 based boards, too.

Since pci_hose_scan() could be called multiple times, restrict
the function to wait only during its first call and to ignore
pcidelay for any further call (as pointed out by Matthias).

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Matthias Fuchs <matthias.fuchs@esd.eu>
Acked-by: Stefan Roese <sr@denx.de>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Tested-by: Matthias Fuchs <matthias.fuchs@esd.eu>
drivers/pci/pci.c