|
@@ -146,10 +146,7 @@ static int ql_wait_for_drvr_lock(struct ql3_adapter *qdev)
|
|
{
|
|
{
|
|
int i = 0;
|
|
int i = 0;
|
|
|
|
|
|
- while (i < 10) {
|
|
|
|
- if (i)
|
|
|
|
- ssleep(1);
|
|
|
|
-
|
|
|
|
|
|
+ do {
|
|
if (ql_sem_lock(qdev,
|
|
if (ql_sem_lock(qdev,
|
|
QL_DRVR_SEM_MASK,
|
|
QL_DRVR_SEM_MASK,
|
|
(QL_RESOURCE_BITS_BASE_CODE | (qdev->mac_index)
|
|
(QL_RESOURCE_BITS_BASE_CODE | (qdev->mac_index)
|
|
@@ -158,7 +155,8 @@ static int ql_wait_for_drvr_lock(struct ql3_adapter *qdev)
|
|
"driver lock acquired\n");
|
|
"driver lock acquired\n");
|
|
return 1;
|
|
return 1;
|
|
}
|
|
}
|
|
- }
|
|
|
|
|
|
+ ssleep(1);
|
|
|
|
+ } while (++i < 10);
|
|
|
|
|
|
netdev_err(qdev->ndev, "Timed out waiting for driver lock...\n");
|
|
netdev_err(qdev->ndev, "Timed out waiting for driver lock...\n");
|
|
return 0;
|
|
return 0;
|