Search Linux Wireless

Re: [PATCH v3 6/7] mac80211: add ap channel switch command/event

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 10, 2012 at 2:25 PM, Johannes Berg
<johannes@xxxxxxxxxxxxxxxx> wrote:
>
>> +static int
>> +ieee80211_ap_process_chanswitch(struct wiphy *wiphy,
>> +                             struct net_device *dev,
>> +                             struct ieee80211_ap_ch_switch *ap_ch_switch)
>> +{
>> +     struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
>> +     struct ieee80211_local *local = sdata->local;
>> +
>> +     if (!local->ops->channel_switch)
>> +             return -EOPNOTSUPP;
>> +
>> +     if (!ap_ch_switch || !ap_ch_switch->channel)
>> +             return -EINVAL;
>> +
>> +     drv_ap_channel_switch(local, ap_ch_switch);
>> +     return 0;
>
> errors are not possible?
>

driver is not allowed to fail here.

>> +void ieee80211_ap_ch_switch_done(struct ieee80211_vif *vif,
>> +                              struct ieee80211_channel *new_channel,
>> +                              enum nl80211_channel_type type)
>> +{
>> +     struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
>> +     struct ieee80211_local *local = sdata->local;
>> +
>> +     if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_AP))
>> +             return;
>> +
>> +     /* update the device channel directly */
>> +     mutex_lock(&local->mtx);
>> +     local->oper_channel = local->hw.conf.channel = new_channel;
>> +     local->_oper_channel_type = type;
>> +     mutex_unlock(&local->mtx);
>> +
>> +     cfg80211_ch_switch_notify(sdata->dev, new_channel->center_freq, type);
>> +     trace_api_ap_ch_switch_done(sdata, new_channel->center_freq);
>
> tracing last seems very strange
>

will reorder.

-- 
Thanks,
Victor.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux