[U-Boot] [PATCH v2] NET: add ENC28J60 driver using SPI framework
    Wolfgang Denk 
    wd at denx.de
       
    Wed Sep  8 20:15:31 CEST 2010
    
    
  
Dear Reinhard Meyer,
In message <4C87CFE8.8010203 at emk-elektronik.de> you wrote:
> Dear Mike Frysinger,
> > On Monday, September 06, 2010 10:59:16 Reinhard Meyer wrote:
> >> +int enc_miiphy_read(const char *devname, u8 phy_adr, u8 reg, u16 *value)
> >> +{
> >> +	struct eth_device *dev = eth_get_dev_by_name(devname);
> >> +	if (dev) {
> >> +		enc_dev_t *enc = to_enc(dev);
> >> +
> >> +		if (phy_adr != 0)
> >> +			return -1;
> >> +		spi_claim_bus(enc->slave);
> >> +		*value = phy_read(enc, reg);
> >> +		spi_release_bus(enc->slave);
> >> +		return 0;
> >> +	}
> >> +	return -1;
> >> +}
> >
> > seems like this (and the write func) would be nicer if it were:
> > if (!dev)
> > 	return -1;
> > ...
> 
> Umm, no. That would split enc_dev_t *enc = to_enc (dev) into two lines:
> Declaration, if, assigment
Yes? What's the problem with that?  But then you can unindent a whole
block of code one level, which means the code is much easier toi read
and to maintain.
Please do as Mike suggested.
> > check the return value
> 
> OK, for sake of completeness in every function using it..
> Hmm blows up the code :)
Yes, error handling blows up the code. But it helpos a lot to make
programs reliable and robust.
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
There has been an alarming increase in the number of things you  know
nothing about.
    
    
More information about the U-Boot
mailing list