On 10/9/2018 4:06 PM, Johannes Berg wrote: > On Tue, 2018-10-09 at 16:04 +0530, Ajay Singh wrote: > >>>> +typedef void (*wilc_remain_on_chan_expired)(void *, u32); >>>> +typedef void (*wilc_remain_on_chan_ready)(void *); >> I think as per coding style the typedef for function pointer are allowed. > True, I guess, but why do you need them? Actually these function pointer are used in multiple places i.e inside the struct and also for passing as the argument for the function. So i think its better to keep them as typedef to simplify and avoid any 'line over 80 chars' checkpatch issue. But anyway if you suggest we can modify to remove these typedefs . >>>> +struct rcvd_net_info { >>>> + u8 *buffer; >>>> + u32 len; >>>> +}; >>>> + >>>> +struct hidden_net_info { >>>> + u8 *ssid; >>>> + u8 ssid_len; >>>> +}; >>>> + >>>> +struct hidden_network { >>>> + struct hidden_net_info *net_info; >>>> + u8 n_ssids; >>>> +}; >>> This seems really odd - what part doesn't cfg80211 already handle? >> If I understood your question correctly, you meant what extra >> functionality 'hidden_network' struct is providing. > Pretty much. It seems like you're trying to handle hidden SSIDs in some > way, but ... that's odd. > >> Actually this structure is just used to keeps list of SSID's requested >> in cfg80211 'scan' callback which is passed to firmware. The values are >> extracted from 'cfg80211_scan_request[struct cfg80211_ssid *ssids >> ----- int n_ssids] received during scan. > So then this has nothing to do with hidden SSID? Yes, its not related to hidden SSID. Suppose cfg80211 scan is called with SSID information(active scan) then SSID info will be maintained in this structure. Regards, Ajay