[U-Boot] [U-boot] [PATCH 1/2] NET: QE: UEC: Make uec_miiphy_read() and uec_miiphy_write() use the devname arg.

Ben Warren biggerbadderben at gmail.com
Mon Aug 18 23:00:25 CEST 2008


richardretanubun wrote:
> Added a new function uec_miiphy_find_dev_by_name to allow uec_miiphy_read 
> and uec_miiphy_write to use the passed devname and not hardcoded to devlist[0]
>
> Signed-off-by: Richard Retanubun <RichardRetanubun_at_ruggedcom.com>
>
> diff --git a/drivers/qe/uec.c b/drivers/qe/uec.c
> index 344c649..d14566e 100644
> --- a/drivers/qe/uec.c
> +++ b/drivers/qe/uec.c
> @@ -639,6 +639,32 @@ static void phy_change(struct eth_device *dev)
>  	&& !defined(BITBANGMII)
>  
>  /*
> + * Find a device index from the devlist by name
> + *
> + * Returns:
> + *  The index where the device is located, else 0
>   
But index 0 is a valid device.  Return -1 on failure and check for it.
> + */
> +static int uec_miiphy_find_dev_by_name(char *devname)
> +{
> +	int i = 0;
>   
No need to initialize this variable.
> +
> +
> +	for (i = 0; i < MAXCONTROLLERS; i++) {
> +		if (strncmp(devname, devlist[i]->name, strlen(devname)) == 0) {
> +			break;
> +		}
> +	}
> +
> +	// If device cannot be found, default to 0
>   
No C++ - style comments please.
> +	if (i == MAXCONTROLLERS) {
> +		debug ("%s: device %s not found in devlist\n", __FUNCTION__, devname);
> +		i = 0;
>   
As mentioned above, don't set to a valid index on failure.  -1 is 
standard for this type of thing.
> +	}
> +
> +	return (i);
>   
No brackets needed around return value.
> +}
> +
> +/*
>   * Read a MII PHY register.
>   *
>   * Returns:
> @@ -647,8 +673,15 @@ static void phy_change(struct eth_device *dev)
>  static int uec_miiphy_read(char *devname, unsigned char addr,
>  			    unsigned char reg, unsigned short *value)
>  {
> -	*value = uec_read_phy_reg(devlist[0], addr, reg);
> +	int i = 0;
>   
This isn't a good variable name except for iterators.  Please use 
something more meaningful.
> +
>  
> +	if (devname == NULL || value == NULL) {
> +		debug("%s: NULL pointer given\n", __FUNCTION__);
> +	} else {
> +		i = uec_miiphy_find_dev_by_name(devname);
>   
Bail if i<0
> +		*value = uec_read_phy_reg(devlist[i], addr, reg);
> +	}
>  	return 0;
>  }
>  
> @@ -661,11 +694,17 @@ static int uec_miiphy_read(char *devname, unsigned char addr,
>  static int uec_miiphy_write(char *devname, unsigned char addr,
>  			     unsigned char reg, unsigned short value)
>  {
> -	uec_write_phy_reg(devlist[0], addr, reg, value);
> +	int i = 0;
> +
>  
> +	if (devname == NULL) {
> +		debug("%s: NULL pointer given\n", __FUNCTION__);
> +	} else {
> +		i = uec_miiphy_find_dev_by_name(devname);
> +		uec_write_phy_reg(devlist[i], addr, reg, value);
> +	}
>   
Same comments as with other function.
>  	return 0;
>  }
> -
>  #endif
>  
>  static int uec_set_mac_address(uec_private_t *uec, u8 *mac_addr)
>
>   
regards,
Ben



More information about the U-Boot mailing list