fws               119 drivers/irqchip/qcom-irq-combiner.c static int combiner_irq_translate(struct irq_domain *d, struct irq_fwspec *fws,
fws               124 drivers/irqchip/qcom-irq-combiner.c 	if (is_acpi_node(fws->fwnode)) {
fws               125 drivers/irqchip/qcom-irq-combiner.c 		if (WARN_ON((fws->param_count != 2) ||
fws               126 drivers/irqchip/qcom-irq-combiner.c 			    (fws->param[0] >= combiner->nirqs) ||
fws               127 drivers/irqchip/qcom-irq-combiner.c 			    (fws->param[1] & IORESOURCE_IRQ_LOWEDGE) ||
fws               128 drivers/irqchip/qcom-irq-combiner.c 			    (fws->param[1] & IORESOURCE_IRQ_HIGHEDGE)))
fws               131 drivers/irqchip/qcom-irq-combiner.c 		*hwirq = fws->param[0];
fws               132 drivers/irqchip/qcom-irq-combiner.c 		*type = fws->param[1];
fws                95 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	struct brcmf_fws_info *fws;
fws               103 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	return bcdc->fws;
fws               337 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	if (!brcmf_fws_queue_skbs(bcdc->fws))
fws               370 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	if (brcmf_fws_fc_active(bcdc->fws)) {
fws               372 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 			brcmf_fws_bustxfail(bcdc->fws, txp);
fws               427 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	struct brcmf_fws_info *fws;
fws               429 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	fws = brcmf_fws_attach(drvr);
fws               430 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	if (IS_ERR(fws))
fws               431 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 		return PTR_ERR(fws);
fws               433 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	bcdc->fws = fws;
fws               487 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c 	brcmf_fws_detach(bcdc->fws);
fws               541 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_get_tlv_len(struct brcmf_fws_info *fws,
fws               547 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.tlv_invalid_type++;
fws               554 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_lock(struct brcmf_fws_info *fws)
fws               555 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		__acquires(&fws->spinlock)
fws               557 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	spin_lock_irqsave(&fws->spinlock, fws->flags);
fws               560 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_unlock(struct brcmf_fws_info *fws)
fws               561 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		__releases(&fws->spinlock)
fws               563 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	spin_unlock_irqrestore(&fws->spinlock, fws->flags);
fws               643 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_psq_flush(struct brcmf_fws_info *fws, struct pktq *q,
fws               657 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_hanger_poppkt(&fws->hanger, hslot, &skb,
fws               680 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_hanger_cleanup(struct brcmf_fws_info *fws,
fws               684 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_hanger *h = &fws->hanger;
fws               705 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_macdesc_set_name(struct brcmf_fws_info *fws,
fws               708 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (desc == &fws->desc.other)
fws               746 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c brcmf_fws_macdesc_lookup(struct brcmf_fws_info *fws, u8 *ea)
fws               754 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.nodes[0];
fws               755 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	for (i = 0; i < ARRAY_SIZE(fws->desc.nodes); i++) {
fws               765 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c brcmf_fws_macdesc_find(struct brcmf_fws_info *fws, struct brcmf_if *ifp, u8 *da)
fws               767 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_mac_descriptor *entry = &fws->desc.other;
fws               781 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = brcmf_fws_macdesc_lookup(fws, da);
fws               789 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static bool brcmf_fws_macdesc_closed(struct brcmf_fws_info *fws,
fws               800 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if_entry = &fws->desc.iface[entry->interface_id];
fws               814 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_macdesc_cleanup(struct brcmf_fws_info *fws,
fws               819 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_psq_flush(fws, &entry->psq, ifidx);
fws               824 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_bus_txq_cleanup(struct brcmf_fws_info *fws,
fws               834 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	txq = brcmf_bus_gettxq(fws->drvr->bus_if);
fws               844 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			hi = &fws->hanger.items[hslot];
fws               853 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_cleanup(struct brcmf_fws_info *fws, int ifidx)
fws               859 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws == NULL)
fws               866 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	table = &fws->desc.nodes[0];
fws               867 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	for (i = 0; i < ARRAY_SIZE(fws->desc.nodes); i++)
fws               868 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_macdesc_cleanup(fws, &table[i], ifidx);
fws               870 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_macdesc_cleanup(fws, &fws->desc.other, ifidx);
fws               871 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_bus_txq_cleanup(fws, matchfn, ifidx);
fws               872 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_hanger_cleanup(fws, matchfn, ifidx);
fws               875 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static u8 brcmf_fws_hdrpush(struct brcmf_fws_info *fws, struct sk_buff *skb)
fws               890 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (BRCMF_FWS_MODE_GET_REUSESEQ(fws->mode))
fws               903 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (BRCMF_FWS_MODE_GET_REUSESEQ(fws->mode)) {
fws               927 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static bool brcmf_fws_tim_update(struct brcmf_fws_info *fws,
fws               954 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		      4 + fws->drvr->hdrlen;
fws               964 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		data_offset = brcmf_fws_hdrpush(fws, skb);
fws               966 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_unlock(fws);
fws               967 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		err = brcmf_proto_txdata(fws->drvr, ifidx, data_offset, skb);
fws               968 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_lock(fws);
fws               977 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c brcmf_fws_flow_control_check(struct brcmf_fws_info *fws, struct pktq *pq,
fws               980 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_if *ifp = brcmf_get_ifp(fws->drvr, if_id);
fws               991 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.fws_flow_block++;
fws               997 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_rssi_indicate(struct brcmf_fws_info *fws, s8 rssi)
fws              1004 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c int brcmf_fws_macdesc_indicate(struct brcmf_fws_info *fws, u8 type, u8 *data)
fws              1015 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.nodes[mac_handle & 0x1F];
fws              1020 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_lock(fws);
fws              1021 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_macdesc_cleanup(fws, entry, -1);
fws              1023 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_unlock(fws);
fws              1025 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.mac_update_failed++;
fws              1029 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	existing = brcmf_fws_macdesc_lookup(fws, addr);
fws              1032 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_lock(fws);
fws              1035 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_macdesc_set_name(fws, entry);
fws              1038 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_unlock(fws);
fws              1041 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.mac_update_failed++;
fws              1046 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_lock(fws);
fws              1051 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_macdesc_set_name(fws, entry);
fws              1052 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_unlock(fws);
fws              1064 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_macdesc_state_indicate(struct brcmf_fws_info *fws,
fws              1072 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.nodes[mac_handle & 0x1F];
fws              1074 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.mac_ps_update_failed++;
fws              1077 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1086 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_tim_update(fws, entry, BRCMF_FWS_FIFO_AC_BK, false);
fws              1087 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_tim_update(fws, entry, BRCMF_FWS_FIFO_AC_BE, false);
fws              1088 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_tim_update(fws, entry, BRCMF_FWS_FIFO_AC_VI, false);
fws              1089 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_tim_update(fws, entry, BRCMF_FWS_FIFO_AC_VO, true);
fws              1092 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1096 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_interface_state_indicate(struct brcmf_fws_info *fws,
fws              1110 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.iface[ifidx];
fws              1118 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1130 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_unlock(fws);
fws              1133 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1137 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->stats.if_update_failed++;
fws              1141 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_request_indicate(struct brcmf_fws_info *fws, u8 type,
fws              1146 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.nodes[data[1] & 0x1F];
fws              1149 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.credit_request_failed++;
fws              1151 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.packet_request_failed++;
fws              1158 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1165 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1200 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_return_credits(struct brcmf_fws_info *fws,
fws              1210 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fifo_credit_map |= 1 << fifo;
fws              1213 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	    (fws->credits_borrowed[0])) {
fws              1216 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			borrowed = &fws->credits_borrowed[lender_ac];
fws              1218 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				fws->fifo_credit_map |= (1 << lender_ac);
fws              1219 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				fifo_credit = &fws->fifo_credit[lender_ac];
fws              1233 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fifo_credit[fifo] += credits;
fws              1234 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->fifo_credit[fifo] > fws->init_fifo_credit[fifo])
fws              1235 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fifo_credit[fifo] = fws->init_fifo_credit[fifo];
fws              1239 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_schedule_deq(struct brcmf_fws_info *fws)
fws              1242 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if ((fws->fifo_credit_map & fws->fifo_delay_map) ||
fws              1243 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	    (!brcmf_fws_fc_active(fws) && fws->fifo_delay_map))
fws              1244 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		queue_work(fws->fws_wq, &fws->fws_dequeue_work);
fws              1247 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_enq(struct brcmf_fws_info *fws,
fws              1251 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_pub *drvr = fws->drvr;
fws              1253 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	u32 *qfull_stat = &fws->stats.delayq_full_error;
fws              1271 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		qfull_stat = &fws->stats.supprq_full_error;
fws              1326 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fifo_delay_map |= 1 << fifo;
fws              1327 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fifo_enqpkt[fifo]++;
fws              1336 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_tim_update(fws, entry, fifo, true);
fws              1337 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_flow_control_check(fws, &entry->psq,
fws              1342 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static struct sk_buff *brcmf_fws_deq(struct brcmf_fws_info *fws, int fifo)
fws              1353 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	table = (struct brcmf_fws_mac_descriptor *)&fws->desc;
fws              1354 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	num_nodes = sizeof(fws->desc) / sizeof(struct brcmf_fws_mac_descriptor);
fws              1355 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	node_pos = fws->deq_node_pos[fifo];
fws              1360 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		    brcmf_fws_macdesc_closed(fws, entry, fifo))
fws              1383 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->deq_node_pos[fifo] = (node_pos + i + 1) % num_nodes;
fws              1384 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_flow_control_check(fws, &entry->psq,
fws              1392 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_tim_update(fws, entry, fifo, false);
fws              1398 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fifo_enqpkt[fifo]--;
fws              1399 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (fws->fifo_enqpkt[fifo] == 0)
fws              1400 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_delay_map &= ~(1 << fifo);
fws              1409 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_txstatus_suppressed(struct brcmf_fws_info *fws, int fifo,
fws              1437 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	ret = brcmf_fws_enq(fws, BRCMF_FWS_SKBSTATE_SUPPRESSED, fifo, skb);
fws              1441 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_hanger_poppkt(&fws->hanger, hslot, &skb, true);
fws              1444 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_hanger_mark_suppressed(&fws->hanger, hslot);
fws              1451 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c brcmf_fws_txs_process(struct brcmf_fws_info *fws, u8 flags, u32 hslot,
fws              1454 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_pub *drvr = fws->drvr;
fws              1467 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.txs_discard += compcnt;
fws              1469 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.txs_supp_core += compcnt;
fws              1472 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.txs_supp_ps += compcnt;
fws              1475 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.txs_tossed += compcnt;
fws              1477 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.txs_host_tossed += compcnt;
fws              1482 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		ret = brcmf_fws_hanger_poppkt(&fws->hanger, hslot, &skb,
fws              1505 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (fws->fcmode == BRCMF_FWS_FCMODE_IMPLIED_CREDIT ||
fws              1508 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_return_credits(fws, fifo, 1);
fws              1509 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_schedule_deq(fws);
fws              1513 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		ret = brcmf_proto_hdrpull(fws->drvr, false, skb, &ifp);
fws              1519 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			ret = brcmf_fws_txstatus_suppressed(fws, fifo, skb,
fws              1527 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (BRCMF_FWS_MODE_GET_REUSESEQ(fws->mode))
fws              1536 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_fifocreditback_indicate(struct brcmf_fws_info *fws,
fws              1541 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->fcmode != BRCMF_FWS_FCMODE_EXPLICIT_CREDIT) {
fws              1547 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1549 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_return_credits(fws, i, data[i]);
fws              1551 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_dbg(DATA, "map: credit %x delay %x\n", fws->fifo_credit_map,
fws              1552 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		  fws->fifo_delay_map);
fws              1553 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1557 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_txstatus_indicate(struct brcmf_fws_info *fws, u8 type,
fws              1575 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (BRCMF_FWS_MODE_GET_REUSESEQ(fws->mode)) {
fws              1588 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->stats.txs_indicate += compcnt;
fws              1590 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1591 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_txs_process(fws, flags, hslot, genbit, seq, compcnt);
fws              1592 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1596 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_dbg_seqnum_check(struct brcmf_fws_info *fws, u8 *data)
fws              1611 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(drvr);
fws              1620 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->creditmap_received = true;
fws              1623 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              1624 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	for (i = 0; i < ARRAY_SIZE(fws->fifo_credit); i++) {
fws              1625 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fifo_credit[i] += credits[i] - fws->init_fifo_credit[i];
fws              1626 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->init_fifo_credit[i] = credits[i];
fws              1627 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (fws->fifo_credit[i] > 0)
fws              1628 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_credit_map |= 1 << i;
fws              1630 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_credit_map &= ~(1 << i);
fws              1631 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		WARN_ONCE(fws->fifo_credit[i] < 0,
fws              1633 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			  fws->fifo_credit[i]);
fws              1635 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_schedule_deq(fws);
fws              1636 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              1644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(ifp->drvr);
fws              1646 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws) {
fws              1647 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_lock(fws);
fws              1648 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->bcmc_credit_check = true;
fws              1649 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_unlock(fws);
fws              1854 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(ifp->drvr);
fws              1871 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if ((!fws) || (!fws->fw_signals)) {
fws              1876 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->stats.header_pulls++;
fws              1898 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			  brcmf_fws_get_tlv_len(fws, type));
fws              1904 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (len < brcmf_fws_get_tlv_len(fws, type))
fws              1915 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_macdesc_indicate(fws, type, data);
fws              1919 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			err = brcmf_fws_macdesc_state_indicate(fws, type, data);
fws              1923 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			err = brcmf_fws_interface_state_indicate(fws, type,
fws              1928 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			err = brcmf_fws_request_indicate(fws, type, data);
fws              1932 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_txstatus_indicate(fws, type, data);
fws              1935 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			err = brcmf_fws_fifocreditback_indicate(fws, data);
fws              1938 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_rssi_indicate(fws, *data);
fws              1941 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_dbg_seqnum_check(fws, data);
fws              1946 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.tlv_invalid_type++;
fws              1956 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.tlv_parse_failed++;
fws              1959 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_schedule_deq(fws);
fws              1969 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.header_only_pkt++;
fws              1972 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static u8 brcmf_fws_precommit_skb(struct brcmf_fws_info *fws, int fifo,
fws              1990 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	return brcmf_fws_hdrpush(fws, p);
fws              1993 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static void brcmf_fws_rollback_toq(struct brcmf_fws_info *fws,
fws              1996 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_pub *drvr = fws->drvr;
fws              2019 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.rollback_failed++;
fws              2021 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_txs_process(fws, BRCMF_FWS_TXSTATUS_HOST_TOSSED,
fws              2024 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.rollback_success++;
fws              2025 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_return_credits(fws, fifo, 1);
fws              2030 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_borrow_credit(struct brcmf_fws_info *fws)
fws              2034 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (time_after(fws->borrow_defer_timestamp, jiffies)) {
fws              2035 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fifo_credit_map &= ~(1 << BRCMF_FWS_FIFO_AC_BE);
fws              2040 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (fws->fifo_credit[lender_ac] > 0) {
fws              2041 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->credits_borrowed[lender_ac]++;
fws              2042 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_credit[lender_ac]--;
fws              2043 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			if (fws->fifo_credit[lender_ac] == 0)
fws              2044 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				fws->fifo_credit_map &= ~(1 << lender_ac);
fws              2045 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_credit_map |= (1 << BRCMF_FWS_FIFO_AC_BE);
fws              2050 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fifo_credit_map &= ~(1 << BRCMF_FWS_FIFO_AC_BE);
fws              2054 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_commit_skb(struct brcmf_fws_info *fws, int fifo,
fws              2067 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	data_offset = brcmf_fws_precommit_skb(fws, fifo, skb);
fws              2072 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2073 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	rc = brcmf_proto_txdata(fws->drvr, ifidx, data_offset, skb);
fws              2074 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2081 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		(void)brcmf_proto_hdrpull(fws->drvr, false, skb, NULL);
fws              2085 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->stats.pkt2bus++;
fws              2086 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->stats.send_pkts[fifo]++;
fws              2088 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.requested_sent[fifo]++;
fws              2093 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_rollback_toq(fws, skb, fifo);
fws              2097 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c static int brcmf_fws_assign_htod(struct brcmf_fws_info *fws, struct sk_buff *p,
fws              2105 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	hslot = brcmf_fws_hanger_get_free_slot(&fws->hanger);
fws              2109 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	rc = brcmf_fws_hanger_pushpkt(&fws->hanger, p, hslot);
fws              2113 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->stats.generic_error++;
fws              2120 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(drvr);
fws              2136 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2138 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->borrow_defer_timestamp = jiffies +
fws              2141 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	skcb->mac = brcmf_fws_macdesc_find(fws, ifp, eh->h_dest);
fws              2144 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (!brcmf_fws_assign_htod(fws, skb, fifo)) {
fws              2145 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_enq(fws, BRCMF_FWS_SKBSTATE_DELAYED, fifo, skb);
fws              2146 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		brcmf_fws_schedule_deq(fws);
fws              2152 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2170 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(ifp->drvr);
fws              2173 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (!ifp->ndev || !brcmf_fws_queue_skbs(fws))
fws              2176 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	entry = &fws->desc.iface[ifp->ifidx];
fws              2179 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_macdesc_set_name(fws, entry);
fws              2188 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(ifp->drvr);
fws              2193 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2196 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_macdesc_cleanup(fws, &fws->desc.iface[ifp->ifidx],
fws              2199 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_cleanup(fws, ifp->ifidx);
fws              2200 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2205 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws;
fws              2213 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws = container_of(worker, struct brcmf_fws_info, fws_dequeue_work);
fws              2214 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	drvr = fws->drvr;
fws              2216 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2217 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	for (fifo = BRCMF_FWS_FIFO_BCMC; fifo >= 0 && !fws->bus_flow_blocked;
fws              2219 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		if (!brcmf_fws_fc_active(fws)) {
fws              2220 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			while ((skb = brcmf_fws_deq(fws, fifo)) != NULL) {
fws              2223 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				brcmf_fws_hanger_poppkt(&fws->hanger, hslot,
fws              2228 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				brcmf_fws_unlock(fws);
fws              2230 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				brcmf_fws_lock(fws);
fws              2235 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				if (fws->bus_flow_blocked)
fws              2240 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		while ((fws->fifo_credit[fifo] > 0) ||
fws              2241 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		       ((!fws->bcmc_credit_check) &&
fws              2243 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			skb = brcmf_fws_deq(fws, fifo);
fws              2246 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->fifo_credit[fifo]--;
fws              2247 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			if (brcmf_fws_commit_skb(fws, fifo, skb))
fws              2249 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			if (fws->bus_flow_blocked)
fws              2253 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		    (fws->fifo_credit[fifo] <= 0) &&
fws              2254 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		    (!fws->bus_flow_blocked)) {
fws              2255 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			while (brcmf_fws_borrow_credit(fws) == 0) {
fws              2256 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				skb = brcmf_fws_deq(fws, fifo);
fws              2258 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 					brcmf_fws_return_credits(fws, fifo, 1);
fws              2261 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				if (brcmf_fws_commit_skb(fws, fifo, skb))
fws              2263 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				if (fws->bus_flow_blocked)
fws              2268 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2342 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws;
fws              2348 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws = kzalloc(sizeof(*fws), GFP_KERNEL);
fws              2349 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (!fws) {
fws              2354 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	spin_lock_init(&fws->spinlock);
fws              2357 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->drvr = drvr;
fws              2358 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fcmode = drvr->settings->fcmode;
fws              2361 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	    (fws->fcmode == BRCMF_FWS_FCMODE_NONE)) {
fws              2362 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->avoid_queueing = true;
fws              2364 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		return fws;
fws              2367 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fws_wq = create_singlethread_workqueue("brcmf_fws_wq");
fws              2368 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->fws_wq == NULL) {
fws              2373 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	INIT_WORK(&fws->fws_dequeue_work, brcmf_fws_dequeue_worker);
fws              2376 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->fcmode != BRCMF_FWS_FCMODE_NONE)
fws              2400 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	fws->fw_signals = true;
fws              2404 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fcmode = BRCMF_FWS_FCMODE_NONE;
fws              2405 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->fw_signals = false;
fws              2418 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 				BRCMF_FWS_MODE_SET_REUSESEQ(fws->mode, 1);
fws              2423 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_hanger_init(&fws->hanger);
fws              2424 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_macdesc_init(&fws->desc.other, NULL, 0);
fws              2425 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_macdesc_set_name(fws, &fws->desc.other);
fws              2426 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_dbg(INFO, "added %s\n", fws->desc.other.name);
fws              2427 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmu_pktq_init(&fws->desc.other.psq, BRCMF_FWS_PSQ_PREC_COUNT,
fws              2431 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		  fws->fw_signals ? "enabled" : "disabled", tlv);
fws              2432 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	return fws;
fws              2435 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_detach(fws);
fws              2439 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c void brcmf_fws_detach(struct brcmf_fws_info *fws)
fws              2441 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (!fws)
fws              2444 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->fws_wq)
fws              2445 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		destroy_workqueue(fws->fws_wq);
fws              2448 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2449 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_cleanup(fws, -1);
fws              2450 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2453 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	kfree(fws);
fws              2463 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c bool brcmf_fws_queue_skbs(struct brcmf_fws_info *fws)
fws              2465 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	return !fws->avoid_queueing;
fws              2468 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c bool brcmf_fws_fc_active(struct brcmf_fws_info *fws)
fws              2470 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (!fws->creditmap_received)
fws              2473 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	return fws->fcmode != BRCMF_FWS_FCMODE_NONE;
fws              2476 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c void brcmf_fws_bustxfail(struct brcmf_fws_info *fws, struct sk_buff *skb)
fws              2484 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_lock(fws);
fws              2486 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_txs_process(fws, BRCMF_FWS_TXSTATUS_HOST_TOSSED, hslot, 0, 0,
fws              2488 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	brcmf_fws_unlock(fws);
fws              2493 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	struct brcmf_fws_info *fws = drvr_to_fws(drvr);
fws              2497 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 	if (fws->avoid_queueing) {
fws              2506 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 		fws->bus_flow_blocked = flow_blocked;
fws              2508 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			brcmf_fws_schedule_deq(fws);
fws              2510 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c 			fws->stats.bus_flow_block++;
fws                10 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.h void brcmf_fws_detach(struct brcmf_fws_info *fws);
fws                12 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.h bool brcmf_fws_queue_skbs(struct brcmf_fws_info *fws);
fws                13 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.h bool brcmf_fws_fc_active(struct brcmf_fws_info *fws);
fws                20 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.h void brcmf_fws_bustxfail(struct brcmf_fws_info *fws, struct sk_buff *skb);