• 大小: 0.56M
    文件类型: .pdf
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


mac80211开发手册 里面有各个模块的数据结构和关键函数及其描述
Table of contents I. The basic mac80211 driver 1. Basic hardware handling…………… struct ieee802llhw.… enum ieee68O21 hw_fags…....,..,.,……,….………..3 SET IEEE80211 DEV SET EEESOZII PERM ADDR 6 struct ieee 802l1_ops…… ieee80211 alloc hw ieee802Il_register_hw ++++ +++ II ieee802ll_ get_tx_ led name………………,……,…,…,…… 11 iee。8021 get Ix_ led name...............….……………………12 ieee80211_get_assoc_led_name …………13 ieee80211_get_radio_led_name 14 ieee80211_unregister_hw t,面面 14 ieee80211 free h 15 2. PhY configuration 17 struct ieee80211 conf 17 enum ieee80211 conf_ flags ∴18 Ⅴ irtual interfaces.. …20 struct ieee80211 if init conf struct ieee80211 if conf 21 4. Receive and transmit processing 41. what should be here 23 42. Frame format 4.3. Alignment issues…… 23 4.4. Calling into mac8O2 11 from interrupts……….……….….……….……23 4.5.ft / definitions∴ 24 5. Frame filtering 42 enum ieee8O21l_ filter_flags…… 42 I. advanced driver interface. 6. Hardware crypto acceleration .45 enum set key cmd struct ieee80211 key conf enum ieee8021Ikey_alg 48 enum leee8O21l_key_ flags…… 7. Multiple queues and Qos support.... ··‘·······‘·…····:···········4‘·· 51 struct ieee802ll_tx_queue_params 5I struct ieee802 11_tx_queue_ stats…….….….….……….….52 8. Access point mode support.... 53 ieee80211 get buffered bc... 53 ieee80211_beacon 9. Supporting multiple virtual interfaces 56 10. Hardware scan offload 57 80211 scan completed 57 II. Rate control interface mmmmmmmmmmmmommmmmmommmmmmmmm. 58 Il dummy chapter IV. Internals 60 12. Key handling 61 12. 1. Key handling basics 12.2. MORE TBD ∴61 13. Receive processing…… 62 14. Transmit processing…… 15. Station info handling...... 15.1. Programming information.…… .6 15.2. STA information lifetime rules 16. Synchronisation 由面由 72 I. The basic mac80211 driver interface You should read and understand the information contained within this part of the book while implementing a driver. In some chapters, advanced usage is noted, that may be skipped at fir This part of the book only covers station and monitor mode functionality, additional information required to implement the other modes is covered in the second part of the book Chapter 1. Basic hardware handling TBD This chapter shall contain information on getting a hw struct allocated and registered with mac80211 Since it is required to allocate rates/modes before registering a hw struct, this chapter shall also contain information on setting up the rate/mode structs Additionally, some discussion about the callbacks and the general programming model should be in here, including the definition of ieee80211 ops which will be referred to a lot Finally, a discussion of hardware capabilities should be done with references to other parts of the book struct ieee80211 hw LINUX Kernel Hackers ManualApril 2009 N alne struct ieee80211 hw- hardware information and state Synopsis struct ieee80211w struct ieee80211 conf con=i struct withy wiphyi struct workquee_struct workqueuei const char x rate__algorithm; roid privi 32 flags unsigned int extratx headroom int channel_ ge time int vif data size: int sta data size ul6 queues u16 ampduqueilesi u16 max_listen_intervali s8 max signal u8 max_ rates u8 max raLe tries Chapter 1. Basic hardware handling Members conf struct ieee80211 conf, device configuration don t use with y This points to the struct wiphy allocated for this 802.11 PHY. You must fill in the perm_ addr and dev members of this structure using SET_IEEE8021--DEV and SET_IEEE80211_PERM_ADDR Additionally, all supported bands(with channels, bitrates )are registered here workqueue single threaded workqueue available for driver use allocated by mac80211 on registration and hushed when an interface is removed rate_control_algorithm rate control algorithm for this hardw are. If unset ( NULL), the default algorithm will be used Must be set before calling ieee8021l_register_hw. orIV pointer to private area that was allocated for driver use along with this structure hardware flags, see enum ieee80211 hw flags extra tx headroom headroom to reserve in each transmit skb for use by the driver(e. g. for transmit headers. channel_change_time time(in microseconds) it takes to change channels vif data size size (in bytes )of the drv_priv data area within struct ieee80211_vif sta data size (in bytes)of the drv_priv data area within struct ieee80211_sta queues number of available hardware transmit queues for data packets. WMM/QoS requires at least four these queues need to have configurable access parameters apdu_queues number of available hardware transmit queues for A-MPdU packets, these have no access parameters because they're used only for A-MPDU frames. Note that mac80211 will not currently use any of the regular queues for aggregation Chapter 1. Basic hardware handling max listen interval max listen interval in units of beacon interval that HW supports max signal Maximum value for signal (rssi)in RX information, used only when IEee80211 HW SIGNAL UNSPeC or IEEE80211 HN SIGNAL DB nax rates maximum number of alternate rate retry stages max rate tries maximum number of tries for each stage Description This structure contains the configuration and hardware information for an 802. 11 PhY NOTICE All work performed on this workqueue should NEVer acquire the rtni lock (i.e. Dont use the function ieee80211_iterate_active_interfaces) enum ieee80211 hw flags LINUX Kernel Hackers ManualApril 2009 Name enum ieee80211 hw flags -hardware flags Synopsis num ieee80211_w_flags 工EEE80211HW_3Ⅹ INCLUDE S_FCS; IEEE80211_HN_HOST BROADCAST_ PS BUFFERING, IEEE80211HN-2GZ SHORT SLOT_INCAPABLE I 3 Chapter 1. Basic hardware handling EEE80211__HW__2GZ SHORT_ PREAMBLE__INCAPABLE I IEEE80211 HW SIGNAL UNSPEC 工EEE80211_H网_ SIGNAL_DB, 工EEE80211_H_ SIGNA⊥DBMr IEEE80211 HW NOISE DBM 工EEE80211HW_S3三 CTRUM MGMT IEEE80211_HN_ AMPDU AGGREGATION, IEEE80211 HW NO STACK DYNAMIC PS }; Constants IEEE802 11 HW RX INCLUDES FCS Indicates that received frames passed to the stack include the FCs at the end IEEE802 11 HW HOST BROADCAST PS BUFFERING Some wireless lan chipsets buffer broadcast/multicast frames for power saving stations in the hardware/firmware and others rely on the host system for such buffering. This option is used to configure the iEeE 802. Il upper layer to buffer broadcast and multicast frames when there are power saving stations so that the driver can fetch them with eee80211-_geL_buffered_bc. IEEE802 1 HW 2GHZ SHORT SLOT INCAPABLE Hardware is not capable of short slot operation on the 2. 4 GHz band IEEE80211 HW 2GHZ SHORT PREAMBLE INCAPABLE Hardware is not capable of receiving frames with short preamble on the 2.4 GHz band IEEE80211 HW SIGNAL UNSPEC Hardware can provide signal values but we dont know its units. We expect values between 0 and max_signal. If possible please provide dB or dBm instead IEEE80211 HW SIGNAL DB Hardware gives signal values in dB, decibel difference from an arbitrary, fixed reference. We expect values between O and max_signal. If possible please provide dBm instead IEEE802 11 HW SIGNAL DBM Hardware gives signal values in dBm, decibel difference from one milliwatt This is the preferred method since it is standardized between different devices max signa l does not need to be set IEEE80211 HW NOISE DBM Hardware can provide noise(radio interference)values in units dBm, decibel difference from one milliwatt Chapter 1. Basic hardware handling IEEE80211 HW SPECTRUM MGMT Hardware supports spectrum management defined in 802.1 Ih Measurement, Channel Switch Quieting, TPC IEEE80211 HW AMPDU AGGREGATION Hardware supports lIn A-MPdU aggregation IEEE80211 HW NO STACK DYNAMIC PS Hardware which has dynamic power save support, meaning that power save is enabled in idle periods, and don't need support from stack Description These flags are used to indicate hardware capabilities to the stack. Generally, flags here should have their meaning done in a way that the simplest hardware doesnt need setting any particular flags. There are some exceptions to this rule however, so you are advised to review these flags carefull SET EEE80211 DEV LINUX Kernel Hackers Manualapril 2009 Name SET IEEEBO211 DEV- set device for 802.1I hardware Synopsis roid sET IEEE80211 DEv (struct ieee80211 hw hw, struct device dev)i Arguments the struct ieee802 11 hw to set the device for

资源截图

代码片段和文件信息

评论

共有 条评论