aboutsummaryrefslogtreecommitdiff
path: root/drivers/staging/gdm72xx/gdm_qos.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/gdm72xx/gdm_qos.c')
-rw-r--r--drivers/staging/gdm72xx/gdm_qos.c47
1 files changed, 17 insertions, 30 deletions
diff --git a/drivers/staging/gdm72xx/gdm_qos.c b/drivers/staging/gdm72xx/gdm_qos.c
index 1e630312372..b795353e834 100644
--- a/drivers/staging/gdm72xx/gdm_qos.c
+++ b/drivers/staging/gdm72xx/gdm_qos.c
@@ -337,7 +337,6 @@ void gdm_recv_qos_hci_packet(void *nic_ptr, u8 *buf, int size)
struct nic *nic = nic_ptr;
u32 i, SFID, index, pos;
u8 subCmdEvt;
- u8 len;
struct qos_cb_s *qcb = &nic->qos;
struct qos_entry_s *entry, *n;
struct list_head send_list;
@@ -347,8 +346,6 @@ void gdm_recv_qos_hci_packet(void *nic_ptr, u8 *buf, int size)
subCmdEvt = (u8)buf[4];
if (subCmdEvt == QOS_REPORT) {
- len = (u8)buf[5];
-
spin_lock_irqsave(&qcb->qos_lock, flags);
for (i = 0; i < qcb->qos_list_cnt; i++) {
SFID = ((buf[(i*5)+6]<<24)&0xff000000);
@@ -368,21 +365,24 @@ void gdm_recv_qos_hci_packet(void *nic_ptr, u8 *buf, int size)
spin_unlock_irqrestore(&qcb->qos_lock, flags);
send_qos_list(nic, &send_list);
return;
- } else if (subCmdEvt == QOS_ADD) {
- pos = 5;
- len = (u8)buf[pos++];
-
- SFID = ((buf[pos++]<<24)&0xff000000);
- SFID += ((buf[pos++]<<16)&0xff0000);
- SFID += ((buf[pos++]<<8)&0xff00);
- SFID += (buf[pos++]);
-
- index = get_csr(qcb, SFID, 1);
- if (index == -1) {
- netdev_err(nic->netdev, "QoS ERROR: csr Update Error\n");
- return;
- }
+ }
+
+ /* subCmdEvt == QOS_ADD || subCmdEvt == QOS_CHANG_DEL */
+ pos = 6;
+ SFID = ((buf[pos++]<<24)&0xff000000);
+ SFID += ((buf[pos++]<<16)&0xff0000);
+ SFID += ((buf[pos++]<<8)&0xff00);
+ SFID += (buf[pos++]);
+
+ index = get_csr(qcb, SFID, 1);
+ if (index == -1) {
+ netdev_err(nic->netdev,
+ "QoS ERROR: csr Update Error / Wrong index (%d) \n",
+ index);
+ return;
+ }
+ if (subCmdEvt == QOS_ADD) {
netdev_dbg(nic->netdev, "QOS_ADD SFID = 0x%x, index=%d\n",
SFID, index);
@@ -424,19 +424,6 @@ void gdm_recv_qos_hci_packet(void *nic_ptr, u8 *buf, int size)
qcb->qos_limit_size = 254/qcb->qos_list_cnt;
spin_unlock_irqrestore(&qcb->qos_lock, flags);
} else if (subCmdEvt == QOS_CHANGE_DEL) {
- pos = 5;
- len = (u8)buf[pos++];
- SFID = ((buf[pos++]<<24)&0xff000000);
- SFID += ((buf[pos++]<<16)&0xff0000);
- SFID += ((buf[pos++]<<8)&0xff00);
- SFID += (buf[pos++]);
- index = get_csr(qcb, SFID, 1);
- if (index == -1) {
- netdev_err(nic->netdev, "QoS ERROR: Wrong index(%d)\n",
- index);
- return;
- }
-
netdev_dbg(nic->netdev, "QOS_CHANGE_DEL SFID = 0x%x, index=%d\n",
SFID, index);