diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2019-03-27 15:28:17 -0700 |
|---|---|---|
| committer | Linux Build Service Account <lnxbuild@localhost> | 2019-03-27 15:28:17 -0700 |
| commit | 8b7ebc655e9aba812a022342dd32371bdf1978e0 (patch) | |
| tree | a233eb369d678f712044d4b04b75e7836d880ece /include | |
| parent | 8d4a9db1aa0122f8b6d98feab7afa39985c0e909 (diff) | |
| parent | e764712fd7f6db7921dc4b3dbbf772d613177633 (diff) | |
Merge e764712fd7f6db7921dc4b3dbbf772d613177633 on remote branch
Change-Id: I03b1216b62a2aa102ac28b3bd04d51663a2e928b
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/qdsp6v2/apr.h | 12 | ||||
| -rw-r--r-- | include/net/cfg80211.h | 44 | ||||
| -rw-r--r-- | include/uapi/linux/nl80211.h | 6 |
3 files changed, 62 insertions, 0 deletions
diff --git a/include/linux/qdsp6v2/apr.h b/include/linux/qdsp6v2/apr.h index 31c552b8da07..e7e2a53a70d7 100644 --- a/include/linux/qdsp6v2/apr.h +++ b/include/linux/qdsp6v2/apr.h @@ -196,6 +196,18 @@ int apr_set_q6_state(enum apr_subsys_state state); void apr_set_subsys_state(void); const char *apr_get_lpass_subsys_name(void); uint16_t apr_get_reset_domain(uint16_t proc); +#ifdef CONFIG_MSM_QDSP6_APRV2_VM +static inline int apr_start_rx_rt(void *handle) +{ + return 0; +} + +static inline int apr_end_rx_rt(void *handle) +{ + return 0; +} +#else int apr_start_rx_rt(void *handle); int apr_end_rx_rt(void *handle); #endif +#endif diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 18aff0c86724..1265820a3802 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -30,6 +30,9 @@ /* Indicate backport support for external authentication in AP mode */ #define CFG80211_EXTERNAL_AUTH_AP_SUPPORT 1 +/* Indicate backport support for DH IE creation/update*/ +#define CFG80211_EXTERNAL_DH_UPDATE_SUPPORT 1 + /** * DOC: Introduction * @@ -2444,6 +2447,31 @@ struct cfg80211_external_auth_params { }; /** + * struct cfg80211_update_owe_info - OWE Information + * + * This structure provides information needed for the drivers to offload OWE + * (Oppurtunistic Wireless Encryption) processing to the user space. + * + * Commonly used across update_owe request and event interfaces. + * + * @bssid: BSSID of the peer from which the OWE processing has to be done. + * @status: status code, %WLAN_STATUS_SUCCESS for successful OWE info + * processing, use %WLAN_STATUS_UNSPECIFIED_FAILURE if user space + * cannot give you the real status code for failures. Used only for + * OWE update response command interface (user space to driver). + * @ie: IE's obtained from the peer or constructed by the user space. These are + * the IE's of the remote peer in the event from the host driver and + * the constructed IE's by the user space in the request interface. + * @ie_len: Length of IE's in octets. + */ +struct cfg80211_update_owe_info { + u8 bssid[ETH_ALEN] __aligned(2); + u16 status; + const u8 *ie; + size_t ie_len; +}; + +/** * struct cfg80211_ops - backend description for wireless configuration * * This struct is registered by fullmac card drivers and/or wireless stacks @@ -2741,6 +2769,10 @@ struct cfg80211_external_auth_params { * * @external_auth: indicates result of offloaded authentication processing from * user space + * + * @update_owe_info: Provide updated OWE info to driver. Driver implementing SME + * but offloading the OWE processing to the user space will get the updated + * DH IE's (from the IE's) obtained through this interface. */ struct cfg80211_ops { int (*suspend)(struct wiphy *wiphy, struct cfg80211_wowlan *wow); @@ -3012,6 +3044,8 @@ struct cfg80211_ops { const u8 *addr); int (*external_auth)(struct wiphy *wiphy, struct net_device *dev, struct cfg80211_external_auth_params *params); + int (*update_owe_info)(struct wiphy *wiphy, struct net_device *dev, + struct cfg80211_update_owe_info *owe_info); }; /* @@ -5896,4 +5930,14 @@ int cfg80211_external_auth_request(struct net_device *netdev, #define wiphy_WARN(wiphy, format, args...) \ WARN(1, "wiphy: %s\n" format, wiphy_name(wiphy), ##args); +/** + * cfg80211_update_owe_info_event - Notify the peer's OWE info to user space + * @netdev: network device + * @owe_info: peer's owe info + * @gfp: allocation flags + */ +void cfg80211_update_owe_info_event(struct net_device *netdev, + struct cfg80211_update_owe_info *owe_info, + gfp_t gfp); + #endif /* __NET_CFG80211_H */ diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index 0527b779f2f0..9ac3946a916f 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h @@ -990,6 +990,11 @@ * indicated by %NL80211_ATTR_WIPHY_FREQ and other attributes * determining the width and type. * + * @NL80211_CMD_UPDATE_OWE_INFO: This interface allows the host driver to + * offload OWE processing to user space. This intends to support + * OWE/Enhanced Open AKM by the host drivers that implemnt SME but rely + * on the user space for the crypotographic/DH IE processing. + * * @NL80211_CMD_MAX: highest used command number * @__NL80211_CMD_AFTER_LAST: internal use */ @@ -1210,6 +1215,7 @@ enum nl80211_commands { NL80211_CMD_NOTIFY_RADAR, + NL80211_CMD_UPDATE_OWE_INFO, /* add new commands above here */ /* used to define NL80211_CMD_MAX below */ |
