Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2c443443 authored by John W. Linville's avatar John W. Linville
Browse files

Merge branch 'for-john' of git://git.sipsolutions.net/mac80211-next

parents 5ea27696 371a255e
Loading
Loading
Loading
Loading
+4 −6
Original line number Original line Diff line number Diff line
@@ -678,8 +678,7 @@ static bool mac80211_hwsim_tx_frame_no_nl(struct ieee80211_hw *hw,
			continue;
			continue;


		if (data2->idle || !data2->started ||
		if (data2->idle || !data2->started ||
		    !hwsim_ps_rx_ok(data2, skb) ||
		    !hwsim_ps_rx_ok(data2, skb) || !data2->channel ||
		    !data->channel || !data2->channel ||
		    data->channel->center_freq != data2->channel->center_freq ||
		    data->channel->center_freq != data2->channel->center_freq ||
		    !(data->group & data2->group))
		    !(data->group & data2->group))
			continue;
			continue;
@@ -1486,7 +1485,7 @@ static int hwsim_tx_info_frame_received_nl(struct sk_buff *skb_2,
	struct mac80211_hwsim_data *data2;
	struct mac80211_hwsim_data *data2;
	struct ieee80211_tx_info *txi;
	struct ieee80211_tx_info *txi;
	struct hwsim_tx_rate *tx_attempts;
	struct hwsim_tx_rate *tx_attempts;
	struct sk_buff __user *ret_skb;
	unsigned long ret_skb_ptr;
	struct sk_buff *skb, *tmp;
	struct sk_buff *skb, *tmp;
	struct mac_address *src;
	struct mac_address *src;
	unsigned int hwsim_flags;
	unsigned int hwsim_flags;
@@ -1504,8 +1503,7 @@ static int hwsim_tx_info_frame_received_nl(struct sk_buff *skb_2,
				   info->attrs[HWSIM_ATTR_ADDR_TRANSMITTER]);
				   info->attrs[HWSIM_ATTR_ADDR_TRANSMITTER]);
	hwsim_flags = nla_get_u32(info->attrs[HWSIM_ATTR_FLAGS]);
	hwsim_flags = nla_get_u32(info->attrs[HWSIM_ATTR_FLAGS]);


	ret_skb = (struct sk_buff __user *)
	ret_skb_ptr = nla_get_u64(info->attrs[HWSIM_ATTR_COOKIE]);
		  (unsigned long) nla_get_u64(info->attrs[HWSIM_ATTR_COOKIE]);


	data2 = get_hwsim_data_ref_from_addr(src);
	data2 = get_hwsim_data_ref_from_addr(src);


@@ -1514,7 +1512,7 @@ static int hwsim_tx_info_frame_received_nl(struct sk_buff *skb_2,


	/* look for the skb matching the cookie passed back from user */
	/* look for the skb matching the cookie passed back from user */
	skb_queue_walk_safe(&data2->pending, skb, tmp) {
	skb_queue_walk_safe(&data2->pending, skb, tmp) {
		if (skb == ret_skb) {
		if ((unsigned long)skb == ret_skb_ptr) {
			skb_unlink(skb, &data2->pending);
			skb_unlink(skb, &data2->pending);
			found = true;
			found = true;
			break;
			break;
+2 −0
Original line number Original line Diff line number Diff line
@@ -1633,6 +1633,8 @@ enum ieee80211_sa_query_action {
#define WLAN_OUI_TYPE_WFA_P2P		9
#define WLAN_OUI_TYPE_WFA_P2P		9
#define WLAN_OUI_MICROSOFT		0x0050f2
#define WLAN_OUI_MICROSOFT		0x0050f2
#define WLAN_OUI_TYPE_MICROSOFT_WPA	1
#define WLAN_OUI_TYPE_MICROSOFT_WPA	1
#define WLAN_OUI_TYPE_MICROSOFT_WMM	2
#define WLAN_OUI_TYPE_MICROSOFT_WPS	4


/*
/*
 * WMM/802.11e Tspec Element
 * WMM/802.11e Tspec Element
+6 −0
Original line number Original line Diff line number Diff line
@@ -1542,6 +1542,9 @@ enum nl80211_attrs {


#define NL80211_MIN_REMAIN_ON_CHANNEL_TIME	10
#define NL80211_MIN_REMAIN_ON_CHANNEL_TIME	10


/* default RSSI threshold for scan results if none specified. */
#define NL80211_SCAN_RSSI_THOLD_OFF		-300

/**
/**
 * enum nl80211_iftype - (virtual) interface types
 * enum nl80211_iftype - (virtual) interface types
 *
 *
@@ -1974,6 +1977,8 @@ enum nl80211_reg_rule_attr {
 * @__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID: attribute number 0 is reserved
 * @__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID: attribute number 0 is reserved
 * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching,
 * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching,
 * only report BSS with matching SSID.
 * only report BSS with matching SSID.
 * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI: RSSI threshold (in dBm) for reporting a
 *	BSS in scan results. Filtering is turned off if not specified.
 * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
 * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
 *	attribute number currently defined
 *	attribute number currently defined
 * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
 * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
@@ -1982,6 +1987,7 @@ enum nl80211_sched_scan_match_attr {
	__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID,
	__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID,


	NL80211_SCHED_SCAN_MATCH_ATTR_SSID,
	NL80211_SCHED_SCAN_MATCH_ATTR_SSID,
	NL80211_SCHED_SCAN_MATCH_ATTR_RSSI,


	/* keep last */
	/* keep last */
	__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
	__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
+2 −0
Original line number Original line Diff line number Diff line
@@ -1027,6 +1027,7 @@ struct cfg80211_match_set {
 * @wiphy: the wiphy this was for
 * @wiphy: the wiphy this was for
 * @dev: the interface
 * @dev: the interface
 * @channels: channels to scan
 * @channels: channels to scan
 * @rssi_thold: don't report scan results below this threshold (in s32 dBm)
 */
 */
struct cfg80211_sched_scan_request {
struct cfg80211_sched_scan_request {
	struct cfg80211_ssid *ssids;
	struct cfg80211_ssid *ssids;
@@ -1037,6 +1038,7 @@ struct cfg80211_sched_scan_request {
	size_t ie_len;
	size_t ie_len;
	struct cfg80211_match_set *match_sets;
	struct cfg80211_match_set *match_sets;
	int n_match_sets;
	int n_match_sets;
	s32 rssi_thold;


	/* internal */
	/* internal */
	struct wiphy *wiphy;
	struct wiphy *wiphy;
+5 −24
Original line number Original line Diff line number Diff line
@@ -2254,6 +2254,9 @@ enum ieee80211_rate_control_changed {
 * @get_et_strings:  Ethtool API to get a set of strings to describe stats
 * @get_et_strings:  Ethtool API to get a set of strings to describe stats
 *	and perhaps other supported types of ethtool data-sets.
 *	and perhaps other supported types of ethtool data-sets.
 *
 *
 * @get_rssi: Get current signal strength in dBm, the function is optional
 *	and can sleep.
 *
 */
 */
struct ieee80211_ops {
struct ieee80211_ops {
	void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb);
	void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb);
@@ -2393,6 +2396,8 @@ struct ieee80211_ops {
	void	(*get_et_strings)(struct ieee80211_hw *hw,
	void	(*get_et_strings)(struct ieee80211_hw *hw,
				  struct ieee80211_vif *vif,
				  struct ieee80211_vif *vif,
				  u32 sset, u8 *data);
				  u32 sset, u8 *data);
	int	(*get_rssi)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
			    struct ieee80211_sta *sta, s8 *rssi_dbm);
};
};


/**
/**
@@ -3843,28 +3848,4 @@ int ieee80211_add_ext_srates_ie(struct ieee80211_vif *vif,
 */
 */
int ieee80211_ave_rssi(struct ieee80211_vif *vif);
int ieee80211_ave_rssi(struct ieee80211_vif *vif);


/* Extra debugging macros */

#ifdef CONFIG_MAC80211_HT_DEBUG
#define ht_vdbg(fmt, ...)			\
	pr_debug(fmt, ##__VA_ARGS__)
#else
#define ht_vdbg(fmt, ...)			\
do {						\
	if (0)					\
		pr_debug(fmt, ##__VA_ARGS__);	\
} while (0)
#endif

#ifdef CONFIG_MAC80211_IBSS_DEBUG
#define ibss_vdbg(fmt, ...)			\
	pr_debug(fmt, ##__VA_ARGS__)
#else
#define ibss_vdbg(fmt, ...)			\
do {						\
	if (0)					\
		pr_debug(fmt, ##__VA_ARGS__);	\
} while (0)
#endif

#endif /* MAC80211_H */
#endif /* MAC80211_H */
Loading