This is an old revision of the document!
Location reporting
| Driver | HAL | Supported Hardware | 802.11n support | Debugging |
The AR9380 and later devices support a “time of flight” feature which can be used to estimate the distance between devices.
Overview
This is in note form for now!
* there's a separate location timer register and control register * the counter is fed from the mac clock, so 44MHz in 20MHz wide operation, and 88MHz in 40MHz operation * a specific bit is set for a TX frame, which causes the full packet exchange to be returned * right now the only way to get the location timestamp is to enable the location timer, which causes /all/ frames to be timestamped with the location timestamp - ie, the TX/RX descriptor timestamps are no longer TSF.
The normal way this happens is:
* fire off a TX frame with location_mode=1, not_sounding=0 * get an RX frame (ACK) with the more bit set * .. and the second frame in the set is the sounding data with the rate, timestamp, etc and the payload is the CSI.