[U-Boot] [PATCH] [v3] tsec: fix the return value for tsec_eth_init()
Ben Warren
biggerbadderben at gmail.com
Mon Jun 21 08:07:18 CEST 2010
Timur,
On 6/8/2010 6:21 AM, Timur Tabi wrote:
> The Ethernet initialization functions are supposed to return the number of
> devices initialized, so fix tsec_eth_init() so that they returns the number of
> TSECs initialized, instead of just zero. This is safe because the return value
> is currently ignored by all callers, but now they don't have to ignore it.
>
> In general, if an function initializes only one device, then it should return
> a negative number if there's an error. If it initializes more than one device,
> then it should never return a negative number.
>
> Signed-off-by: Timur Tabi<timur at freescale.com>
> ---
> drivers/net/tsec.c | 15 ++++++++++++---
> 1 files changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
> index 3e4c3bd..c62ff82 100644
> --- a/drivers/net/tsec.c
> +++ b/drivers/net/tsec.c
> @@ -95,14 +95,23 @@ static struct tsec_info_struct tsec_info[] = {
> #endif
> };
>
> +/*
> + * Initialize all the TSEC devices
> + *
> + * Returns the number of TSEC devices that were initialized
> + */
> int tsec_eth_init(bd_t *bis, struct tsec_info_struct *tsecs, int num)
> {
> int i;
> + int ret, count = 0;
>
> - for (i = 0; i< num; i++)
> - tsec_initialize(bis,&tsecs[i]);
> + for (i = 0; i< num; i++) {
> + ret = tsec_initialize(bis,&tsecs[i]);
> + if (ret> 0)
> + count += ret;
> + }
>
> - return 0;
> + return count;
> }
>
> int tsec_standard_init(bd_t *bis)
>
Applied to net/next.
regards,
Ben
More information about the U-Boot
mailing list