Search Linux Wireless

Re: [PATCH] wireless: Add channel/frequency conversions to ieee80211.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dave wrote:
Richard Farina wrote:
David Kilroy wrote:
Added mappings for FHSS, DSSS and OFDM channels - with macros to point
HR DSSS and ERP to the DSSS mappings. Currently just static inline
functions.

+/**
+ * ieee80211_ofdm_chan_to_freq - get channel center frequency
+ * @s_freq: starting frequency == (dotChannelStartingFactor/2) MHz
+ * @channel: the OFDM channel
+ *
+ * Convert IEEE802.11 OFDM channel to center frequency (MHz)
+ * Ref IEEE 802.11-2007 section 17.3.8.3.2
+ */
+static inline int ieee80211_ofdm_chan_to_freq(int s_freq, int channel)
+{
+	if ((channel > 0) && (channel <= 200) &&
+	    (s_freq >= 4000))
+		return s_freq + (channel * 5);
+	else
+		return -1;
+}

Any desire to make 184-196 work? These are the 4.9 GHz channels.

Do you see a reason why these channels wouldn't work with these
conversion routines? Or are you asking about corresponding driver support?

Channel 165 freq is 5825MHz
Channel 183 freq is 4915MHz

Since your method is linear and 183 is greater than 165, it will output a higher frequency for 183 than for 165 when converting from channel to freq.

Please feel free to correct me if I'm wrong, my coding skills are not very good (hence the reason I have included a patch). Considering none of the cards using this support 802.11a is doesn't seem to matter much, but the fact of the matter is I have had to correct this stuff in a driver or two and it would be nice if the drivers could pull this info from a single place instead of each driver doing the conversions (possibly wrongly) by themselves.
>From the ack I assume the latter. My main motivation is to put the
frequency conversions in a common place. In this case for old drivers
which only use the 2.4 GHz band. The 5GHz conversions are just for
completeness.

My request of supporting the 4.9 stuff is also only for completeness, there is nothing at all that should stop you from committing your code as is, no code I have seen accounts for proper conversion so your work is by no means sub-par.
If drivers don't currently support those channels, I suspect there's a
more significant issue to be addressed first.

No drivers support these channels at the moment AFAIK but I'd be happy to submit a patch that enables tuning if someone else could submit a patch to support half/quarter clocked channels. Japan is the only place in the world that supports the 4.9GHz realm unlicensed, and I've already been told that patches that enabled licensed only features will not be accepted so I have not bothered to submit support as I lack the skill to add support for half/quarter clock channels and hence it wouldn't be unlicensed.

Thanks,
Rick Farina
I checked this all out pretty specifically, seems to work well. As if anyone cares but:

ACKED-By: Rick Farina

Thanks for having a look.



Dave.


--
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux