diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-08-26 11:55:31 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2008-08-26 11:55:31 +0000 |
commit | 4b23c94504618646e52be35c4e2172f132da5421 (patch) | |
tree | bd988d39ff60adcf1b9f06acadfb42c97a43ff0c /c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c | |
parent | 2008-08-26 Ralf Corsépius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-4b23c94504618646e52be35c4e2172f132da5421.tar.bz2 |
various changes to gen83xx BSP and others
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c b/c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c index c7b3169d56..2c1e47754b 100644 --- a/c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c +++ b/c/src/lib/libcpu/powerpc/mpc83xx/network/tsec.c @@ -203,6 +203,10 @@ static void mpc83xx_tsec_hwinit uint8_t *mac_addr; size_t i; + /* Clear interrupt mask and all pending events */ + reg_ptr->imask = 0; + reg_ptr->ievent = 0xffffffff; + /* * init ECNTL register * - clear statistics counters @@ -211,7 +215,8 @@ static void mpc83xx_tsec_hwinit */ reg_ptr->ecntrl = ((reg_ptr->ecntrl & ~M83xx_TSEC_ECNTRL_AUTOZ) | M83xx_TSEC_ECNTRL_CLRCNT - | M83xx_TSEC_ECNTRL_STEN); + | M83xx_TSEC_ECNTRL_STEN + | M83xx_TSEC_ECNTRL_R100M); /* * init DMA control register: @@ -281,9 +286,9 @@ static void mpc83xx_tsec_hwinit /* * init MACCFG2 register */ - reg_ptr->maccfg2 = (reg_ptr->maccfg2 & M83xx_TSEC_MACCFG2_IFMODE_MSK) - | M83xx_TSEC_MACCFG2_PRELEN( 7) - | M83xx_TSEC_MACCFG2_FULLDUPLEX; + reg_ptr->maccfg2 = ((reg_ptr->maccfg2 & M83xx_TSEC_MACCFG2_IFMODE_MSK) + | M83xx_TSEC_MACCFG2_PRELEN( 7) + | M83xx_TSEC_MACCFG2_FULLDUPLEX); /* * init station address register @@ -1508,9 +1513,7 @@ static void mpc83xx_tsec_init * for HSC CM01: we need to configure the PHY to use maximum skew adjust */ - mpc83xx_tsec_mdio_write(-1,sc,31,1); - mpc83xx_tsec_mdio_write(-1,sc,28,0xf000); - mpc83xx_tsec_mdio_write(-1,sc,31,0); + mpc83xx_tsec_mdio_write(-1,sc,23,0x0100); #endif /* |