Lines Matching full:ifp
143 struct brcmf_if *ifp = brcmf_get_ifp(drv, 0); in brcmf_feat_wlc_version_overrides() local
149 err = brcmf_fil_iovar_data_get(ifp, "wlc_ver", &ver, sizeof(ver)); in brcmf_feat_wlc_version_overrides()
180 * @ifp: interface to query.
184 static void brcmf_feat_iovar_int_get(struct brcmf_if *ifp, in brcmf_feat_iovar_int_get() argument
191 ifp->fwil_fwerr = true; in brcmf_feat_iovar_int_get()
193 err = brcmf_fil_iovar_int_get(ifp, name, &data); in brcmf_feat_iovar_int_get()
196 ifp->drvr->feat_flags |= BIT(id); in brcmf_feat_iovar_int_get()
202 ifp->fwil_fwerr = false; in brcmf_feat_iovar_int_get()
205 static void brcmf_feat_iovar_data_set(struct brcmf_if *ifp, in brcmf_feat_iovar_data_set() argument
212 ifp->fwil_fwerr = true; in brcmf_feat_iovar_data_set()
214 err = brcmf_fil_iovar_data_set(ifp, name, data, len); in brcmf_feat_iovar_data_set()
217 ifp->drvr->feat_flags |= BIT(id); in brcmf_feat_iovar_data_set()
223 ifp->fwil_fwerr = false; in brcmf_feat_iovar_data_set()
227 static void brcmf_feat_firmware_capabilities(struct brcmf_if *ifp) in brcmf_feat_firmware_capabilities() argument
229 struct brcmf_pub *drvr = ifp->drvr; in brcmf_feat_firmware_capabilities()
234 err = brcmf_fil_iovar_data_get(ifp, "cap", caps, sizeof(caps)); in brcmf_feat_firmware_capabilities()
247 ifp->drvr->feat_flags |= BIT(id); in brcmf_feat_firmware_capabilities()
262 struct brcmf_if *ifp = brcmf_get_ifp(drvr, 0); in brcmf_feat_fwcap_debugfs_read() local
267 err = brcmf_fil_iovar_data_get(ifp, "cap", caps, sizeof(caps)); in brcmf_feat_fwcap_debugfs_read()
290 struct brcmf_if *ifp = brcmf_get_ifp(drvr, 0); in brcmf_feat_attach() local
296 brcmf_feat_firmware_capabilities(ifp); in brcmf_feat_attach()
302 brcmf_feat_iovar_data_set(ifp, BRCMF_FEAT_GSCAN, in brcmf_feat_attach()
305 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_PNO, "pfn"); in brcmf_feat_attach()
307 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_WOWL, "wowl"); in brcmf_feat_attach()
308 if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_WOWL)) { in brcmf_feat_attach()
309 err = brcmf_fil_iovar_int_get(ifp, "wowl_cap", &wowl_cap); in brcmf_feat_attach()
311 ifp->drvr->feat_flags |= BIT(BRCMF_FEAT_WOWL_ARP_ND); in brcmf_feat_attach()
313 ifp->drvr->feat_flags |= in brcmf_feat_attach()
316 ifp->drvr->feat_flags |= in brcmf_feat_attach()
324 ifp->drvr->feat_flags &= ~BIT(BRCMF_FEAT_MBSS); in brcmf_feat_attach()
329 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_RSDB, "rsdb_mode"); in brcmf_feat_attach()
330 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_TDLS, "tdls_enable"); in brcmf_feat_attach()
331 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_MFP, "mfp"); in brcmf_feat_attach()
332 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_DUMP_OBSS, "dump_obss"); in brcmf_feat_attach()
335 err = brcmf_fil_iovar_data_get(ifp, "pfn_macaddr", &pfn_mac, in brcmf_feat_attach()
338 ifp->drvr->feat_flags |= BIT(BRCMF_FEAT_SCAN_RANDOM_MAC); in brcmf_feat_attach()
340 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_FWSUP, "sup_wpa"); in brcmf_feat_attach()
341 brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_SCAN_V2, "scan_ver"); in brcmf_feat_attach()
346 brcmf_fwvid_feat_attach(ifp); in brcmf_feat_attach()
350 ifp->drvr->feat_flags, in brcmf_feat_attach()
352 ifp->drvr->feat_flags &= ~drvr->settings->feature_disable; in brcmf_feat_attach()
375 bool brcmf_feat_is_enabled(struct brcmf_if *ifp, enum brcmf_feat_id id) in brcmf_feat_is_enabled() argument
377 return (ifp->drvr->feat_flags & BIT(id)); in brcmf_feat_is_enabled()
380 bool brcmf_feat_is_quirk_enabled(struct brcmf_if *ifp, in brcmf_feat_is_quirk_enabled() argument
383 return (ifp->drvr->chip_quirks & BIT(quirk)); in brcmf_feat_is_quirk_enabled()