diff options
author | Guennadi Liakhovetski <lg@denx.de> | 2007-11-29 21:15:56 +0100 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2008-01-09 14:52:04 +0100 |
commit | d197ffd8172c6fdef38733424640a9a47295d6e9 (patch) | |
tree | 296c5701a1b39dc72696dd411a5be91190a66fff /lib_nios/cache.c | |
parent | 6a5e1d75bf106fa157e9ce68bcaf4b13e8a1d214 (diff) | |
download | u-boot-imx-d197ffd8172c6fdef38733424640a9a47295d6e9.zip u-boot-imx-d197ffd8172c6fdef38733424640a9a47295d6e9.tar.gz u-boot-imx-d197ffd8172c6fdef38733424640a9a47295d6e9.tar.bz2 |
Fix and optimize MII operations on FEC (MPC8xx) controllers
This patch fixes several issues at least on a MPC885 based system with two
FEC interfaces used in MII mode.
1. PHY discovery should first read PHY_PHYIDR2 register and only then
PHY_PHYIDR1 like cpu/mpc8xx/fec.c::mii_discover_phy() does it,
otherwise the values read are wrong. Also notice, that PHY discovery
cannot work on MPC88x / MPC87x in setups with both FECs active at all
in its present form, because for both interfaces the registers from FEC
1 are used to communicate over MII.
2. Remove code duplication for resetting the FEC by isolating it into a
separate function.
3. Initialize MII on FEC 1 when communicating over FEC 2 in fec_init().
4. Optimize mii_init() to only reset the FEC 1 controller once.
5. Fix a typo in mii_init() using index i instead of j thus potentially
leading to unpredictable results.
Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Diffstat (limited to 'lib_nios/cache.c')
0 files changed, 0 insertions, 0 deletions