-
-/*!
- *  @file      coreconfigurator.c
- *  @brief
- *  @author
- *  @sa                coreconfigurator.h
- *  @date      1 Mar 2012
- *  @version   1.0
- */
-
 #include "coreconfigurator.h"
 #include "wilc_wlan_if.h"
 #include "wilc_wlan.h"
 #define TAG_PARAM_OFFSET       (MAC_HDR_LEN + TIME_STAMP_LEN + \
                                                        BEACON_INTERVAL_LEN + CAP_INFO_LEN)
 
-/* Basic Frame Type Codes (2-bit) */
 enum basic_frame_type {
        FRAME_TYPE_CONTROL     = 0x04,
        FRAME_TYPE_DATA        = 0x08,
        FRAME_TYPE_FORCE_32BIT = 0xFFFFFFFF
 };
 
-/* Frame Type and Subtype Codes (6-bit) */
 enum sub_frame_type {
        ASSOC_REQ             = 0x00,
        ASSOC_RSP             = 0x10,
        FRAME_SUBTYPE_FORCE_32BIT  = 0xFFFFFFFF
 };
 
-/* Element ID  of various Information Elements */
 enum info_element_id {
        ISSID               = 0,   /* Service Set Identifier         */
        ISUPRATES           = 1,   /* Supported Rates                */
        INFOELEM_ID_FORCE_32BIT  = 0xFFFFFFFF
 };
 
-/* This function extracts the beacon period field from the beacon or probe   */
-/* response frame.                                                           */
 static inline u16 get_beacon_period(u8 *data)
 {
        u16 bcn_per;
        return time_stamp;
 }
 
-/* This function extracts the 'frame type and sub type' bits from the MAC    */
-/* header of the input frame.                                                */
-/* Returns the value in the LSB of the returned value.                       */
 static inline enum sub_frame_type get_sub_type(u8 *header)
 {
        return ((enum sub_frame_type)(header[0] & 0xFC));
 }
 
-/* This function extracts the 'to ds' bit from the MAC header of the input   */
-/* frame.                                                                    */
-/* Returns the value in the LSB of the returned value.                       */
 static inline u8 get_to_ds(u8 *header)
 {
        return (header[1] & 0x01);
 }
 
-/* This function extracts the 'from ds' bit from the MAC header of the input */
-/* frame.                                                                    */
-/* Returns the value in the LSB of the returned value.                       */
 static inline u8 get_from_ds(u8 *header)
 {
        return ((header[1] & 0x02) >> 1);
 }
 
-/* This function extracts the MAC Address in 'address1' field of the MAC     */
-/* header and updates the MAC Address in the allocated 'addr' variable.      */
 static inline void get_address1(u8 *pu8msa, u8 *addr)
 {
        memcpy(addr, pu8msa + 4, 6);
 }
 
-/* This function extracts the MAC Address in 'address2' field of the MAC     */
-/* header and updates the MAC Address in the allocated 'addr' variable.      */
 static inline void get_address2(u8 *pu8msa, u8 *addr)
 {
        memcpy(addr, pu8msa + 10, 6);
 }
 
-/* This function extracts the MAC Address in 'address3' field of the MAC     */
-/* header and updates the MAC Address in the allocated 'addr' variable.      */
 static inline void get_address3(u8 *pu8msa, u8 *addr)
 {
        memcpy(addr, pu8msa + 16, 6);
 }
 
-/* This function extracts the BSSID from the incoming WLAN packet based on   */
-/* the 'from ds' bit, and updates the MAC Address in the allocated 'addr'    */
-/* variable.                                                                 */
 static inline void get_BSSID(u8 *data, u8 *bssid)
 {
        if (get_from_ds(data) == 1)
                get_address3(data, bssid);
 }
 
-/* This function extracts the SSID from a beacon/probe response frame        */
 static inline void get_ssid(u8 *data, u8 *ssid, u8 *p_ssid_len)
 {
        u8 len = 0;
        j   = MAC_HDR_LEN + TIME_STAMP_LEN + BEACON_INTERVAL_LEN +
                CAP_INFO_LEN + 2;
 
-       /* If the SSID length field is set wrongly to a value greater than the   */
-       /* allowed maximum SSID length limit, reset the length to 0              */
        if (len >= MAX_SSID_LEN)
                len = 0;
 
        *p_ssid_len = len;
 }
 
-/* This function extracts the capability info field from the beacon or probe */
-/* response frame.                                                           */
 static inline u16 get_cap_info(u8 *data)
 {
        u16 cap_info = 0;
 
        st = get_sub_type(data);
 
-       /* Location of the Capability field is different for Beacon and */
-       /* Association frames.                                          */
        if ((st == BEACON) || (st == PROBE_RSP))
                index += TIME_STAMP_LEN + BEACON_INTERVAL_LEN;
 
        return cap_info;
 }
 
-/* This function extracts the capability info field from the Association */
-/* response frame.                                                                       */
 static inline u16 get_assoc_resp_cap_info(u8 *data)
 {
        u16 cap_info;
        return cap_info;
 }
 
-/* This function extracts the association status code from the incoming       */
-/* association response frame and returns association status code            */
 static inline u16 get_asoc_status(u8 *data)
 {
        u16 asoc_status;
        return asoc_status;
 }
 
-/* This function extracts association ID from the incoming association       */
-/* response frame                                                                                           */
 static inline u16 get_asoc_id(u8 *data)
 {
        u16 asoc_id;
 {
        u16 u16index;
 
-       /*************************************************************************/
-       /*                       Beacon Frame - Frame Body                       */
-       /* --------------------------------------------------------------------- */
-       /* |Timestamp |BeaconInt |CapInfo |SSID |SupRates |DSParSet |TIM elm   | */
-       /* --------------------------------------------------------------------- */
-       /* |8         |2         |2       |2-34 |3-10     |3        |4-256     | */
-       /* --------------------------------------------------------------------- */
-       /*                                                                       */
-       /*************************************************************************/
-
        u16index = u16TagParamOffset;
 
-       /* Search for the TIM Element Field and return if the element is found */
        while (u16index < (u16RxLen - FCS_LEN)) {
                if (pu8msa[u16index] == ITIM)
                        return &pu8msa[u16index];
        return NULL;
 }
 
-/* This function gets the current channel information from
- * the 802.11n beacon/probe response frame */
 static u8 get_current_channel_802_11n(u8 *pu8msa, u16 u16RxLen)
 {
        u16 index;
        while (index < (u16RxLen - FCS_LEN)) {
                if (pu8msa[index] == IDSPARMS)
                        return pu8msa[index + 2];
-               /* Increment index by length information and header */
                index += pu8msa[index + 1] + IE_HDR_LEN;
        }
 
-       /* Return current channel information from the MIB, if beacon/probe  */
-       /* response frame does not contain the DS parameter set IE           */
-       /* return (mget_CurrentChannel() + 1); */
-       return 0;  /* no MIB here */
+       return 0;
 }
 
-/**
- *  @brief                      parses the received 'N' message
- *  @details
- *  @param[in]  pu8MsgBuffer The message to be parsed
- *  @param[out]         ppstrNetworkInfo pointer to pointer to the structure containing the parsed Network Info
- *  @return             Error code indicating success/failure
- *  @note
- *  @author            mabubakr
- *  @date                      1 Mar 2012
- *  @version           1.0
- */
 s32 wilc_parse_network_info(u8 *pu8MsgBuffer, tstrNetworkInfo **ppstrNetworkInfo)
 {
        tstrNetworkInfo *pstrNetworkInfo = NULL;
 
        u8MsgType = pu8MsgBuffer[0];
 
-       /* Check whether the received message type is 'N' */
        if ('N' != u8MsgType) {
                PRINT_ER("Received Message format incorrect.\n");
                return -EFAULT;
        }
 
-       /* Extract message ID */
        u8MsgID = pu8MsgBuffer[1];
-
-       /* Extract message Length */
        u16MsgLen = MAKE_WORD16(pu8MsgBuffer[2], pu8MsgBuffer[3]);
-
-       /* Extract WID ID */
        u16WidID = MAKE_WORD16(pu8MsgBuffer[4], pu8MsgBuffer[5]);
-
-       /* Extract WID Length */
        u16WidLen = MAKE_WORD16(pu8MsgBuffer[6], pu8MsgBuffer[7]);
-
-       /* Assign a pointer to the WID value */
        pu8WidVal  = &pu8MsgBuffer[8];
 
-       /* parse the WID value of the WID "WID_NEWORK_INFO" */
        {
                u8  *pu8msa = NULL;
                u16 u16RxLen = 0;
 
                pstrNetworkInfo->s8rssi = pu8WidVal[0];
 
-               /* Assign a pointer to msa "Mac Header Start Address" */
                pu8msa = &pu8WidVal[1];
 
                u16RxLen = u16WidLen - 1;
-
-               /* parse msa*/
-
-               /* Get the cap_info */
                pstrNetworkInfo->u16CapInfo = get_cap_info(pu8msa);
-               /* Get time-stamp [Low only 32 bit] */
                pstrNetworkInfo->u32Tsf = get_beacon_timestamp_lo(pu8msa);
                PRINT_D(CORECONFIG_DBG, "TSF :%x\n", pstrNetworkInfo->u32Tsf);
 
-               /* Get full time-stamp [Low and High 64 bit] */
                u32Tsf_Lo = get_beacon_timestamp_lo(pu8msa);
                u32Tsf_Hi = get_beacon_timestamp_hi(pu8msa);
 
                pstrNetworkInfo->u64Tsf = u32Tsf_Lo | ((u64)u32Tsf_Hi << 32);
 
-               /* Get SSID */
                get_ssid(pu8msa, pstrNetworkInfo->au8ssid, &pstrNetworkInfo->u8SsidLen);
-
-               /* Get BSSID */
                get_BSSID(pu8msa, pstrNetworkInfo->au8bssid);
 
-               /*
-                * Extract current channel information from
-                * the beacon/probe response frame
-                */
                pstrNetworkInfo->u8channel = get_current_channel_802_11n(pu8msa,
                                                        u16RxLen + FCS_LEN);
 
-               /* Get beacon period */
                u8index = MAC_HDR_LEN + TIME_STAMP_LEN;
 
                pstrNetworkInfo->u16BeaconPeriod = get_beacon_period(pu8msa + u8index);
 
                u8index += BEACON_INTERVAL_LEN + CAP_INFO_LEN;
 
-               /* Get DTIM Period */
                pu8TimElm = get_tim_elm(pu8msa, u16RxLen + FCS_LEN, u8index);
                if (pu8TimElm)
                        pstrNetworkInfo->u8DtimPeriod = pu8TimElm[3];
        return 0;
 }
 
-/**
- *  @brief              Deallocates the parsed Network Info
- *  @details
- *  @param[in]  pstrNetworkInfo Network Info to be deallocated
- *  @return             Error code indicating success/failure
- *  @note
- *  @author            mabubakr
- *  @date              1 Mar 2012
- *  @version           1.0
- */
 s32 wilc_dealloc_network_info(tstrNetworkInfo *pstrNetworkInfo)
 {
        s32 s32Error = 0;
        return s32Error;
 }
 
-/**
- *  @brief                      parses the received Association Response frame
- *  @details
- *  @param[in]  pu8Buffer The Association Response frame to be parsed
- *  @param[out]         ppstrConnectRespInfo pointer to pointer to the structure containing the parsed Association Response Info
- *  @return             Error code indicating success/failure
- *  @note
- *  @author            mabubakr
- *  @date                      2 Apr 2012
- *  @version           1.0
- */
 s32 wilc_parse_assoc_resp_info(u8 *pu8Buffer, u32 u32BufferLen,
                               tstrConnectRespInfo **ppstrConnectRespInfo)
 {
        if (!pstrConnectRespInfo)
                return -ENOMEM;
 
-       /* u16AssocRespLen = pu8Buffer[0]; */
        u16AssocRespLen = (u16)u32BufferLen;
 
-       /* get the status code */
        pstrConnectRespInfo->u16ConnectStatus = get_asoc_status(pu8Buffer);
        if (pstrConnectRespInfo->u16ConnectStatus == SUCCESSFUL_STATUSCODE) {
-
-               /* get the capability */
                pstrConnectRespInfo->u16capability = get_assoc_resp_cap_info(pu8Buffer);
-
-               /* get the Association ID */
                pstrConnectRespInfo->u16AssocID = get_asoc_id(pu8Buffer);
 
-               /* get the Information Elements */
                pu8IEs = &pu8Buffer[CAP_INFO_LEN + STATUS_CODE_LEN + AID_LEN];
                u16IEsLen = u16AssocRespLen - (CAP_INFO_LEN + STATUS_CODE_LEN + AID_LEN);
 
        return s32Error;
 }
 
-/**
- *  @brief                      Deallocates the parsed Association Response Info
- *  @details
- *  @param[in]  pstrNetworkInfo Network Info to be deallocated
- *  @return             Error code indicating success/failure
- *  @note
- *  @author            mabubakr
- *  @date                      2 Apr 2012
- *  @version           1.0
- */
 s32 wilc_dealloc_assoc_resp_info(tstrConnectRespInfo *pstrConnectRespInfo)
 {
        s32 s32Error = 0;