title: How to learn the structure of Linux wireless drivers (mac80211)?
body: <p>There is so many structures in the Linux wireless driver mac80211. Things like <code>struct net_device</code>, <code>struct ieee80211_hw</code>, <code>struct ieee80211_vif</code> and <code>struct ieee80211_local</code> and so on. So many structures that I don't understand what information they contain and when them were initialized. </p>
  
  <p>How can I learn about them and the whole architecture of wireless drivers?</p>