Lines Matching refs:drvr
110 brcmf_proto_bcdc_msg(struct brcmf_pub *drvr, int ifidx, uint cmd, void *buf, in brcmf_proto_bcdc_msg() argument
113 struct brcmf_bcdc *bcdc = (struct brcmf_bcdc *)drvr->proto->pd; in brcmf_proto_bcdc_msg()
138 return brcmf_bus_txctl(drvr->bus_if, (unsigned char *)&bcdc->msg, len); in brcmf_proto_bcdc_msg()
141 static int brcmf_proto_bcdc_cmplt(struct brcmf_pub *drvr, u32 id, u32 len) in brcmf_proto_bcdc_cmplt() argument
144 struct brcmf_bcdc *bcdc = (struct brcmf_bcdc *)drvr->proto->pd; in brcmf_proto_bcdc_cmplt()
149 ret = brcmf_bus_rxctl(drvr->bus_if, (unsigned char *)&bcdc->msg, in brcmf_proto_bcdc_cmplt()
159 brcmf_proto_bcdc_query_dcmd(struct brcmf_pub *drvr, int ifidx, uint cmd, in brcmf_proto_bcdc_query_dcmd() argument
162 struct brcmf_bcdc *bcdc = (struct brcmf_bcdc *)drvr->proto->pd; in brcmf_proto_bcdc_query_dcmd()
170 ret = brcmf_proto_bcdc_msg(drvr, ifidx, cmd, buf, len, false); in brcmf_proto_bcdc_query_dcmd()
179 ret = brcmf_proto_bcdc_cmplt(drvr, bcdc->reqid, len); in brcmf_proto_bcdc_query_dcmd()
190 brcmf_ifname(drvr, ifidx), id, bcdc->reqid); in brcmf_proto_bcdc_query_dcmd()
214 brcmf_proto_bcdc_set_dcmd(struct brcmf_pub *drvr, int ifidx, uint cmd, in brcmf_proto_bcdc_set_dcmd() argument
217 struct brcmf_bcdc *bcdc = (struct brcmf_bcdc *)drvr->proto->pd; in brcmf_proto_bcdc_set_dcmd()
224 ret = brcmf_proto_bcdc_msg(drvr, ifidx, cmd, buf, len, true); in brcmf_proto_bcdc_set_dcmd()
228 ret = brcmf_proto_bcdc_cmplt(drvr, bcdc->reqid, len); in brcmf_proto_bcdc_set_dcmd()
237 brcmf_ifname(drvr, ifidx), id, bcdc->reqid); in brcmf_proto_bcdc_set_dcmd()
251 brcmf_proto_bcdc_hdrpush(struct brcmf_pub *drvr, int ifidx, u8 offset, in brcmf_proto_bcdc_hdrpush() argument
275 brcmf_proto_bcdc_hdrpull(struct brcmf_pub *drvr, bool do_fws, in brcmf_proto_bcdc_hdrpull() argument
293 tmp_if = brcmf_get_ifp(drvr, BCDC_GET_IF_IDX(h)); in brcmf_proto_bcdc_hdrpull()
301 brcmf_ifname(drvr, tmp_if->ifidx), h->flags); in brcmf_proto_bcdc_hdrpull()
307 brcmf_ifname(drvr, tmp_if->ifidx), h->flags); in brcmf_proto_bcdc_hdrpull()
327 brcmf_proto_bcdc_txdata(struct brcmf_pub *drvr, int ifidx, u8 offset, in brcmf_proto_bcdc_txdata() argument
330 brcmf_proto_bcdc_hdrpush(drvr, ifidx, offset, pktbuf); in brcmf_proto_bcdc_txdata()
331 return brcmf_bus_txdata(drvr->bus_if, pktbuf); in brcmf_proto_bcdc_txdata()
335 brcmf_proto_bcdc_configure_addr_mode(struct brcmf_pub *drvr, int ifidx, in brcmf_proto_bcdc_configure_addr_mode() argument
341 brcmf_proto_bcdc_delete_peer(struct brcmf_pub *drvr, int ifidx, in brcmf_proto_bcdc_delete_peer() argument
347 brcmf_proto_bcdc_add_tdls_peer(struct brcmf_pub *drvr, int ifidx, in brcmf_proto_bcdc_add_tdls_peer() argument
352 int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr) in brcmf_proto_bcdc_attach() argument
366 drvr->proto->hdrpull = brcmf_proto_bcdc_hdrpull; in brcmf_proto_bcdc_attach()
367 drvr->proto->query_dcmd = brcmf_proto_bcdc_query_dcmd; in brcmf_proto_bcdc_attach()
368 drvr->proto->set_dcmd = brcmf_proto_bcdc_set_dcmd; in brcmf_proto_bcdc_attach()
369 drvr->proto->txdata = brcmf_proto_bcdc_txdata; in brcmf_proto_bcdc_attach()
370 drvr->proto->configure_addr_mode = brcmf_proto_bcdc_configure_addr_mode; in brcmf_proto_bcdc_attach()
371 drvr->proto->delete_peer = brcmf_proto_bcdc_delete_peer; in brcmf_proto_bcdc_attach()
372 drvr->proto->add_tdls_peer = brcmf_proto_bcdc_add_tdls_peer; in brcmf_proto_bcdc_attach()
373 drvr->proto->pd = bcdc; in brcmf_proto_bcdc_attach()
375 drvr->hdrlen += BCDC_HEADER_LEN + BRCMF_PROT_FW_SIGNAL_MAX_TXBYTES; in brcmf_proto_bcdc_attach()
376 drvr->bus_if->maxctl = BRCMF_DCMD_MAXLEN + in brcmf_proto_bcdc_attach()
385 void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr) in brcmf_proto_bcdc_detach() argument
387 kfree(drvr->proto->pd); in brcmf_proto_bcdc_detach()
388 drvr->proto->pd = NULL; in brcmf_proto_bcdc_detach()