procd: fix wrap around bug in logread time handling code
[openwrt/svn-archive/archive.git] / package / mac80211 / patches / 868-brcmsmac-write-beacon-period-to-hardware.patch
1 --- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
2 +++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
3 @@ -5553,10 +5553,20 @@ static void brcms_c_time_unlock(struct b
4
5 int brcms_c_set_beacon_period(struct brcms_c_info *wlc, u16 period)
6 {
7 + u32 bcnint_us;
8 +
9 if (period == 0)
10 return -EINVAL;
11
12 wlc->default_bss->beacon_period = period;
13 +
14 + bcnint_us = period << 10;
15 + brcms_c_time_lock(wlc);
16 + bcma_write32(wlc->hw->d11core, D11REGOFFS(tsf_cfprep),
17 + (bcnint_us << CFPREP_CBI_SHIFT));
18 + bcma_write32(wlc->hw->d11core, D11REGOFFS(tsf_cfpstart), bcnint_us);
19 + brcms_c_time_unlock(wlc);
20 +
21 return 0;
22 }
23