Lines Matching refs:seq
152 struct mt76x02_dfs_sequence *seq) in mt76x02_dfs_seq_pool_put() argument
156 list_add(&seq->head, &dfs_pd->seq_pool); in mt76x02_dfs_seq_pool_put()
166 struct mt76x02_dfs_sequence *seq; in mt76x02_dfs_seq_pool_get() local
169 seq = devm_kzalloc(dev->mt76.dev, sizeof(*seq), GFP_ATOMIC); in mt76x02_dfs_seq_pool_get()
171 seq = list_first_entry(&dfs_pd->seq_pool, in mt76x02_dfs_seq_pool_get()
174 list_del(&seq->head); in mt76x02_dfs_seq_pool_get()
177 if (seq) in mt76x02_dfs_seq_pool_get()
180 return seq; in mt76x02_dfs_seq_pool_get()
208 struct mt76x02_dfs_sequence *seq, *tmp_seq; in mt76x02_dfs_detector_reset() local
220 list_for_each_entry_safe(seq, tmp_seq, &dfs_pd->sequences, head) { in mt76x02_dfs_detector_reset()
221 list_del_init(&seq->head); in mt76x02_dfs_detector_reset()
222 mt76x02_dfs_seq_pool_put(dev, seq); in mt76x02_dfs_detector_reset()
433 struct mt76x02_dfs_sequence seq, *seq_p; in mt76x02_dfs_create_sequence() local
478 seq.pri = event->ts - cur_event->ts; in mt76x02_dfs_create_sequence()
479 seq.first_ts = cur_event->ts; in mt76x02_dfs_create_sequence()
480 seq.last_ts = event->ts; in mt76x02_dfs_create_sequence()
481 seq.engine = event->engine; in mt76x02_dfs_create_sequence()
482 seq.count = 2; in mt76x02_dfs_create_sequence()
488 factor = mt76x02_dfs_get_multiple(cur_pri, seq.pri, in mt76x02_dfs_create_sequence()
491 seq.first_ts = cur_event->ts; in mt76x02_dfs_create_sequence()
492 seq.count++; in mt76x02_dfs_create_sequence()
497 if (seq.count <= cur_len) in mt76x02_dfs_create_sequence()
504 *seq_p = seq; in mt76x02_dfs_create_sequence()
518 struct mt76x02_dfs_sequence *seq, *tmp_seq; in mt76x02_dfs_add_event_to_sequence() local
523 list_for_each_entry_safe(seq, tmp_seq, &dfs_pd->sequences, head) { in mt76x02_dfs_add_event_to_sequence()
524 if (event->ts > seq->first_ts + MT_DFS_SEQUENCE_WINDOW) { in mt76x02_dfs_add_event_to_sequence()
525 list_del_init(&seq->head); in mt76x02_dfs_add_event_to_sequence()
526 mt76x02_dfs_seq_pool_put(dev, seq); in mt76x02_dfs_add_event_to_sequence()
530 if (event->engine != seq->engine) in mt76x02_dfs_add_event_to_sequence()
533 pri = event->ts - seq->last_ts; in mt76x02_dfs_add_event_to_sequence()
534 factor = mt76x02_dfs_get_multiple(pri, seq->pri, in mt76x02_dfs_add_event_to_sequence()
537 seq->last_ts = event->ts; in mt76x02_dfs_add_event_to_sequence()
538 seq->count++; in mt76x02_dfs_add_event_to_sequence()
539 max_seq_len = max_t(u16, max_seq_len, seq->count); in mt76x02_dfs_add_event_to_sequence()
548 struct mt76x02_dfs_sequence *seq; in mt76x02_dfs_check_detection() local
553 list_for_each_entry(seq, &dfs_pd->sequences, head) { in mt76x02_dfs_check_detection()
554 if (seq->count > MT_DFS_SEQUENCE_TH) { in mt76x02_dfs_check_detection()
555 dfs_pd->stats[seq->engine].sw_pattern++; in mt76x02_dfs_check_detection()