On Saturday 22 January 2011 04:32:02 Sujith wrote: > Sujith wrote: > > Sujith wrote: > > > What about hardware that doesn't report any kind of TX status information at all ? > > > Currently, there is no way to determine whether the frame has actually gone out, > > > all that can be known is that it was pushed to the target. > > > > Am curious how carl9170 gets the TX status ? > > Is there a separate endpoint ? > > I looked a bit into carl9170 and it looks like the TX status > is obtained as incoming data through the CMD endpoint, am I correct ? yes and no ;). The tx status is obtained from the (RX-) DATA [stream/] endpoint. The (USB?) CMD endpoint is only being used for fatal 0xc6 watchdog events [which are generated by the bootloader]. > And the cookie is used to match the status information with the approporiate > packet ? The driver also gets the used ac queue index from the tx feedback message. So it knows in which tx_status queue it has to look, but that's only a minor detail. > Though for ath9k_htc this would mean changes in both the host and FW, > the host has to queue up packets in some kind of queue and process them > on reception of status interrupts. The FW has to be changed to actually > deliver the TX status information. :) You only have to have a sane tx status if the IEEE80211_TX_CTL_REQ_TX_STATUS flag is set. In all other cases, the IEEE80211_TX_STAT_ACK handling is *optional*. In fact if you don't set the TX_STAT_ACK flag, mac80211 will automatically do the right thing when it sees that a STA has become "temporarily" unavailable. > It does make it a bit neat to have such a mechanism. And for AP mode, > I would think that it's kinda essential unless someone comes with an > ingenious way of solving the PS race for drivers that don't set > IEEE80211_HW_REPORTS_TX_ACK_STATUS. :-) Sure, IEEE80211_HW_REPORTS_TX_ACK_STATUS would be the way to go. Especially because IEEE80211_HW_PS_NULLFUNC_STACK also benefits from it. Best regards, Chr -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html