On Mon, Feb 6, 2012 at 11:45 PM, Gertjan van Wingerde <gwingerde@xxxxxxxxx> wrote: > This brings the rt2800 channel switching code for RT3572 closer to the > v2.5.0.0 Ralink RT3572 driver. > > Signed-off-by: Gertjan van Wingerde <gwingerde@xxxxxxxxx> Acked-by: Ivo van Doorn <IvDoorn@xxxxxxxxx> > diff --git a/drivers/net/wireless/rt2x00/rt2800.h b/drivers/net/wireless/rt2x00/rt2800.h > index 7c05dee..8aabd0d 100644 > --- a/drivers/net/wireless/rt2x00/rt2800.h > +++ b/drivers/net/wireless/rt2x00/rt2800.h > @@ -2444,6 +2444,8 @@ struct mac_iveiv_entry { > struct rt2800_drv_data { > u8 calibration_bw20; > u8 calibration_bw40; > + u8 bbp25; > + u8 bbp26; > }; > > #endif /* RT2800_H */ > diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c > index fad0e77..cb841f4 100644 > --- a/drivers/net/wireless/rt2x00/rt2800lib.c > +++ b/drivers/net/wireless/rt2x00/rt2800lib.c > @@ -1754,8 +1754,8 @@ static void rt2800_config_channel_rf3052(struct rt2x00_dev *rt2x00dev, > u32 reg; > > if (rf->channel <= 14) { > - rt2800_bbp_write(rt2x00dev, 25, 0x15); > - rt2800_bbp_write(rt2x00dev, 26, 0x85); > + rt2800_bbp_write(rt2x00dev, 25, drv_data->bbp25); > + rt2800_bbp_write(rt2x00dev, 26, drv_data->bbp26); > } else { > rt2800_bbp_write(rt2x00dev, 25, 0x09); > rt2800_bbp_write(rt2x00dev, 26, 0xff); > @@ -3623,6 +3623,12 @@ static int rt2800_init_rfcsr(struct rt2x00_dev *rt2x00dev) > rt2800_init_rx_filter(rt2x00dev, true, 0x27, 0x15); > } > > + /* > + * Save BBP 25 & 26 values for later use in channel switching > + */ > + rt2800_bbp_read(rt2x00dev, 25, &drv_data->bbp25); > + rt2800_bbp_read(rt2x00dev, 26, &drv_data->bbp26); > + > if (!rt2x00_rt(rt2x00dev, RT5390)) { > /* > * Set back to initial state > -- > 1.7.9 > -- 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