[U-Boot] [PATCH 4/6] net: phy: bugfixes: mv88E61xx multichip addressing support

Wolfgang Denk wd at denx.de
Mon Aug 10 10:25:44 CEST 2009


Dear Prafulla Wadaskar,

In message <1247758084-12296-4-git-send-email-prafulla at marvell.com> you wrote:
> With these fixes, this driver works properly for multi chip
> addressging mode
> 
> Bugfixes:
> 1. Build error fixed for function mv88e61xx_busychk_multic-fixed
> 2. PHY dev address error detection- fixed
> 3. wrong busy bit was refered in function mv88e61xx_busychk -fixed
> 4. invalid data read ptr was refered for RD_PHY in case of
> 	multichip addressing mode -fixed
> 
> The Multichip Address mode is tested with RD6281A board having
> MV88E6165 switch on it
> 
> Signed-off-by: Prafulla Wadaskar <prafulla at marvell.com>
> ---
>  drivers/net/phy/mv88e61xx.c |   18 +++++++++---------
>  drivers/net/phy/mv88e61xx.h |    2 +-
>  2 files changed, 10 insertions(+), 10 deletions(-)

With ELDK 4.1 (gcc 4.0.0) I also get this compiler warning:

mv88e61xx.c: In function 'mv88e61xx_switch_initialize':
mv88e61xx.c:346: warning: 'idstr' may be used uninitialized in this function

when building for the mv88f6281gtw_ge board.

This looks reasonabme, as

361         if (reg == 0x1610)
362                 idstr = "88E6161";
363         if (reg == 0x1650)
364                 idstr = "88E6165";
365         if (reg == 0x1210) {
366                 idstr = "88E6123";
367                 /* ports 2,3,4 not available */
368                 swconfig->ports_enabled &= 0x023;
369         }

may ideed leave "idstr" uninitialized; you may want to change this
into a switch() construct and add a default: case.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Always try to do things in chronological order; it's  less  confusing
that way.


More information about the U-Boot mailing list