2010-12-13 09:37:03

by Marek Belisko

[permalink] [raw]
Subject: [PATCH] staging: ft1000: Always extract device number from netdev name.

Using gCardIndex as global variable was not correctly used because
for every plugged device was set to 0 in init_ft1000_netdev.

Remove global definition. Use it locally and for every plugged
device extract number from net device name.

Signed-off-by: Marek Belisko <[email protected]>
---
drivers/staging/ft1000/ft1000-usb/ft1000_hw.c | 14 +-------------
1 files changed, 1 insertions(+), 13 deletions(-)

diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c
index 7456787..643a637 100644
--- a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c
+++ b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c
@@ -41,7 +41,6 @@ static int ft1000_chkcard (struct ft1000_device *dev);
//Jim

static u8 tempbuffer[1600];
-static unsigned long gCardIndex;

#define MAX_RCV_LOOP 100

@@ -773,8 +772,7 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
int i, ret_val;
struct list_head *cur, *tmp;
char card_nr[2];
-
- gCardIndex=0; //mbelian
+ unsigned long gCardIndex = 0;

DEBUG("Enter init_ft1000_netdev...\n");

@@ -794,9 +792,6 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)

dev_alloc_name(netdev, netdev->name);

- //for the first inserted card, decide the card index beginning number, in case there are existing network interfaces
- if ( gCardIndex == 0 )
- {
DEBUG("init_ft1000_netdev: network device name is %s\n", netdev->name);

if ( strncmp(netdev->name,"eth", 3) == 0) {
@@ -816,13 +811,6 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev)
ret_val = -ENXIO;
goto err_net;
}
- }
- else
- {
- //not the first inserted card, increase card number by 1
- pInfo->CardNumber = gCardIndex;
- /*DEBUG("card number = %d\n", pInfo->CardNumber);*/ //mbelian
- }

memset(&pInfo->stats, 0, sizeof(struct net_device_stats) );

--
1.7.1