Lines Matching refs:drvr
228 struct brcmf_pub *drvr; member
418 brcmf_msgbuf_release_array(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_release_pktids()
421 brcmf_msgbuf_release_array(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_release_pktids()
426 static int brcmf_msgbuf_tx_ioctl(struct brcmf_pub *drvr, int ifidx, in brcmf_msgbuf_tx_ioctl() argument
429 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_tx_ioctl()
440 bphy_err(drvr, "Failed to reserve space in commonring\n"); in brcmf_msgbuf_tx_ioctl()
487 static int brcmf_msgbuf_query_dcmd(struct brcmf_pub *drvr, int ifidx, in brcmf_msgbuf_query_dcmd() argument
490 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_query_dcmd()
498 err = brcmf_msgbuf_tx_ioctl(drvr, ifidx, cmd, buf, len); in brcmf_msgbuf_query_dcmd()
504 bphy_err(drvr, "Timeout on response for query command\n"); in brcmf_msgbuf_query_dcmd()
508 skb = brcmf_msgbuf_get_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_query_dcmd()
525 static int brcmf_msgbuf_set_dcmd(struct brcmf_pub *drvr, int ifidx, in brcmf_msgbuf_set_dcmd() argument
528 return brcmf_msgbuf_query_dcmd(drvr, ifidx, cmd, buf, len, fwerr); in brcmf_msgbuf_set_dcmd()
532 static int brcmf_msgbuf_hdrpull(struct brcmf_pub *drvr, bool do_fws, in brcmf_msgbuf_hdrpull() argument
552 dma_free_coherent(msgbuf->drvr->bus_if->dev, dma_sz, dma_buf, in brcmf_msgbuf_remove_flowring()
581 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_flowring_create_worker() local
593 dma_buf = dma_alloc_coherent(msgbuf->drvr->bus_if->dev, dma_sz, in brcmf_msgbuf_flowring_create_worker()
597 bphy_err(drvr, "dma_alloc_coherent failed\n"); in brcmf_msgbuf_flowring_create_worker()
610 bphy_err(drvr, "Failed to reserve space in commonring\n"); in brcmf_msgbuf_flowring_create_worker()
637 bphy_err(drvr, "Failed to write commonring\n"); in brcmf_msgbuf_flowring_create_worker()
696 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_txflow() local
716 bphy_err(drvr, "No SKB, but qlen %d\n", in brcmf_msgbuf_txflow()
721 if (brcmf_msgbuf_alloc_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_txflow()
725 bphy_err(drvr, "No PKTID available !!\n"); in brcmf_msgbuf_txflow()
730 brcmf_msgbuf_get_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_txflow()
795 static int brcmf_msgbuf_tx_queue_data(struct brcmf_pub *drvr, int ifidx, in brcmf_msgbuf_tx_queue_data() argument
798 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_tx_queue_data()
820 brcmf_msgbuf_configure_addr_mode(struct brcmf_pub *drvr, int ifidx, in brcmf_msgbuf_configure_addr_mode() argument
823 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_configure_addr_mode()
830 brcmf_msgbuf_delete_peer(struct brcmf_pub *drvr, int ifidx, u8 peer[ETH_ALEN]) in brcmf_msgbuf_delete_peer() argument
832 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_delete_peer()
839 brcmf_msgbuf_add_tdls_peer(struct brcmf_pub *drvr, int ifidx, u8 peer[ETH_ALEN]) in brcmf_msgbuf_add_tdls_peer() argument
841 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_add_tdls_peer()
880 skb = brcmf_msgbuf_get_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_process_txstatus()
889 brcmf_txfinalize(brcmf_get_ifp(msgbuf->drvr, tx_status->msg.ifidx), in brcmf_msgbuf_process_txstatus()
896 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_rxbuf_data_post() local
924 bphy_err(drvr, "Failed to alloc SKB\n"); in brcmf_msgbuf_rxbuf_data_post()
930 if (brcmf_msgbuf_alloc_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_rxbuf_data_post()
934 bphy_err(drvr, "No PKTID available !!\n"); in brcmf_msgbuf_rxbuf_data_post()
1004 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_rxbuf_ctrl_post() local
1022 bphy_err(drvr, "Failed to reserve space in commonring\n"); in brcmf_msgbuf_rxbuf_ctrl_post()
1034 bphy_err(drvr, "Failed to alloc SKB\n"); in brcmf_msgbuf_rxbuf_ctrl_post()
1040 if (brcmf_msgbuf_alloc_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_rxbuf_ctrl_post()
1044 bphy_err(drvr, "No PKTID available !!\n"); in brcmf_msgbuf_rxbuf_ctrl_post()
1096 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_event() local
1111 skb = brcmf_msgbuf_get_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_process_event()
1121 ifp = brcmf_get_ifp(msgbuf->drvr, event->msg.ifidx); in brcmf_msgbuf_process_event()
1123 bphy_err(drvr, "Received pkt for invalid ifidx %d\n", in brcmf_msgbuf_process_event()
1130 brcmf_fweh_process_skb(ifp->drvr, skb, 0); in brcmf_msgbuf_process_event()
1140 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_rx_complete() local
1157 skb = brcmf_msgbuf_get_pktid(msgbuf->drvr->bus_if->dev, in brcmf_msgbuf_process_rx_complete()
1171 ifp = msgbuf->drvr->mon_if; in brcmf_msgbuf_process_rx_complete()
1174 bphy_err(drvr, "Received unexpected monitor pkt\n"); in brcmf_msgbuf_process_rx_complete()
1183 ifp = brcmf_get_ifp(msgbuf->drvr, rx_complete->msg.ifidx); in brcmf_msgbuf_process_rx_complete()
1185 bphy_err(drvr, "Received pkt for invalid ifidx %d\n", in brcmf_msgbuf_process_rx_complete()
1199 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_gen_status() local
1204 bphy_err(drvr, "Firmware reported general error: %d\n", err); in brcmf_msgbuf_process_gen_status()
1211 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_ring_status() local
1218 bphy_err(drvr, "Firmware reported ring %d error: %d\n", ring, in brcmf_msgbuf_process_ring_status()
1227 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_flow_ring_create_response() local
1239 bphy_err(drvr, "Flowring creation failed, code %d\n", status); in brcmf_msgbuf_process_flow_ring_create_response()
1256 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_flow_ring_delete_response() local
1268 bphy_err(drvr, "Flowring deletion failed, code %d\n", status); in brcmf_msgbuf_process_flow_ring_delete_response()
1281 struct brcmf_pub *drvr = msgbuf->drvr; in brcmf_msgbuf_process_msgtype() local
1322 bphy_err(drvr, "Unsupported msgtype %d\n", msg->msgtype); in brcmf_msgbuf_process_msgtype()
1363 struct brcmf_pub *drvr = bus_if->drvr; in brcmf_proto_msgbuf_rx_trigger() local
1364 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_proto_msgbuf_rx_trigger()
1392 void brcmf_msgbuf_delete_flowring(struct brcmf_pub *drvr, u16 flowid) in brcmf_msgbuf_delete_flowring() argument
1394 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_delete_flowring()
1402 if (drvr->bus_if->state != BRCMF_BUS_UP) { in brcmf_msgbuf_delete_flowring()
1412 bphy_err(drvr, "FW unaware, flowring will be removed !!\n"); in brcmf_msgbuf_delete_flowring()
1436 bphy_err(drvr, "Failed to submit RING_DELETE, flowring will be removed\n"); in brcmf_msgbuf_delete_flowring()
1445 struct brcmf_pub *drvr = bus_if->drvr; in brcmf_msgbuf_stats_read() local
1446 struct brcmf_msgbuf *msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_msgbuf_stats_read()
1495 static void brcmf_msgbuf_debugfs_create(struct brcmf_pub *drvr) in brcmf_msgbuf_debugfs_create() argument
1497 brcmf_debugfs_add_entry(drvr, "msgbuf_stats", brcmf_msgbuf_stats_read); in brcmf_msgbuf_debugfs_create()
1500 int brcmf_proto_msgbuf_attach(struct brcmf_pub *drvr) in brcmf_proto_msgbuf_attach() argument
1507 if_msgbuf = drvr->bus_if->msgbuf; in brcmf_proto_msgbuf_attach()
1510 bphy_err(drvr, "driver not configured for this many flowrings %d\n", in brcmf_proto_msgbuf_attach()
1521 bphy_err(drvr, "workqueue creation failed\n"); in brcmf_proto_msgbuf_attach()
1535 msgbuf->drvr = drvr; in brcmf_proto_msgbuf_attach()
1536 msgbuf->ioctbuf = dma_alloc_coherent(drvr->bus_if->dev, in brcmf_proto_msgbuf_attach()
1546 drvr->proto->hdrpull = brcmf_msgbuf_hdrpull; in brcmf_proto_msgbuf_attach()
1547 drvr->proto->query_dcmd = brcmf_msgbuf_query_dcmd; in brcmf_proto_msgbuf_attach()
1548 drvr->proto->set_dcmd = brcmf_msgbuf_set_dcmd; in brcmf_proto_msgbuf_attach()
1549 drvr->proto->tx_queue_data = brcmf_msgbuf_tx_queue_data; in brcmf_proto_msgbuf_attach()
1550 drvr->proto->configure_addr_mode = brcmf_msgbuf_configure_addr_mode; in brcmf_proto_msgbuf_attach()
1551 drvr->proto->delete_peer = brcmf_msgbuf_delete_peer; in brcmf_proto_msgbuf_attach()
1552 drvr->proto->add_tdls_peer = brcmf_msgbuf_add_tdls_peer; in brcmf_proto_msgbuf_attach()
1553 drvr->proto->rxreorder = brcmf_msgbuf_rxreorder; in brcmf_proto_msgbuf_attach()
1554 drvr->proto->debugfs_create = brcmf_msgbuf_debugfs_create; in brcmf_proto_msgbuf_attach()
1555 drvr->proto->pd = msgbuf; in brcmf_proto_msgbuf_attach()
1584 msgbuf->flow = brcmf_flowring_attach(drvr->bus_if->dev, in brcmf_proto_msgbuf_attach()
1618 dma_free_coherent(drvr->bus_if->dev, in brcmf_proto_msgbuf_attach()
1628 void brcmf_proto_msgbuf_detach(struct brcmf_pub *drvr) in brcmf_proto_msgbuf_detach() argument
1634 if (drvr->proto->pd) { in brcmf_proto_msgbuf_detach()
1635 msgbuf = (struct brcmf_msgbuf *)drvr->proto->pd; in brcmf_proto_msgbuf_detach()
1650 dma_free_coherent(drvr->bus_if->dev, in brcmf_proto_msgbuf_detach()
1656 drvr->proto->pd = NULL; in brcmf_proto_msgbuf_detach()