Home | History | Annotate | Download | only in p2p

Lines Matching refs:intersection

40 	struct p2p_channels intersection;
76 p2p_channels_intersect(own, &dev->channels, &intersection);
77 p2p_dbg(p2p, "Own reg_classes %d peer reg_classes %d intersection reg_classes %d",
80 (int) intersection.reg_classes);
81 if (intersection.reg_classes == 0) {
327 * @intersection: Support channel list intersection from local and peer
336 struct p2p_channels *intersection)
346 p2p_channels_includes(intersection, op_reg_class, op_channel)) {
347 p2p_dbg(p2p, "Pick own channel preference (reg_class %u channel %u) from intersection",
357 p2p_channels_includes(intersection, op_reg_class, op_channel)) {
358 p2p_dbg(p2p, "Pick best overall channel (reg_class %u channel %u) from intersection",
368 !p2p_channels_includes(intersection, p2p->op_reg_class,
372 p2p_channels_includes(intersection, op_reg_class, op_channel)) {
373 p2p_dbg(p2p, "Pick best 5 GHz channel (reg_class %u channel %u) from intersection",
381 !p2p_channels_includes(intersection, p2p->op_reg_class,
385 p2p_channels_includes(intersection, op_reg_class, op_channel)) {
386 p2p_dbg(p2p, "Pick best 2.4 GHz channel (reg_class %u channel %u) from intersection",
395 if (p2p_channels_includes(intersection,
400 p2p_dbg(p2p, "Pick highest preferred channel (op_class %u channel %u) from intersection",
407 for (i = 0; i < intersection->reg_classes; i++) {
408 struct p2p_reg_class *c = &intersection->reg_class[i];
411 p2p_dbg(p2p, "Pick possible HT40 channel (reg_class %u channel %u) from intersection",
420 for (i = 0; i < intersection->reg_classes; i++) {
424 p2p_copy_reg_class(c, &intersection->reg_class[i]);
426 struct p2p_reg_class *c = &intersection->reg_class[i];
438 p2p_dbg(p2p, "Pick possible 5 GHz channel (op_class %u channel %u) from intersection",
447 * Try to see if the original channel is in the intersection. If
451 if (p2p_channels_includes(intersection, p2p->op_reg_class,
453 p2p_dbg(p2p, "Using original operating class and channel (op_class %u channel %u) from intersection",
459 * Fall back to whatever is included in the channel intersection since
462 cl = &intersection->reg_class[0];
463 p2p_dbg(p2p, "Pick another channel (reg_class %u channel %u) from intersection",
473 struct p2p_channels intersection;
476 p2p_channels_intersect(&p2p->channels, &dev->channels, &intersection);
477 if (intersection.reg_classes == 0 ||
478 intersection.reg_class[0].channels == 0) {
484 for (i = 0; i < intersection.reg_classes; i++) {
486 c = &intersection.reg_class[i];
492 if (!p2p_channels_includes(&intersection, p2p->op_reg_class,
502 p2p_reselect_channel(p2p, &intersection);
507 p2p_reselect_channel(p2p, &intersection);