On Wed, 2025-05-14 at 16:58 +0530, Raj Kumar Bhagat wrote: > > +int cfg80211_get_radio_idx_by_chan(struct wiphy *wiphy, > + const struct ieee80211_channel *chan) > +{ > + const struct wiphy_radio *radio; > + int i, j; > + u32 freq; > + > + if (!chan) > + return -EINVAL; > + > + freq = ieee80211_channel_to_khz(chan); > + for (i = 0; i < wiphy->n_radio; i++) { > + radio = &wiphy->radio[i]; > + for (j = 0; j < radio->n_freq_range; j++) { > + if (freq >= radio->freq_range[j].start_freq && > + freq <= radio->freq_range[j].end_freq) > + return i; > I believe we also discussed this in the past elsewhere, but I don't think the the >= and <= can simultaneously be wrong. If the frequency ranges for radios are adjacent, then the intervals here need to be half open. I _think_ it should be < instead of <=, and therefore a half-open interval of "[start, end[" (or "[start, end)" depending on your preferred notation.) johannes