On Fri, 2016-07-01 at 10:19 +0900, Masashi Honma wrote:
> Previously, mesh power management functionality works only with
> kernel
> MPM. Because user space MPM did not report mesh peer AID to kernel,
> the kernel could not identify the bit in TIM element. So this patch
> adds mesh peer AID setting API.
> 
> Signed-off-by: Masashi Honma <[email protected]>
> ---
>  include/net/cfg80211.h       | 2 ++
>  include/uapi/linux/nl80211.h | 5 +++++
>  net/mac80211/cfg.c           | 1 +
>  net/wireless/nl80211.c       | 7 +++++++
>  4 files changed, 15 insertions(+)
> 
> diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
> index 7bbb00d..23e34ca 100644
> --- a/include/net/cfg80211.h
> +++ b/include/net/cfg80211.h
> @@ -774,6 +774,7 @@ enum station_parameters_apply_mask {
>   *   (bitmask of BIT(NL80211_STA_FLAG_...))
>   * @listen_interval: listen interval or -1 for no change
>   * @aid: AID or zero for no change
> + * @peer_aid: mesh peer AID or zero for no change
>   * @plink_action: plink action to take
>   * @plink_state: set the peer link state for a station
>   * @ht_capa: HT capabilities of station
> @@ -805,6 +806,7 @@ struct station_parameters {
>       u32 sta_modify_mask;
>       int listen_interval;
>       u16 aid;
> +     u16 peer_aid;
>       u8 supported_rates_len;
>       u8 plink_action;
>       u8 plink_state;
> diff --git a/include/uapi/linux/nl80211.h
> b/include/uapi/linux/nl80211.h
> index 53c8278..f8c454e 100644
> --- a/include/uapi/linux/nl80211.h
> +++ b/include/uapi/linux/nl80211.h
> @@ -1829,6 +1829,9 @@ enum nl80211_commands {
>   *   %NL80211_ATTR_EXT_CAPA_MASK, to specify the extended
> capabilities per
>   *   interface type.
>   *
> + * @NL80211_ATTR_MESH_PEER_AID: Association ID for the mesh peer
> (u16). This is
> + *   used to pull the stored data for mesh peer in power save
> state.
> 
Why does this need new API all over?

It seems to me that it could just use the regular NL80211_ATTR_STA_AID
attribute, and the cfg80211 code would already be in place, and you'd
just need to add a single line to mac80211 and
to cfg80211_check_station_change() to accept that.

johannes
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to