mac80211.h (6b4cac814e32f3b307720d6b880939fb1f21f3ac) mac80211.h (51b461b3db33b7cd7cbc62c9206568321f7298ad)
1/*-
2 * Copyright (c) 2020-2021 The FreeBSD Foundation
1/*-
2 * Copyright (c) 2020-2021 The FreeBSD Foundation
3 * Copyright (c) 2020-2021 Bjoern A. Zeeb
3 * Copyright (c) 2020-2022 Bjoern A. Zeeb
4 *
5 * This software was developed by Björn Zeeb under sponsorship from
6 * the FreeBSD Foundation.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright

--- 78 unchanged lines hidden (view full) ---

90 BSS_CHANGED_FTM_RESPONDER = BIT(11),
91 BSS_CHANGED_HT = BIT(12),
92 BSS_CHANGED_IDLE = BIT(13),
93 BSS_CHANGED_MU_GROUPS = BIT(14),
94 BSS_CHANGED_P2P_PS = BIT(15),
95 BSS_CHANGED_PS = BIT(16),
96 BSS_CHANGED_QOS = BIT(17),
97 BSS_CHANGED_TXPOWER = BIT(18),
4 *
5 * This software was developed by Björn Zeeb under sponsorship from
6 * the FreeBSD Foundation.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright

--- 78 unchanged lines hidden (view full) ---

90 BSS_CHANGED_FTM_RESPONDER = BIT(11),
91 BSS_CHANGED_HT = BIT(12),
92 BSS_CHANGED_IDLE = BIT(13),
93 BSS_CHANGED_MU_GROUPS = BIT(14),
94 BSS_CHANGED_P2P_PS = BIT(15),
95 BSS_CHANGED_PS = BIT(16),
96 BSS_CHANGED_QOS = BIT(17),
97 BSS_CHANGED_TXPOWER = BIT(18),
98 BSS_CHANGED_HE_BSS_COLOR = BIT(19),
98};
99
100/* 802.11 Figure 9-256 Suite selector format. [OUI(3), SUITE TYPE(1)] */
101#define WLAN_CIPHER_SUITE_OUI(_oui, _x) ((_oui) << 8 | (_x) & 0xff)
102
103/* 802.11 Table 9-131 Cipher suite selectors. */
104/* 802.1x suite B 11 */
105#define WLAN_CIPHER_SUITE(_x) WLAN_CIPHER_SUITE_OUI(0x000fac, _x)

--- 346 unchanged lines hidden (view full) ---

452 u16 freq;
453 u8 bw;
454#define RATE_INFO_BW_20 0x01
455#define RATE_INFO_BW_40 0x02
456#define RATE_INFO_BW_80 0x04
457#define RATE_INFO_BW_160 0x08
458#define RATE_INFO_BW_HE_RU 0x10
459 u8 encoding;
99};
100
101/* 802.11 Figure 9-256 Suite selector format. [OUI(3), SUITE TYPE(1)] */
102#define WLAN_CIPHER_SUITE_OUI(_oui, _x) ((_oui) << 8 | (_x) & 0xff)
103
104/* 802.11 Table 9-131 Cipher suite selectors. */
105/* 802.1x suite B 11 */
106#define WLAN_CIPHER_SUITE(_x) WLAN_CIPHER_SUITE_OUI(0x000fac, _x)

--- 346 unchanged lines hidden (view full) ---

453 u16 freq;
454 u8 bw;
455#define RATE_INFO_BW_20 0x01
456#define RATE_INFO_BW_40 0x02
457#define RATE_INFO_BW_80 0x04
458#define RATE_INFO_BW_160 0x08
459#define RATE_INFO_BW_HE_RU 0x10
460 u8 encoding;
461#define RX_ENC_LEGACY 0x00
460#define RX_ENC_HE 0x01
461#define RX_ENC_HT 0x02
462#define RX_ENC_VHT 0x04
463 u8 ampdu_reference;
464 u8 band;
465 u8 chains;
466 u8 chain_signal[3];
467 u8 signal;

--- 309 unchanged lines hidden (view full) ---

777 int (*start_pmsr)(struct ieee80211_hw *, struct ieee80211_vif *, struct cfg80211_pmsr_request *);
778 void (*abort_pmsr)(struct ieee80211_hw *, struct ieee80211_vif *, struct cfg80211_pmsr_request *);
779
780 int (*start_ap)(struct ieee80211_hw *, struct ieee80211_vif *);
781 void (*stop_ap)(struct ieee80211_hw *, struct ieee80211_vif *);
782 int (*join_ibss)(struct ieee80211_hw *, struct ieee80211_vif *);
783 void (*leave_ibss)(struct ieee80211_hw *, struct ieee80211_vif *);
784
462#define RX_ENC_HE 0x01
463#define RX_ENC_HT 0x02
464#define RX_ENC_VHT 0x04
465 u8 ampdu_reference;
466 u8 band;
467 u8 chains;
468 u8 chain_signal[3];
469 u8 signal;

--- 309 unchanged lines hidden (view full) ---

779 int (*start_pmsr)(struct ieee80211_hw *, struct ieee80211_vif *, struct cfg80211_pmsr_request *);
780 void (*abort_pmsr)(struct ieee80211_hw *, struct ieee80211_vif *, struct cfg80211_pmsr_request *);
781
782 int (*start_ap)(struct ieee80211_hw *, struct ieee80211_vif *);
783 void (*stop_ap)(struct ieee80211_hw *, struct ieee80211_vif *);
784 int (*join_ibss)(struct ieee80211_hw *, struct ieee80211_vif *);
785 void (*leave_ibss)(struct ieee80211_hw *, struct ieee80211_vif *);
786
787 int (*set_sar_specs)(struct ieee80211_hw *, const struct cfg80211_sar_specs *);
788
785 /* XXX TODO: get_et_sset_count, get_et_stats, get_et_strings */
786};
787
788
789/* -------------------------------------------------------------------------- */
790
791/* linux_80211.c */
792extern const struct cfg80211_ops linuxkpi_mac80211cfgops;

--- 1032 unchanged lines hidden (view full) ---

1825
1826static __inline void
1827ieee80211_tx_status_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb)
1828{
1829 IMPROVE();
1830 ieee80211_tx_status(hw, skb);
1831}
1832
789 /* XXX TODO: get_et_sset_count, get_et_stats, get_et_strings */
790};
791
792
793/* -------------------------------------------------------------------------- */
794
795/* linux_80211.c */
796extern const struct cfg80211_ops linuxkpi_mac80211cfgops;

--- 1032 unchanged lines hidden (view full) ---

1829
1830static __inline void
1831ieee80211_tx_status_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb)
1832{
1833 IMPROVE();
1834 ieee80211_tx_status(hw, skb);
1835}
1836
1837static __inline void
1838ieee80211_tx_status_ni(struct ieee80211_hw *hw, struct sk_buff *skb)
1839{
1840 IMPROVE();
1841 ieee80211_tx_status(hw, skb);
1842}
1843
1833static __inline int
1834ieee80211_start_tx_ba_session(struct ieee80211_sta *sta, uint8_t tid, int x)
1835{
1836 TODO();
1837 return (ENXIO);
1838}
1839
1840static __inline void

--- 126 unchanged lines hidden (view full) ---

1967
1968static __inline void
1969ieee80211_txq_schedule_start(struct ieee80211_hw *hw, uint32_t ac)
1970{
1971 TODO();
1972}
1973
1974static __inline void
1844static __inline int
1845ieee80211_start_tx_ba_session(struct ieee80211_sta *sta, uint8_t tid, int x)
1846{
1847 TODO();
1848 return (ENXIO);
1849}
1850
1851static __inline void

--- 126 unchanged lines hidden (view full) ---

1978
1979static __inline void
1980ieee80211_txq_schedule_start(struct ieee80211_hw *hw, uint32_t ac)
1981{
1982 TODO();
1983}
1984
1985static __inline void
1986ieee80211_schedule_txq(struct ieee80211_hw *hw, struct ieee80211_txq *txq)
1987{
1988 TODO();
1989}
1990
1991static __inline void
1975ieee80211_beacon_set_cntdwn(struct ieee80211_vif *vif, u8 counter)
1976{
1977 TODO();
1978}
1979
1980static __inline int
1981ieee80211_beacon_update_cntdwn(struct ieee80211_vif *vif)
1982{

--- 46 unchanged lines hidden ---
1992ieee80211_beacon_set_cntdwn(struct ieee80211_vif *vif, u8 counter)
1993{
1994 TODO();
1995}
1996
1997static __inline int
1998ieee80211_beacon_update_cntdwn(struct ieee80211_vif *vif)
1999{

--- 46 unchanged lines hidden ---