* [PATCH 0/2] staging: rtl8192e: Use standard api to calculate frequency <-> channel @ 2023-06-08 6:52 Philipp Hortmann 2023-06-08 6:52 ` [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel Philipp Hortmann 2023-06-08 6:52 ` [PATCH 2/2] staging: rtl8192e: Use standard api to calculate channel to frequency Philipp Hortmann 0 siblings, 2 replies; 5+ messages in thread From: Philipp Hortmann @ 2023-06-08 6:52 UTC (permalink / raw) To: Greg Kroah-Hartman, linux-staging, linux-kernel Use standard api to calculate frequency to channel and channel to frequency. Usage of cfg80211 is required to merge driver into wireless subsystem. --- Tested with rtl8192e (WLL6130-D99) Transferred this patch over wlan connection of rtl8192e Philipp Hortmann (2): staging: rtl8192e: Use standard api to calculate frequency to channel staging: rtl8192e: Use standard api to calculate channel to frequency drivers/staging/rtl8192e/rtl8192e/rtl_wx.c | 6 ++++-- drivers/staging/rtl8192e/rtllib.h | 2 -- drivers/staging/rtl8192e/rtllib_softmac_wx.c | 22 +++----------------- 3 files changed, 7 insertions(+), 23 deletions(-) -- 2.40.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel 2023-06-08 6:52 [PATCH 0/2] staging: rtl8192e: Use standard api to calculate frequency <-> channel Philipp Hortmann @ 2023-06-08 6:52 ` Philipp Hortmann 2023-06-15 10:46 ` Greg Kroah-Hartman 2023-06-08 6:52 ` [PATCH 2/2] staging: rtl8192e: Use standard api to calculate channel to frequency Philipp Hortmann 1 sibling, 1 reply; 5+ messages in thread From: Philipp Hortmann @ 2023-06-08 6:52 UTC (permalink / raw) To: Greg Kroah-Hartman, linux-staging, linux-kernel Use ieee80211_freq_khz_to_channel() to calculate frequency to channel to omit proprietary code. Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> --- Tested this code with separate debug code as this part is usually unused. --- drivers/staging/rtl8192e/rtllib_softmac_wx.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/drivers/staging/rtl8192e/rtllib_softmac_wx.c b/drivers/staging/rtl8192e/rtllib_softmac_wx.c index 78a70e5f1974..6fd2e94d5f8a 100644 --- a/drivers/staging/rtl8192e/rtllib_softmac_wx.c +++ b/drivers/staging/rtl8192e/rtllib_softmac_wx.c @@ -42,15 +42,8 @@ int rtllib_wx_set_freq(struct rtllib_device *ieee, struct iw_request_info *a, if (fwrq->e == 1) { if ((fwrq->m >= (int)2.412e8 && fwrq->m <= (int)2.487e8)) { - int f = fwrq->m / 100000; - int c = 0; - - while ((c < 14) && (f != rtllib_wlan_frequencies[c])) - c++; - - /* hack to fall through */ + fwrq->m = ieee80211_freq_khz_to_channel(fwrq->m / 100); fwrq->e = 0; - fwrq->m = c + 1; } } -- 2.40.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel 2023-06-08 6:52 ` [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel Philipp Hortmann @ 2023-06-15 10:46 ` Greg Kroah-Hartman 2023-06-15 10:47 ` Greg Kroah-Hartman 0 siblings, 1 reply; 5+ messages in thread From: Greg Kroah-Hartman @ 2023-06-15 10:46 UTC (permalink / raw) To: Philipp Hortmann; +Cc: linux-staging, linux-kernel On Thu, Jun 08, 2023 at 08:52:18AM +0200, Philipp Hortmann wrote: > Use ieee80211_freq_khz_to_channel() to calculate frequency to channel to > omit proprietary code. > > Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> > --- > Tested this code with separate debug code as this part is usually unused. > --- > drivers/staging/rtl8192e/rtllib_softmac_wx.c | 9 +-------- > 1 file changed, 1 insertion(+), 8 deletions(-) > > diff --git a/drivers/staging/rtl8192e/rtllib_softmac_wx.c b/drivers/staging/rtl8192e/rtllib_softmac_wx.c > index 78a70e5f1974..6fd2e94d5f8a 100644 > --- a/drivers/staging/rtl8192e/rtllib_softmac_wx.c > +++ b/drivers/staging/rtl8192e/rtllib_softmac_wx.c > @@ -42,15 +42,8 @@ int rtllib_wx_set_freq(struct rtllib_device *ieee, struct iw_request_info *a, > if (fwrq->e == 1) { > if ((fwrq->m >= (int)2.412e8 && > fwrq->m <= (int)2.487e8)) { > - int f = fwrq->m / 100000; > - int c = 0; > - > - while ((c < 14) && (f != rtllib_wlan_frequencies[c])) > - c++; > - > - /* hack to fall through */ > + fwrq->m = ieee80211_freq_khz_to_channel(fwrq->m / 100); > fwrq->e = 0; > - fwrq->m = c + 1; > } > } > > -- > 2.40.1 > > Does not apply to my tree for some reason, can you rebase and resubmit? thanks, greg k-h ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel 2023-06-15 10:46 ` Greg Kroah-Hartman @ 2023-06-15 10:47 ` Greg Kroah-Hartman 0 siblings, 0 replies; 5+ messages in thread From: Greg Kroah-Hartman @ 2023-06-15 10:47 UTC (permalink / raw) To: Philipp Hortmann; +Cc: linux-staging, linux-kernel On Thu, Jun 15, 2023 at 12:46:05PM +0200, Greg Kroah-Hartman wrote: > On Thu, Jun 08, 2023 at 08:52:18AM +0200, Philipp Hortmann wrote: > > Use ieee80211_freq_khz_to_channel() to calculate frequency to channel to > > omit proprietary code. > > > > Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> > > --- > > Tested this code with separate debug code as this part is usually unused. > > --- > > drivers/staging/rtl8192e/rtllib_softmac_wx.c | 9 +-------- > > 1 file changed, 1 insertion(+), 8 deletions(-) > > > > diff --git a/drivers/staging/rtl8192e/rtllib_softmac_wx.c b/drivers/staging/rtl8192e/rtllib_softmac_wx.c > > index 78a70e5f1974..6fd2e94d5f8a 100644 > > --- a/drivers/staging/rtl8192e/rtllib_softmac_wx.c > > +++ b/drivers/staging/rtl8192e/rtllib_softmac_wx.c > > @@ -42,15 +42,8 @@ int rtllib_wx_set_freq(struct rtllib_device *ieee, struct iw_request_info *a, > > if (fwrq->e == 1) { > > if ((fwrq->m >= (int)2.412e8 && > > fwrq->m <= (int)2.487e8)) { > > - int f = fwrq->m / 100000; > > - int c = 0; > > - > > - while ((c < 14) && (f != rtllib_wlan_frequencies[c])) > > - c++; > > - > > - /* hack to fall through */ > > + fwrq->m = ieee80211_freq_khz_to_channel(fwrq->m / 100); > > fwrq->e = 0; > > - fwrq->m = c + 1; > > } > > } > > > > -- > > 2.40.1 > > > > > > Does not apply to my tree for some reason, can you rebase and resubmit? Nevermind, my fault, all is good now. greg k-h ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/2] staging: rtl8192e: Use standard api to calculate channel to frequency 2023-06-08 6:52 [PATCH 0/2] staging: rtl8192e: Use standard api to calculate frequency <-> channel Philipp Hortmann 2023-06-08 6:52 ` [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel Philipp Hortmann @ 2023-06-08 6:52 ` Philipp Hortmann 1 sibling, 0 replies; 5+ messages in thread From: Philipp Hortmann @ 2023-06-08 6:52 UTC (permalink / raw) To: Greg Kroah-Hartman, linux-staging, linux-kernel Use ieee80211_channel_to_freq_khz() to calculate channel to frequency to omit proprietary code. Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> --- drivers/staging/rtl8192e/rtl8192e/rtl_wx.c | 6 ++++-- drivers/staging/rtl8192e/rtllib.h | 2 -- drivers/staging/rtl8192e/rtllib_softmac_wx.c | 13 ++----------- 3 files changed, 6 insertions(+), 15 deletions(-) diff --git a/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c b/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c index 8b656980ee25..3346c4d72c3e 100644 --- a/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c +++ b/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c @@ -342,9 +342,11 @@ static int _rtl92e_wx_get_range(struct net_device *dev, for (i = 0, val = 0; i < 14; i++) { if ((priv->rtllib->active_channel_map)[i + 1]) { + s32 freq_khz; + range->freq[val].i = i + 1; - range->freq[val].m = rtllib_wlan_frequencies[i] * - 100000; + freq_khz = ieee80211_channel_to_freq_khz(i + 1, NL80211_BAND_2GHZ); + range->freq[val].m = freq_khz * 100; range->freq[val].e = 1; val++; } diff --git a/drivers/staging/rtl8192e/rtllib.h b/drivers/staging/rtl8192e/rtllib.h index cdd7fdc5befe..87e9169214f6 100644 --- a/drivers/staging/rtl8192e/rtllib.h +++ b/drivers/staging/rtl8192e/rtllib.h @@ -2049,8 +2049,6 @@ void TsStartAddBaProcess(struct rtllib_device *ieee, void RemovePeerTS(struct rtllib_device *ieee, u8 *Addr); void RemoveAllTS(struct rtllib_device *ieee); -extern const long rtllib_wlan_frequencies[]; - static inline const char *escape_essid(const char *essid, u8 essid_len) { static char escaped[IW_ESSID_MAX_SIZE * 2 + 1]; diff --git a/drivers/staging/rtl8192e/rtllib_softmac_wx.c b/drivers/staging/rtl8192e/rtllib_softmac_wx.c index 6fd2e94d5f8a..d6d90e6ba2d3 100644 --- a/drivers/staging/rtl8192e/rtllib_softmac_wx.c +++ b/drivers/staging/rtl8192e/rtllib_softmac_wx.c @@ -15,15 +15,6 @@ #include "rtllib.h" #include "dot11d.h" -/* FIXME: add A freqs */ - -const long rtllib_wlan_frequencies[] = { - 2412, 2417, 2422, 2427, - 2432, 2437, 2442, 2447, - 2452, 2457, 2462, 2467, - 2472, 2484 -}; -EXPORT_SYMBOL(rtllib_wlan_frequencies); int rtllib_wx_set_freq(struct rtllib_device *ieee, struct iw_request_info *a, union iwreq_data *wrqu, char *b) @@ -83,8 +74,8 @@ int rtllib_wx_get_freq(struct rtllib_device *ieee, if (ieee->current_network.channel == 0) return -1; - fwrq->m = rtllib_wlan_frequencies[ieee->current_network.channel - 1] * - 100000; + fwrq->m = ieee80211_channel_to_freq_khz(ieee->current_network.channel, + NL80211_BAND_2GHZ) * 100; fwrq->e = 1; return 0; } -- 2.40.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-06-15 10:47 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-06-08 6:52 [PATCH 0/2] staging: rtl8192e: Use standard api to calculate frequency <-> channel Philipp Hortmann 2023-06-08 6:52 ` [PATCH 1/2] staging: rtl8192e: Use standard api to calculate frequency to channel Philipp Hortmann 2023-06-15 10:46 ` Greg Kroah-Hartman 2023-06-15 10:47 ` Greg Kroah-Hartman 2023-06-08 6:52 ` [PATCH 2/2] staging: rtl8192e: Use standard api to calculate channel to frequency Philipp Hortmann
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.