diff options
author | Ajay Singh | 2018-03-02 15:17:20 +0100 |
---|---|---|
committer | Greg Kroah-Hartman | 2018-03-06 13:10:46 +0100 |
commit | 4c1f0e3aff805c3ae7616779bbf92983c1f394f2 (patch) | |
tree | 519ce295cc0388283c70537980f1fa48e7215c58 /drivers/staging/wilc1000/wilc_wlan.c | |
parent | staging: wilc1000: fix line over 80 char in wilc_wlan_cfg_set() (diff) | |
download | kernel-qcow2-linux-4c1f0e3aff805c3ae7616779bbf92983c1f394f2.tar.gz kernel-qcow2-linux-4c1f0e3aff805c3ae7616779bbf92983c1f394f2.tar.xz kernel-qcow2-linux-4c1f0e3aff805c3ae7616779bbf92983c1f394f2.zip |
staging: wilc1000: fix line over 80 char in wilc_wlan_handle_rxq()
Refactor wilc_wlan_handle_rxq() to fix line over 80 character issue
found by checkpatch.pl script. Added a new function to split
'wilc_wlan_handle_rxq' function code.
Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wilc1000/wilc_wlan.c')
-rw-r--r-- | drivers/staging/wilc1000/wilc_wlan.c | 114 |
1 files changed, 63 insertions, 51 deletions
diff --git a/drivers/staging/wilc1000/wilc_wlan.c b/drivers/staging/wilc1000/wilc_wlan.c index 8490407f7d88..bcbb92323a0a 100644 --- a/drivers/staging/wilc1000/wilc_wlan.c +++ b/drivers/staging/wilc1000/wilc_wlan.c @@ -773,9 +773,70 @@ out: return ret; } +static void wilc_wlan_handle_rx_buff(struct wilc *wilc, u8 *buffer, int size) +{ + int offset = 0; + u32 header; + u32 pkt_len, pkt_offset, tp_len; + int is_cfg_packet; + u8 *buff_ptr; + + do { + buff_ptr = buffer + offset; + memcpy(&header, buff_ptr, 4); + header = cpu_to_le32(header); + + is_cfg_packet = (header >> 31) & 0x1; + pkt_offset = (header >> 22) & 0x1ff; + tp_len = (header >> 11) & 0x7ff; + pkt_len = header & 0x7ff; + + if (pkt_len == 0 || tp_len == 0) + break; + + if (pkt_offset & IS_MANAGMEMENT) { + pkt_offset &= ~(IS_MANAGMEMENT | + IS_MANAGMEMENT_CALLBACK | + IS_MGMT_STATUS_SUCCES); + buff_ptr += HOST_HDR_OFFSET; + wilc_wfi_mgmt_rx(wilc, buff_ptr, pkt_len); + } else { + if (!is_cfg_packet) { + if (pkt_len > 0) { + wilc_frmw_to_linux(wilc, buff_ptr, + pkt_len, + pkt_offset); + } + } else { + struct wilc_cfg_rsp rsp; + + buff_ptr += pkt_offset; + + wilc_wlan_cfg_indicate_rx(wilc, buff_ptr, + pkt_len, + &rsp); + if (rsp.type == WILC_CFG_RSP) { + if (wilc->cfg_seq_no == rsp.seq_no) + complete(&wilc->cfg_event); + } else if (rsp.type == WILC_CFG_RSP_STATUS) { + wilc_mac_indicate(wilc, + WILC_MAC_INDICATE_STATUS); + + } else if (rsp.type == WILC_CFG_RSP_SCAN) { + wilc_mac_indicate(wilc, + WILC_MAC_INDICATE_SCAN); + } + } + } + offset += tp_len; + if (offset >= size) + break; + } while (1); +} + static void wilc_wlan_handle_rxq(struct wilc *wilc) { - int offset = 0, size; + int size; u8 *buffer; struct rxq_entry_t *rqe; @@ -792,57 +853,8 @@ static void wilc_wlan_handle_rxq(struct wilc *wilc) buffer = rqe->buffer; size = rqe->buffer_size; - offset = 0; - - do { - u32 header; - u32 pkt_len, pkt_offset, tp_len; - int is_cfg_packet; - - memcpy(&header, &buffer[offset], 4); - header = cpu_to_le32(header); - - is_cfg_packet = (header >> 31) & 0x1; - pkt_offset = (header >> 22) & 0x1ff; - tp_len = (header >> 11) & 0x7ff; - pkt_len = header & 0x7ff; - - if (pkt_len == 0 || tp_len == 0) - break; + wilc_wlan_handle_rx_buff(wilc, buffer, size); - if (pkt_offset & IS_MANAGMEMENT) { - pkt_offset &= ~(IS_MANAGMEMENT | - IS_MANAGMEMENT_CALLBACK | - IS_MGMT_STATUS_SUCCES); - - wilc_wfi_mgmt_rx(wilc, &buffer[offset + HOST_HDR_OFFSET], pkt_len); - } else { - if (!is_cfg_packet) { - if (pkt_len > 0) { - wilc_frmw_to_linux(wilc, - &buffer[offset], - pkt_len, - pkt_offset); - } - } else { - struct wilc_cfg_rsp rsp; - - wilc_wlan_cfg_indicate_rx(wilc, &buffer[pkt_offset + offset], pkt_len, &rsp); - if (rsp.type == WILC_CFG_RSP) { - if (wilc->cfg_seq_no == rsp.seq_no) - complete(&wilc->cfg_event); - } else if (rsp.type == WILC_CFG_RSP_STATUS) { - wilc_mac_indicate(wilc, WILC_MAC_INDICATE_STATUS); - - } else if (rsp.type == WILC_CFG_RSP_SCAN) { - wilc_mac_indicate(wilc, WILC_MAC_INDICATE_SCAN); - } - } - } - offset += tp_len; - if (offset >= size) - break; - } while (1); kfree(rqe); } while (1); |