Searched hist:fca94c3fd5deef33442813475a5af1650f2d2830 (Results 1 – 1 of 1) sorted by relevance
| /rk3399_rockchip-uboot/board/armltd/integrator/ |
| H A D | pci.c | fca94c3fd5deef33442813475a5af1650f2d2830 Sat Mar 03 20:21:13 UTC 2012 Linus Walleij <linus.walleij@linaro.org> integrator: remove fragile delay loop from PCI code
The reference implementation of the PCI initialization code almost everywhere contain this fragile loop of "a few usecs", and its use of volatile variables to delay a number of bus cycles is indeed uncertain.
Reading the manual "Integrator/AP Users Guide", page 5-15 it is clearly stated:
"Wait until 230ms after the end of the reset period before accessing V360EPC internal registers. The V360EPC supports the use of a serial configuration PROM and the software must wait for the device to detect the absence of this PROM before accessing any registers. The required delay is a function of the PCI Clock, but at the lower frequency (25MHz) is 230ms".
So let's simply wait 230ms per the spec.
This solves the compilation error that looked like this: pci.c: In function ‘pci_init_board’: pci.c:286:18: warning: variable ‘j’ set but not used
Reported-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|