Emmanuel Grumbach egrumbach@xxxxxxxxx On Sun, Jan 5, 2014 at 9:21 AM, Krishna Chaitanya <chaitanya.mgit@xxxxxxxxx> wrote: > On Sun, Jan 5, 2014 at 12:12 PM, Emmanuel Grumbach <egrumbach@xxxxxxxxx> wrote: >> >> On Sat, Jan 4, 2014 at 11:24 PM, Chaitanya T K <chaitanya.mgit@xxxxxxxxx> wrote: >> > The interface loop identifies the no of static and dynamic >> > smps chains, but overwrites their values across the VIF's >> > (assuming there are more than one, in my case its AP and STA >> > loopback), so the driver might not intimated about this update >> > of SMPS mode, is the value is same. >> > >> > So inform driver for every VIF. >> > >> > For Ex: STA's SMPS state is changed, but in the loop AP appears >> > at the last, SMPS state of AP is unchanged hence not intimated >> > to the driver. >> > >> > Signed-off-by: Chaitanya T K <chaitanya.mgit@xxxxxxxxx> >> > --- >> >> But the dynamic / static chains number is a property of the channel >> context. If you have several vifs on the same channel context, the >> maximum number of dynamic / static chains will be assigned to the >> channel context. In short, I think that mac80211 already does the job >> of taking all the parameters into account and putting the right value >> into the channel context? >> I don't really see what bug you are trying to solve - could you please >> tell us exactly what is your configuration? >> What SMPS do you have for each interface and what dynamic / static >> chains settings does mac80211 end up with? > > Agree this looks good in channel context angle. > > Lets say we have two VIF's one AP and one STA and the driver doesn't > support channel context's so in that case the config will happen > through hw_config but the problem is hw_config is out side the loop > so the config will happen with the parameters of the last VIF, which > is incorrect. Same applies if the driver doesn't support channel contexts. hw_config will be called with the correct local->smps_mode based on the number of channels required by each one of the vifs? I don't see why only the last vif will be taken into account: the loop computes the maximum number of antenna requires by *all* the vifs. What am I missing here? -- 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