On 11/01/2007 10:53 PM, Luis R. Rodriguez wrote: > ** Resending after checkpatch.pl.. > > This move the OFDM timings on ath5k_hw_reset() onto a helper, > ath5k_hw_write_ofdm_timings() to make code cleaner. > > Changes to ath5k.h, hw.c > Changes-licensed-under: ISC > > Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxx> > --- > drivers/net/wireless/ath5k/hw.c | 83 ++++++++++++++++++++++++++------------- > 1 files changed, 55 insertions(+), 28 deletions(-) > > diff --git a/drivers/net/wireless/ath5k/hw.c b/drivers/net/wireless/ath5k/hw.c > index 3f78d20..1b9c4f0 100644 > --- a/drivers/net/wireless/ath5k/hw.c > +++ b/drivers/net/wireless/ath5k/hw.c > @@ -458,6 +458,56 @@ void ath5k_hw_detach(struct ath5k_hw *ah) > */ > > /** > + * ath5k_hw_write_ofdm_timings - set OFDM timings on AR5212 > + * > + * @ah: the &struct ath5k_hw > + * @channel: the currently set channel upon reset > + * > + * Write the OFDM timings for the AR5212 upon reset. This is a helper for > + * ath5k_hw_reset(). This seems to tune the PLL a specified frequency > + * depending on the bandwidth of the channel. > + * > + */ > +static inline int ath5k_hw_write_ofdm_timings(struct ath5k_hw *ah, > + struct ieee80211_channel *channel) > +{ > + /* Get exponent and mantissa and set it */ > + u32 coef_scaled, coef_exp, coef_man, > + ds_coef_exp, ds_coef_man, clock; > + > + if (!(ah->ah_version == AR5K_AR5212) || > + !(channel->val & CHANNEL_OFDM)) > + BUG(); Note, that BUG can return (on configurations where !CONFIG_BUG). It is my fault writing you it won't, sorry! Could you post a patch which will add return from here and also from places where the BUG() is used in other places? > + > + /* Seems there are two PLLs, one for baseband sampling and one > + * for tuning. Tuning basebands are 40 MHz or 80MHz when in > + * turbo. */ > + clock = channel->val & CHANNEL_TURBO ? 80 : 40; > + coef_scaled = ((5 * (clock << 24)) / 2) / > + channel->freq; thanks, -- Jiri Slaby (jirislaby@xxxxxxxxx) Faculty of Informatics, Masaryk University - 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