Lines Matching refs:dev
90 void b43legacy_radio_lock(struct b43legacy_wldev *dev) in b43legacy_radio_lock() argument
94 status = b43legacy_read32(dev, B43legacy_MMIO_MACCTL); in b43legacy_radio_lock()
97 b43legacy_write32(dev, B43legacy_MMIO_MACCTL, status); in b43legacy_radio_lock()
102 void b43legacy_radio_unlock(struct b43legacy_wldev *dev) in b43legacy_radio_unlock() argument
106 b43legacy_read16(dev, B43legacy_MMIO_PHY_VER); /* dummy read */ in b43legacy_radio_unlock()
107 status = b43legacy_read32(dev, B43legacy_MMIO_MACCTL); in b43legacy_radio_unlock()
110 b43legacy_write32(dev, B43legacy_MMIO_MACCTL, status); in b43legacy_radio_unlock()
114 u16 b43legacy_radio_read16(struct b43legacy_wldev *dev, u16 offset) in b43legacy_radio_read16() argument
116 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_read16()
137 b43legacy_write16(dev, B43legacy_MMIO_RADIO_CONTROL, offset); in b43legacy_radio_read16()
138 return b43legacy_read16(dev, B43legacy_MMIO_RADIO_DATA_LOW); in b43legacy_radio_read16()
141 void b43legacy_radio_write16(struct b43legacy_wldev *dev, u16 offset, u16 val) in b43legacy_radio_write16() argument
143 b43legacy_write16(dev, B43legacy_MMIO_RADIO_CONTROL, offset); in b43legacy_radio_write16()
145 b43legacy_write16(dev, B43legacy_MMIO_RADIO_DATA_LOW, val); in b43legacy_radio_write16()
148 static void b43legacy_set_all_gains(struct b43legacy_wldev *dev, in b43legacy_set_all_gains() argument
151 struct b43legacy_phy *phy = &dev->phy; in b43legacy_set_all_gains()
165 b43legacy_ilt_write(dev, offset + i, first); in b43legacy_set_all_gains()
168 b43legacy_ilt_write(dev, offset + i, second); in b43legacy_set_all_gains()
172 b43legacy_phy_write(dev, 0x04A0, in b43legacy_set_all_gains()
173 (b43legacy_phy_read(dev, 0x04A0) & 0xBFBF) in b43legacy_set_all_gains()
175 b43legacy_phy_write(dev, 0x04A1, in b43legacy_set_all_gains()
176 (b43legacy_phy_read(dev, 0x04A1) & 0xBFBF) in b43legacy_set_all_gains()
178 b43legacy_phy_write(dev, 0x04A2, in b43legacy_set_all_gains()
179 (b43legacy_phy_read(dev, 0x04A2) & 0xBFBF) in b43legacy_set_all_gains()
182 b43legacy_dummy_transmission(dev); in b43legacy_set_all_gains()
185 static void b43legacy_set_original_gains(struct b43legacy_wldev *dev) in b43legacy_set_original_gains() argument
187 struct b43legacy_phy *phy = &dev->phy; in b43legacy_set_original_gains()
205 b43legacy_ilt_write(dev, offset + i, tmp); in b43legacy_set_original_gains()
209 b43legacy_ilt_write(dev, offset + i, i - start); in b43legacy_set_original_gains()
211 b43legacy_phy_write(dev, 0x04A0, in b43legacy_set_original_gains()
212 (b43legacy_phy_read(dev, 0x04A0) & 0xBFBF) in b43legacy_set_original_gains()
214 b43legacy_phy_write(dev, 0x04A1, in b43legacy_set_original_gains()
215 (b43legacy_phy_read(dev, 0x04A1) & 0xBFBF) in b43legacy_set_original_gains()
217 b43legacy_phy_write(dev, 0x04A2, in b43legacy_set_original_gains()
218 (b43legacy_phy_read(dev, 0x04A2) & 0xBFBF) in b43legacy_set_original_gains()
220 b43legacy_dummy_transmission(dev); in b43legacy_set_original_gains()
224 static void b43legacy_synth_pu_workaround(struct b43legacy_wldev *dev, in b43legacy_synth_pu_workaround() argument
227 struct b43legacy_phy *phy = &dev->phy; in b43legacy_synth_pu_workaround()
236 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL, in b43legacy_synth_pu_workaround()
239 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL, in b43legacy_synth_pu_workaround()
242 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL, in b43legacy_synth_pu_workaround()
246 u8 b43legacy_radio_aci_detect(struct b43legacy_wldev *dev, u8 channel) in b43legacy_radio_aci_detect() argument
248 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_aci_detect()
256 saved = b43legacy_phy_read(dev, 0x0403); in b43legacy_radio_aci_detect()
257 b43legacy_radio_selectchannel(dev, channel, 0); in b43legacy_radio_aci_detect()
258 b43legacy_phy_write(dev, 0x0403, (saved & 0xFFF8) | 5); in b43legacy_radio_aci_detect()
260 rssi = b43legacy_phy_read(dev, 0x048A) & 0x3F; in b43legacy_radio_aci_detect()
267 temp = (b43legacy_phy_read(dev, 0x047F) >> 8) & 0x3F; in b43legacy_radio_aci_detect()
275 b43legacy_phy_write(dev, 0x0403, saved); in b43legacy_radio_aci_detect()
280 u8 b43legacy_radio_aci_scan(struct b43legacy_wldev *dev) in b43legacy_radio_aci_scan() argument
282 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_aci_scan()
293 b43legacy_phy_lock(dev); in b43legacy_radio_aci_scan()
294 b43legacy_radio_lock(dev); in b43legacy_radio_aci_scan()
295 b43legacy_phy_write(dev, 0x0802, in b43legacy_radio_aci_scan()
296 b43legacy_phy_read(dev, 0x0802) & 0xFFFC); in b43legacy_radio_aci_scan()
297 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_aci_scan()
298 b43legacy_phy_read(dev, B43legacy_PHY_G_CRS) in b43legacy_radio_aci_scan()
300 b43legacy_set_all_gains(dev, 3, 8, 1); in b43legacy_radio_aci_scan()
307 ret[i-1] = b43legacy_radio_aci_detect(dev, i); in b43legacy_radio_aci_scan()
309 b43legacy_radio_selectchannel(dev, channel, 0); in b43legacy_radio_aci_scan()
310 b43legacy_phy_write(dev, 0x0802, in b43legacy_radio_aci_scan()
311 (b43legacy_phy_read(dev, 0x0802) & 0xFFFC) in b43legacy_radio_aci_scan()
313 b43legacy_phy_write(dev, 0x0403, in b43legacy_radio_aci_scan()
314 b43legacy_phy_read(dev, 0x0403) & 0xFFF8); in b43legacy_radio_aci_scan()
315 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_aci_scan()
316 b43legacy_phy_read(dev, B43legacy_PHY_G_CRS) in b43legacy_radio_aci_scan()
318 b43legacy_set_original_gains(dev); in b43legacy_radio_aci_scan()
326 b43legacy_radio_unlock(dev); in b43legacy_radio_aci_scan()
327 b43legacy_phy_unlock(dev); in b43legacy_radio_aci_scan()
333 void b43legacy_nrssi_hw_write(struct b43legacy_wldev *dev, u16 offset, s16 val) in b43legacy_nrssi_hw_write() argument
335 b43legacy_phy_write(dev, B43legacy_PHY_NRSSILT_CTRL, offset); in b43legacy_nrssi_hw_write()
337 b43legacy_phy_write(dev, B43legacy_PHY_NRSSILT_DATA, (u16)val); in b43legacy_nrssi_hw_write()
341 s16 b43legacy_nrssi_hw_read(struct b43legacy_wldev *dev, u16 offset) in b43legacy_nrssi_hw_read() argument
345 b43legacy_phy_write(dev, B43legacy_PHY_NRSSILT_CTRL, offset); in b43legacy_nrssi_hw_read()
346 val = b43legacy_phy_read(dev, B43legacy_PHY_NRSSILT_DATA); in b43legacy_nrssi_hw_read()
352 void b43legacy_nrssi_hw_update(struct b43legacy_wldev *dev, u16 val) in b43legacy_nrssi_hw_update() argument
358 tmp = b43legacy_nrssi_hw_read(dev, i); in b43legacy_nrssi_hw_update()
361 b43legacy_nrssi_hw_write(dev, i, tmp); in b43legacy_nrssi_hw_update()
366 void b43legacy_nrssi_mem_update(struct b43legacy_wldev *dev) in b43legacy_nrssi_mem_update() argument
368 struct b43legacy_phy *phy = &dev->phy; in b43legacy_nrssi_mem_update()
383 static void b43legacy_calc_nrssi_offset(struct b43legacy_wldev *dev) in b43legacy_calc_nrssi_offset() argument
385 struct b43legacy_phy *phy = &dev->phy; in b43legacy_calc_nrssi_offset()
391 backup[0] = b43legacy_phy_read(dev, 0x0001); in b43legacy_calc_nrssi_offset()
392 backup[1] = b43legacy_phy_read(dev, 0x0811); in b43legacy_calc_nrssi_offset()
393 backup[2] = b43legacy_phy_read(dev, 0x0812); in b43legacy_calc_nrssi_offset()
394 backup[3] = b43legacy_phy_read(dev, 0x0814); in b43legacy_calc_nrssi_offset()
395 backup[4] = b43legacy_phy_read(dev, 0x0815); in b43legacy_calc_nrssi_offset()
396 backup[5] = b43legacy_phy_read(dev, 0x005A); in b43legacy_calc_nrssi_offset()
397 backup[6] = b43legacy_phy_read(dev, 0x0059); in b43legacy_calc_nrssi_offset()
398 backup[7] = b43legacy_phy_read(dev, 0x0058); in b43legacy_calc_nrssi_offset()
399 backup[8] = b43legacy_phy_read(dev, 0x000A); in b43legacy_calc_nrssi_offset()
400 backup[9] = b43legacy_phy_read(dev, 0x0003); in b43legacy_calc_nrssi_offset()
401 backup[10] = b43legacy_radio_read16(dev, 0x007A); in b43legacy_calc_nrssi_offset()
402 backup[11] = b43legacy_radio_read16(dev, 0x0043); in b43legacy_calc_nrssi_offset()
404 b43legacy_phy_write(dev, 0x0429, in b43legacy_calc_nrssi_offset()
405 b43legacy_phy_read(dev, 0x0429) & 0x7FFF); in b43legacy_calc_nrssi_offset()
406 b43legacy_phy_write(dev, 0x0001, in b43legacy_calc_nrssi_offset()
407 (b43legacy_phy_read(dev, 0x0001) & 0x3FFF) in b43legacy_calc_nrssi_offset()
409 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_offset()
410 b43legacy_phy_read(dev, 0x0811) | 0x000C); in b43legacy_calc_nrssi_offset()
411 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_offset()
412 (b43legacy_phy_read(dev, 0x0812) & 0xFFF3) in b43legacy_calc_nrssi_offset()
414 b43legacy_phy_write(dev, 0x0802, in b43legacy_calc_nrssi_offset()
415 b43legacy_phy_read(dev, 0x0802) & ~(0x1 | 0x2)); in b43legacy_calc_nrssi_offset()
417 backup[12] = b43legacy_phy_read(dev, 0x002E); in b43legacy_calc_nrssi_offset()
418 backup[13] = b43legacy_phy_read(dev, 0x002F); in b43legacy_calc_nrssi_offset()
419 backup[14] = b43legacy_phy_read(dev, 0x080F); in b43legacy_calc_nrssi_offset()
420 backup[15] = b43legacy_phy_read(dev, 0x0810); in b43legacy_calc_nrssi_offset()
421 backup[16] = b43legacy_phy_read(dev, 0x0801); in b43legacy_calc_nrssi_offset()
422 backup[17] = b43legacy_phy_read(dev, 0x0060); in b43legacy_calc_nrssi_offset()
423 backup[18] = b43legacy_phy_read(dev, 0x0014); in b43legacy_calc_nrssi_offset()
424 backup[19] = b43legacy_phy_read(dev, 0x0478); in b43legacy_calc_nrssi_offset()
426 b43legacy_phy_write(dev, 0x002E, 0); in b43legacy_calc_nrssi_offset()
427 b43legacy_phy_write(dev, 0x002F, 0); in b43legacy_calc_nrssi_offset()
428 b43legacy_phy_write(dev, 0x080F, 0); in b43legacy_calc_nrssi_offset()
429 b43legacy_phy_write(dev, 0x0810, 0); in b43legacy_calc_nrssi_offset()
430 b43legacy_phy_write(dev, 0x0478, in b43legacy_calc_nrssi_offset()
431 b43legacy_phy_read(dev, 0x0478) | 0x0100); in b43legacy_calc_nrssi_offset()
432 b43legacy_phy_write(dev, 0x0801, in b43legacy_calc_nrssi_offset()
433 b43legacy_phy_read(dev, 0x0801) | 0x0040); in b43legacy_calc_nrssi_offset()
434 b43legacy_phy_write(dev, 0x0060, in b43legacy_calc_nrssi_offset()
435 b43legacy_phy_read(dev, 0x0060) | 0x0040); in b43legacy_calc_nrssi_offset()
436 b43legacy_phy_write(dev, 0x0014, in b43legacy_calc_nrssi_offset()
437 b43legacy_phy_read(dev, 0x0014) | 0x0200); in b43legacy_calc_nrssi_offset()
439 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_offset()
440 b43legacy_radio_read16(dev, 0x007A) | 0x0070); in b43legacy_calc_nrssi_offset()
441 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_offset()
442 b43legacy_radio_read16(dev, 0x007A) | 0x0080); in b43legacy_calc_nrssi_offset()
445 v47F = (s16)((b43legacy_phy_read(dev, 0x047F) >> 8) & 0x003F); in b43legacy_calc_nrssi_offset()
450 b43legacy_radio_write16(dev, 0x007B, i); in b43legacy_calc_nrssi_offset()
452 v47F = (s16)((b43legacy_phy_read(dev, 0x047F) >> 8) in b43legacy_calc_nrssi_offset()
462 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_offset()
463 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_offset()
465 b43legacy_phy_write(dev, 0x0814, in b43legacy_calc_nrssi_offset()
466 b43legacy_phy_read(dev, 0x0814) | 0x0001); in b43legacy_calc_nrssi_offset()
467 b43legacy_phy_write(dev, 0x0815, in b43legacy_calc_nrssi_offset()
468 b43legacy_phy_read(dev, 0x0815) & 0xFFFE); in b43legacy_calc_nrssi_offset()
469 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_offset()
470 b43legacy_phy_read(dev, 0x0811) | 0x000C); in b43legacy_calc_nrssi_offset()
471 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_offset()
472 b43legacy_phy_read(dev, 0x0812) | 0x000C); in b43legacy_calc_nrssi_offset()
473 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_offset()
474 b43legacy_phy_read(dev, 0x0811) | 0x0030); in b43legacy_calc_nrssi_offset()
475 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_offset()
476 b43legacy_phy_read(dev, 0x0812) | 0x0030); in b43legacy_calc_nrssi_offset()
477 b43legacy_phy_write(dev, 0x005A, 0x0480); in b43legacy_calc_nrssi_offset()
478 b43legacy_phy_write(dev, 0x0059, 0x0810); in b43legacy_calc_nrssi_offset()
479 b43legacy_phy_write(dev, 0x0058, 0x000D); in b43legacy_calc_nrssi_offset()
481 b43legacy_phy_write(dev, 0x0003, 0x0122); in b43legacy_calc_nrssi_offset()
483 b43legacy_phy_write(dev, 0x000A, in b43legacy_calc_nrssi_offset()
484 b43legacy_phy_read(dev, 0x000A) in b43legacy_calc_nrssi_offset()
486 b43legacy_phy_write(dev, 0x0814, in b43legacy_calc_nrssi_offset()
487 b43legacy_phy_read(dev, 0x0814) | 0x0004); in b43legacy_calc_nrssi_offset()
488 b43legacy_phy_write(dev, 0x0815, in b43legacy_calc_nrssi_offset()
489 b43legacy_phy_read(dev, 0x0815) & 0xFFFB); in b43legacy_calc_nrssi_offset()
490 b43legacy_phy_write(dev, 0x0003, in b43legacy_calc_nrssi_offset()
491 (b43legacy_phy_read(dev, 0x0003) & 0xFF9F) in b43legacy_calc_nrssi_offset()
493 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_offset()
494 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_offset()
496 b43legacy_set_all_gains(dev, 3, 0, 1); in b43legacy_calc_nrssi_offset()
497 b43legacy_radio_write16(dev, 0x0043, in b43legacy_calc_nrssi_offset()
498 (b43legacy_radio_read16(dev, 0x0043) in b43legacy_calc_nrssi_offset()
501 v47F = (s16)((b43legacy_phy_read(dev, 0x047F) >> 8) & 0x003F); in b43legacy_calc_nrssi_offset()
506 b43legacy_radio_write16(dev, 0x007B, i); in b43legacy_calc_nrssi_offset()
508 v47F = (s16)((b43legacy_phy_read(dev, 0x047F) >> in b43legacy_calc_nrssi_offset()
520 b43legacy_radio_write16(dev, 0x007B, saved); in b43legacy_calc_nrssi_offset()
523 b43legacy_phy_write(dev, 0x002E, backup[12]); in b43legacy_calc_nrssi_offset()
524 b43legacy_phy_write(dev, 0x002F, backup[13]); in b43legacy_calc_nrssi_offset()
525 b43legacy_phy_write(dev, 0x080F, backup[14]); in b43legacy_calc_nrssi_offset()
526 b43legacy_phy_write(dev, 0x0810, backup[15]); in b43legacy_calc_nrssi_offset()
528 b43legacy_phy_write(dev, 0x0814, backup[3]); in b43legacy_calc_nrssi_offset()
529 b43legacy_phy_write(dev, 0x0815, backup[4]); in b43legacy_calc_nrssi_offset()
530 b43legacy_phy_write(dev, 0x005A, backup[5]); in b43legacy_calc_nrssi_offset()
531 b43legacy_phy_write(dev, 0x0059, backup[6]); in b43legacy_calc_nrssi_offset()
532 b43legacy_phy_write(dev, 0x0058, backup[7]); in b43legacy_calc_nrssi_offset()
533 b43legacy_phy_write(dev, 0x000A, backup[8]); in b43legacy_calc_nrssi_offset()
534 b43legacy_phy_write(dev, 0x0003, backup[9]); in b43legacy_calc_nrssi_offset()
535 b43legacy_radio_write16(dev, 0x0043, backup[11]); in b43legacy_calc_nrssi_offset()
536 b43legacy_radio_write16(dev, 0x007A, backup[10]); in b43legacy_calc_nrssi_offset()
537 b43legacy_phy_write(dev, 0x0802, in b43legacy_calc_nrssi_offset()
538 b43legacy_phy_read(dev, 0x0802) | 0x1 | 0x2); in b43legacy_calc_nrssi_offset()
539 b43legacy_phy_write(dev, 0x0429, in b43legacy_calc_nrssi_offset()
540 b43legacy_phy_read(dev, 0x0429) | 0x8000); in b43legacy_calc_nrssi_offset()
541 b43legacy_set_original_gains(dev); in b43legacy_calc_nrssi_offset()
543 b43legacy_phy_write(dev, 0x0801, backup[16]); in b43legacy_calc_nrssi_offset()
544 b43legacy_phy_write(dev, 0x0060, backup[17]); in b43legacy_calc_nrssi_offset()
545 b43legacy_phy_write(dev, 0x0014, backup[18]); in b43legacy_calc_nrssi_offset()
546 b43legacy_phy_write(dev, 0x0478, backup[19]); in b43legacy_calc_nrssi_offset()
548 b43legacy_phy_write(dev, 0x0001, backup[0]); in b43legacy_calc_nrssi_offset()
549 b43legacy_phy_write(dev, 0x0812, backup[2]); in b43legacy_calc_nrssi_offset()
550 b43legacy_phy_write(dev, 0x0811, backup[1]); in b43legacy_calc_nrssi_offset()
553 void b43legacy_calc_nrssi_slope(struct b43legacy_wldev *dev) in b43legacy_calc_nrssi_slope() argument
555 struct b43legacy_phy *phy = &dev->phy; in b43legacy_calc_nrssi_slope()
563 backup[0] = b43legacy_radio_read16(dev, 0x007A); in b43legacy_calc_nrssi_slope()
564 backup[1] = b43legacy_radio_read16(dev, 0x0052); in b43legacy_calc_nrssi_slope()
565 backup[2] = b43legacy_radio_read16(dev, 0x0043); in b43legacy_calc_nrssi_slope()
566 backup[3] = b43legacy_phy_read(dev, 0x0030); in b43legacy_calc_nrssi_slope()
567 backup[4] = b43legacy_phy_read(dev, 0x0026); in b43legacy_calc_nrssi_slope()
568 backup[5] = b43legacy_phy_read(dev, 0x0015); in b43legacy_calc_nrssi_slope()
569 backup[6] = b43legacy_phy_read(dev, 0x002A); in b43legacy_calc_nrssi_slope()
570 backup[7] = b43legacy_phy_read(dev, 0x0020); in b43legacy_calc_nrssi_slope()
571 backup[8] = b43legacy_phy_read(dev, 0x005A); in b43legacy_calc_nrssi_slope()
572 backup[9] = b43legacy_phy_read(dev, 0x0059); in b43legacy_calc_nrssi_slope()
573 backup[10] = b43legacy_phy_read(dev, 0x0058); in b43legacy_calc_nrssi_slope()
574 backup[11] = b43legacy_read16(dev, 0x03E2); in b43legacy_calc_nrssi_slope()
575 backup[12] = b43legacy_read16(dev, 0x03E6); in b43legacy_calc_nrssi_slope()
576 backup[13] = b43legacy_read16(dev, B43legacy_MMIO_CHANNEL_EXT); in b43legacy_calc_nrssi_slope()
578 tmp = b43legacy_radio_read16(dev, 0x007A); in b43legacy_calc_nrssi_slope()
580 b43legacy_radio_write16(dev, 0x007A, tmp); in b43legacy_calc_nrssi_slope()
581 b43legacy_phy_write(dev, 0x0030, 0x00FF); in b43legacy_calc_nrssi_slope()
582 b43legacy_write16(dev, 0x03EC, 0x7F7F); in b43legacy_calc_nrssi_slope()
583 b43legacy_phy_write(dev, 0x0026, 0x0000); in b43legacy_calc_nrssi_slope()
584 b43legacy_phy_write(dev, 0x0015, in b43legacy_calc_nrssi_slope()
585 b43legacy_phy_read(dev, 0x0015) | 0x0020); in b43legacy_calc_nrssi_slope()
586 b43legacy_phy_write(dev, 0x002A, 0x08A3); in b43legacy_calc_nrssi_slope()
587 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
588 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
591 nrssi0 = (s16)b43legacy_phy_read(dev, 0x0027); in b43legacy_calc_nrssi_slope()
592 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
593 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
596 b43legacy_write16(dev, 0x03E6, 0x0040); in b43legacy_calc_nrssi_slope()
598 b43legacy_write16(dev, 0x03E6, 0x0122); in b43legacy_calc_nrssi_slope()
600 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, in b43legacy_calc_nrssi_slope()
601 b43legacy_read16(dev, in b43legacy_calc_nrssi_slope()
603 b43legacy_phy_write(dev, 0x0020, 0x3F3F); in b43legacy_calc_nrssi_slope()
604 b43legacy_phy_write(dev, 0x0015, 0xF330); in b43legacy_calc_nrssi_slope()
605 b43legacy_radio_write16(dev, 0x005A, 0x0060); in b43legacy_calc_nrssi_slope()
606 b43legacy_radio_write16(dev, 0x0043, in b43legacy_calc_nrssi_slope()
607 b43legacy_radio_read16(dev, 0x0043) in b43legacy_calc_nrssi_slope()
609 b43legacy_phy_write(dev, 0x005A, 0x0480); in b43legacy_calc_nrssi_slope()
610 b43legacy_phy_write(dev, 0x0059, 0x0810); in b43legacy_calc_nrssi_slope()
611 b43legacy_phy_write(dev, 0x0058, 0x000D); in b43legacy_calc_nrssi_slope()
614 nrssi1 = (s16)b43legacy_phy_read(dev, 0x0027); in b43legacy_calc_nrssi_slope()
615 b43legacy_phy_write(dev, 0x0030, backup[3]); in b43legacy_calc_nrssi_slope()
616 b43legacy_radio_write16(dev, 0x007A, backup[0]); in b43legacy_calc_nrssi_slope()
617 b43legacy_write16(dev, 0x03E2, backup[11]); in b43legacy_calc_nrssi_slope()
618 b43legacy_phy_write(dev, 0x0026, backup[4]); in b43legacy_calc_nrssi_slope()
619 b43legacy_phy_write(dev, 0x0015, backup[5]); in b43legacy_calc_nrssi_slope()
620 b43legacy_phy_write(dev, 0x002A, backup[6]); in b43legacy_calc_nrssi_slope()
621 b43legacy_synth_pu_workaround(dev, phy->channel); in b43legacy_calc_nrssi_slope()
623 b43legacy_write16(dev, 0x03F4, backup[13]); in b43legacy_calc_nrssi_slope()
625 b43legacy_phy_write(dev, 0x0020, backup[7]); in b43legacy_calc_nrssi_slope()
626 b43legacy_phy_write(dev, 0x005A, backup[8]); in b43legacy_calc_nrssi_slope()
627 b43legacy_phy_write(dev, 0x0059, backup[9]); in b43legacy_calc_nrssi_slope()
628 b43legacy_phy_write(dev, 0x0058, backup[10]); in b43legacy_calc_nrssi_slope()
629 b43legacy_radio_write16(dev, 0x0052, backup[1]); in b43legacy_calc_nrssi_slope()
630 b43legacy_radio_write16(dev, 0x0043, backup[2]); in b43legacy_calc_nrssi_slope()
646 b43legacy_calc_nrssi_offset(dev); in b43legacy_calc_nrssi_slope()
648 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_calc_nrssi_slope()
649 b43legacy_phy_read(dev, B43legacy_PHY_G_CRS) in b43legacy_calc_nrssi_slope()
651 b43legacy_phy_write(dev, 0x0802, in b43legacy_calc_nrssi_slope()
652 b43legacy_phy_read(dev, 0x0802) & 0xFFFC); in b43legacy_calc_nrssi_slope()
653 backup[7] = b43legacy_read16(dev, 0x03E2); in b43legacy_calc_nrssi_slope()
654 b43legacy_write16(dev, 0x03E2, in b43legacy_calc_nrssi_slope()
655 b43legacy_read16(dev, 0x03E2) | 0x8000); in b43legacy_calc_nrssi_slope()
656 backup[0] = b43legacy_radio_read16(dev, 0x007A); in b43legacy_calc_nrssi_slope()
657 backup[1] = b43legacy_radio_read16(dev, 0x0052); in b43legacy_calc_nrssi_slope()
658 backup[2] = b43legacy_radio_read16(dev, 0x0043); in b43legacy_calc_nrssi_slope()
659 backup[3] = b43legacy_phy_read(dev, 0x0015); in b43legacy_calc_nrssi_slope()
660 backup[4] = b43legacy_phy_read(dev, 0x005A); in b43legacy_calc_nrssi_slope()
661 backup[5] = b43legacy_phy_read(dev, 0x0059); in b43legacy_calc_nrssi_slope()
662 backup[6] = b43legacy_phy_read(dev, 0x0058); in b43legacy_calc_nrssi_slope()
663 backup[8] = b43legacy_read16(dev, 0x03E6); in b43legacy_calc_nrssi_slope()
664 backup[9] = b43legacy_read16(dev, B43legacy_MMIO_CHANNEL_EXT); in b43legacy_calc_nrssi_slope()
666 backup[10] = b43legacy_phy_read(dev, 0x002E); in b43legacy_calc_nrssi_slope()
667 backup[11] = b43legacy_phy_read(dev, 0x002F); in b43legacy_calc_nrssi_slope()
668 backup[12] = b43legacy_phy_read(dev, 0x080F); in b43legacy_calc_nrssi_slope()
669 backup[13] = b43legacy_phy_read(dev, in b43legacy_calc_nrssi_slope()
671 backup[14] = b43legacy_phy_read(dev, 0x0801); in b43legacy_calc_nrssi_slope()
672 backup[15] = b43legacy_phy_read(dev, 0x0060); in b43legacy_calc_nrssi_slope()
673 backup[16] = b43legacy_phy_read(dev, 0x0014); in b43legacy_calc_nrssi_slope()
674 backup[17] = b43legacy_phy_read(dev, 0x0478); in b43legacy_calc_nrssi_slope()
675 b43legacy_phy_write(dev, 0x002E, 0); in b43legacy_calc_nrssi_slope()
676 b43legacy_phy_write(dev, B43legacy_PHY_G_LO_CONTROL, 0); in b43legacy_calc_nrssi_slope()
679 b43legacy_phy_write(dev, 0x0478, in b43legacy_calc_nrssi_slope()
680 b43legacy_phy_read(dev, in b43legacy_calc_nrssi_slope()
682 b43legacy_phy_write(dev, 0x0801, in b43legacy_calc_nrssi_slope()
683 b43legacy_phy_read(dev, in b43legacy_calc_nrssi_slope()
687 b43legacy_phy_write(dev, 0x0801, in b43legacy_calc_nrssi_slope()
688 b43legacy_phy_read(dev, in b43legacy_calc_nrssi_slope()
692 b43legacy_phy_write(dev, 0x0060, in b43legacy_calc_nrssi_slope()
693 b43legacy_phy_read(dev, 0x0060) in b43legacy_calc_nrssi_slope()
695 b43legacy_phy_write(dev, 0x0014, in b43legacy_calc_nrssi_slope()
696 b43legacy_phy_read(dev, 0x0014) in b43legacy_calc_nrssi_slope()
699 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
700 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
702 b43legacy_set_all_gains(dev, 0, 8, 0); in b43legacy_calc_nrssi_slope()
703 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
704 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
707 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_slope()
708 (b43legacy_phy_read(dev, 0x0811) in b43legacy_calc_nrssi_slope()
710 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_slope()
711 (b43legacy_phy_read(dev, 0x0812) in b43legacy_calc_nrssi_slope()
714 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
715 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
719 nrssi0 = (s16)((b43legacy_phy_read(dev, 0x047F) >> 8) & 0x003F); in b43legacy_calc_nrssi_slope()
723 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
724 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
727 b43legacy_phy_write(dev, 0x0003, in b43legacy_calc_nrssi_slope()
728 (b43legacy_phy_read(dev, 0x0003) in b43legacy_calc_nrssi_slope()
731 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, in b43legacy_calc_nrssi_slope()
732 b43legacy_read16(dev, in b43legacy_calc_nrssi_slope()
734 b43legacy_radio_write16(dev, 0x007A, in b43legacy_calc_nrssi_slope()
735 b43legacy_radio_read16(dev, 0x007A) in b43legacy_calc_nrssi_slope()
737 b43legacy_phy_write(dev, 0x0015, 0xF330); in b43legacy_calc_nrssi_slope()
739 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_slope()
740 (b43legacy_phy_read(dev, 0x0812) in b43legacy_calc_nrssi_slope()
742 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_slope()
743 (b43legacy_phy_read(dev, 0x0811) in b43legacy_calc_nrssi_slope()
747 b43legacy_set_all_gains(dev, 3, 0, 1); in b43legacy_calc_nrssi_slope()
749 b43legacy_radio_write16(dev, 0x0043, 0x001F); in b43legacy_calc_nrssi_slope()
751 tmp = b43legacy_radio_read16(dev, 0x0052) & 0xFF0F; in b43legacy_calc_nrssi_slope()
752 b43legacy_radio_write16(dev, 0x0052, tmp | 0x0060); in b43legacy_calc_nrssi_slope()
753 tmp = b43legacy_radio_read16(dev, 0x0043) & 0xFFF0; in b43legacy_calc_nrssi_slope()
754 b43legacy_radio_write16(dev, 0x0043, tmp | 0x0009); in b43legacy_calc_nrssi_slope()
756 b43legacy_phy_write(dev, 0x005A, 0x0480); in b43legacy_calc_nrssi_slope()
757 b43legacy_phy_write(dev, 0x0059, 0x0810); in b43legacy_calc_nrssi_slope()
758 b43legacy_phy_write(dev, 0x0058, 0x000D); in b43legacy_calc_nrssi_slope()
760 nrssi1 = (s16)((b43legacy_phy_read(dev, 0x047F) >> 8) & 0x003F); in b43legacy_calc_nrssi_slope()
772 b43legacy_phy_write(dev, 0x002E, backup[10]); in b43legacy_calc_nrssi_slope()
773 b43legacy_phy_write(dev, 0x002F, backup[11]); in b43legacy_calc_nrssi_slope()
774 b43legacy_phy_write(dev, 0x080F, backup[12]); in b43legacy_calc_nrssi_slope()
775 b43legacy_phy_write(dev, B43legacy_PHY_G_LO_CONTROL, in b43legacy_calc_nrssi_slope()
779 b43legacy_phy_write(dev, 0x0812, in b43legacy_calc_nrssi_slope()
780 b43legacy_phy_read(dev, 0x0812) in b43legacy_calc_nrssi_slope()
782 b43legacy_phy_write(dev, 0x0811, in b43legacy_calc_nrssi_slope()
783 b43legacy_phy_read(dev, 0x0811) in b43legacy_calc_nrssi_slope()
787 b43legacy_radio_write16(dev, 0x007A, backup[0]); in b43legacy_calc_nrssi_slope()
788 b43legacy_radio_write16(dev, 0x0052, backup[1]); in b43legacy_calc_nrssi_slope()
789 b43legacy_radio_write16(dev, 0x0043, backup[2]); in b43legacy_calc_nrssi_slope()
790 b43legacy_write16(dev, 0x03E2, backup[7]); in b43legacy_calc_nrssi_slope()
791 b43legacy_write16(dev, 0x03E6, backup[8]); in b43legacy_calc_nrssi_slope()
792 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, backup[9]); in b43legacy_calc_nrssi_slope()
793 b43legacy_phy_write(dev, 0x0015, backup[3]); in b43legacy_calc_nrssi_slope()
794 b43legacy_phy_write(dev, 0x005A, backup[4]); in b43legacy_calc_nrssi_slope()
795 b43legacy_phy_write(dev, 0x0059, backup[5]); in b43legacy_calc_nrssi_slope()
796 b43legacy_phy_write(dev, 0x0058, backup[6]); in b43legacy_calc_nrssi_slope()
797 b43legacy_synth_pu_workaround(dev, phy->channel); in b43legacy_calc_nrssi_slope()
798 b43legacy_phy_write(dev, 0x0802, in b43legacy_calc_nrssi_slope()
799 b43legacy_phy_read(dev, 0x0802) | 0x0003); in b43legacy_calc_nrssi_slope()
800 b43legacy_set_original_gains(dev); in b43legacy_calc_nrssi_slope()
801 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_calc_nrssi_slope()
802 b43legacy_phy_read(dev, B43legacy_PHY_G_CRS) in b43legacy_calc_nrssi_slope()
805 b43legacy_phy_write(dev, 0x0801, backup[14]); in b43legacy_calc_nrssi_slope()
806 b43legacy_phy_write(dev, 0x0060, backup[15]); in b43legacy_calc_nrssi_slope()
807 b43legacy_phy_write(dev, 0x0014, backup[16]); in b43legacy_calc_nrssi_slope()
808 b43legacy_phy_write(dev, 0x0478, backup[17]); in b43legacy_calc_nrssi_slope()
810 b43legacy_nrssi_mem_update(dev); in b43legacy_calc_nrssi_slope()
811 b43legacy_calc_nrssi_threshold(dev); in b43legacy_calc_nrssi_slope()
818 void b43legacy_calc_nrssi_threshold(struct b43legacy_wldev *dev) in b43legacy_calc_nrssi_threshold() argument
820 struct b43legacy_phy *phy = &dev->phy; in b43legacy_calc_nrssi_threshold()
831 if (!(dev->dev->bus->sprom.boardflags_lo & in b43legacy_calc_nrssi_threshold()
843 b43legacy_phy_read(dev, 0x0020); /* dummy read */ in b43legacy_calc_nrssi_threshold()
844 b43legacy_phy_write(dev, 0x0020, (((u16)threshold) << 8) in b43legacy_calc_nrssi_threshold()
848 b43legacy_phy_write(dev, 0x0087, 0x0E0D); in b43legacy_calc_nrssi_threshold()
849 b43legacy_phy_write(dev, 0x0086, 0x0C0B); in b43legacy_calc_nrssi_threshold()
850 b43legacy_phy_write(dev, 0x0085, 0x0A09); in b43legacy_calc_nrssi_threshold()
851 b43legacy_phy_write(dev, 0x0084, 0x0808); in b43legacy_calc_nrssi_threshold()
852 b43legacy_phy_write(dev, 0x0083, 0x0808); in b43legacy_calc_nrssi_threshold()
853 b43legacy_phy_write(dev, 0x0082, 0x0604); in b43legacy_calc_nrssi_threshold()
854 b43legacy_phy_write(dev, 0x0081, 0x0302); in b43legacy_calc_nrssi_threshold()
855 b43legacy_phy_write(dev, 0x0080, 0x0100); in b43legacy_calc_nrssi_threshold()
861 !(dev->dev->bus->sprom.boardflags_lo & in b43legacy_calc_nrssi_threshold()
863 tmp16 = b43legacy_nrssi_hw_read(dev, 0x20); in b43legacy_calc_nrssi_threshold()
867 b43legacy_phy_write(dev, 0x048A, in b43legacy_calc_nrssi_threshold()
868 (b43legacy_phy_read(dev, in b43legacy_calc_nrssi_threshold()
871 b43legacy_phy_write(dev, 0x048A, in b43legacy_calc_nrssi_threshold()
872 (b43legacy_phy_read(dev, in b43legacy_calc_nrssi_threshold()
906 tmp_u16 = b43legacy_phy_read(dev, 0x048A) & 0xF000; in b43legacy_calc_nrssi_threshold()
909 b43legacy_phy_write(dev, 0x048A, tmp_u16); in b43legacy_calc_nrssi_threshold()
957 b43legacy_phy_read(dev, (offset))); \
961 b43legacy_phy_write(dev, (offset), \
968 b43legacy_radio_read16(dev, (offset))); \
972 b43legacy_radio_write16(dev, (offset), \
979 b43legacy_ilt_read(dev, (offset))); \
983 b43legacy_ilt_write(dev, (offset), \
989 b43legacy_radio_interference_mitigation_enable(struct b43legacy_wldev *dev, in b43legacy_radio_interference_mitigation_enable() argument
992 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_interference_mitigation_enable()
1002 b43legacy_phy_write(dev, 0x042B, in b43legacy_radio_interference_mitigation_enable()
1003 b43legacy_phy_read(dev, 0x042B) in b43legacy_radio_interference_mitigation_enable()
1005 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_interference_mitigation_enable()
1006 b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_enable()
1011 tmp = (b43legacy_radio_read16(dev, 0x0078) & 0x001E); in b43legacy_radio_interference_mitigation_enable()
1019 b43legacy_radio_write16(dev, 0x0078, flipped); in b43legacy_radio_interference_mitigation_enable()
1021 b43legacy_calc_nrssi_threshold(dev); in b43legacy_radio_interference_mitigation_enable()
1024 b43legacy_phy_write(dev, 0x0406, 0x7E28); in b43legacy_radio_interference_mitigation_enable()
1026 b43legacy_phy_write(dev, 0x042B, in b43legacy_radio_interference_mitigation_enable()
1027 b43legacy_phy_read(dev, 0x042B) | 0x0800); in b43legacy_radio_interference_mitigation_enable()
1028 b43legacy_phy_write(dev, B43legacy_PHY_RADIO_BITFIELD, in b43legacy_radio_interference_mitigation_enable()
1029 b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_enable()
1033 b43legacy_phy_write(dev, 0x04A0, in b43legacy_radio_interference_mitigation_enable()
1034 (b43legacy_phy_read(dev, 0x04A0) & 0xC0C0) in b43legacy_radio_interference_mitigation_enable()
1037 b43legacy_phy_write(dev, 0x04A1, in b43legacy_radio_interference_mitigation_enable()
1038 (b43legacy_phy_read(dev, 0x04A1) & 0xC0C0) in b43legacy_radio_interference_mitigation_enable()
1041 b43legacy_phy_write(dev, 0x04A2, in b43legacy_radio_interference_mitigation_enable()
1042 (b43legacy_phy_read(dev, 0x04A2) & 0xC0C0) in b43legacy_radio_interference_mitigation_enable()
1045 b43legacy_phy_write(dev, 0x04A8, in b43legacy_radio_interference_mitigation_enable()
1046 (b43legacy_phy_read(dev, 0x04A8) & 0xC0C0) in b43legacy_radio_interference_mitigation_enable()
1049 b43legacy_phy_write(dev, 0x04AB, in b43legacy_radio_interference_mitigation_enable()
1050 (b43legacy_phy_read(dev, 0x04AB) & 0xC0C0) in b43legacy_radio_interference_mitigation_enable()
1054 b43legacy_phy_write(dev, 0x04A7, 0x0002); in b43legacy_radio_interference_mitigation_enable()
1056 b43legacy_phy_write(dev, 0x04A3, 0x287A); in b43legacy_radio_interference_mitigation_enable()
1058 b43legacy_phy_write(dev, 0x04A9, 0x2027); in b43legacy_radio_interference_mitigation_enable()
1060 b43legacy_phy_write(dev, 0x0493, 0x32F5); in b43legacy_radio_interference_mitigation_enable()
1062 b43legacy_phy_write(dev, 0x04AA, 0x2027); in b43legacy_radio_interference_mitigation_enable()
1064 b43legacy_phy_write(dev, 0x04AC, 0x32F5); in b43legacy_radio_interference_mitigation_enable()
1067 if (b43legacy_phy_read(dev, 0x0033) & 0x0800) in b43legacy_radio_interference_mitigation_enable()
1107 b43legacy_phy_write(dev, B43legacy_PHY_RADIO_BITFIELD, in b43legacy_radio_interference_mitigation_enable()
1108 b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_enable()
1110 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_interference_mitigation_enable()
1111 (b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_enable()
1115 b43legacy_phy_write(dev, 0x0033, 0x0800); in b43legacy_radio_interference_mitigation_enable()
1116 b43legacy_phy_write(dev, 0x04A3, 0x2027); in b43legacy_radio_interference_mitigation_enable()
1117 b43legacy_phy_write(dev, 0x04A9, 0x1CA8); in b43legacy_radio_interference_mitigation_enable()
1118 b43legacy_phy_write(dev, 0x0493, 0x287A); in b43legacy_radio_interference_mitigation_enable()
1119 b43legacy_phy_write(dev, 0x04AA, 0x1CA8); in b43legacy_radio_interference_mitigation_enable()
1120 b43legacy_phy_write(dev, 0x04AC, 0x287A); in b43legacy_radio_interference_mitigation_enable()
1122 b43legacy_phy_write(dev, 0x04A0, in b43legacy_radio_interference_mitigation_enable()
1123 (b43legacy_phy_read(dev, 0x04A0) in b43legacy_radio_interference_mitigation_enable()
1125 b43legacy_phy_write(dev, 0x04A7, 0x000D); in b43legacy_radio_interference_mitigation_enable()
1128 b43legacy_phy_write(dev, 0x0406, 0xFF0D); in b43legacy_radio_interference_mitigation_enable()
1130 b43legacy_phy_write(dev, 0x04C0, 0xFFFF); in b43legacy_radio_interference_mitigation_enable()
1131 b43legacy_phy_write(dev, 0x04C1, 0x00A9); in b43legacy_radio_interference_mitigation_enable()
1133 b43legacy_phy_write(dev, 0x04C0, 0x00C1); in b43legacy_radio_interference_mitigation_enable()
1134 b43legacy_phy_write(dev, 0x04C1, 0x0059); in b43legacy_radio_interference_mitigation_enable()
1137 b43legacy_phy_write(dev, 0x04A1, in b43legacy_radio_interference_mitigation_enable()
1138 (b43legacy_phy_read(dev, 0x04A1) in b43legacy_radio_interference_mitigation_enable()
1140 b43legacy_phy_write(dev, 0x04A1, in b43legacy_radio_interference_mitigation_enable()
1141 (b43legacy_phy_read(dev, 0x04A1) in b43legacy_radio_interference_mitigation_enable()
1143 b43legacy_phy_write(dev, 0x04A8, in b43legacy_radio_interference_mitigation_enable()
1144 (b43legacy_phy_read(dev, 0x04A8) in b43legacy_radio_interference_mitigation_enable()
1146 b43legacy_phy_write(dev, 0x04A8, in b43legacy_radio_interference_mitigation_enable()
1147 (b43legacy_phy_read(dev, 0x04A8) in b43legacy_radio_interference_mitigation_enable()
1149 b43legacy_phy_write(dev, 0x04AB, in b43legacy_radio_interference_mitigation_enable()
1150 (b43legacy_phy_read(dev, 0x04AB) in b43legacy_radio_interference_mitigation_enable()
1152 b43legacy_phy_write(dev, 0x04AB, in b43legacy_radio_interference_mitigation_enable()
1153 (b43legacy_phy_read(dev, 0x04AB) in b43legacy_radio_interference_mitigation_enable()
1155 b43legacy_phy_write(dev, 0x04AB, in b43legacy_radio_interference_mitigation_enable()
1156 (b43legacy_phy_read(dev, 0x04AB) in b43legacy_radio_interference_mitigation_enable()
1158 b43legacy_phy_write(dev, 0x04AB, in b43legacy_radio_interference_mitigation_enable()
1159 (b43legacy_phy_read(dev, 0x04AB) in b43legacy_radio_interference_mitigation_enable()
1161 b43legacy_phy_write(dev, 0x04A8, in b43legacy_radio_interference_mitigation_enable()
1162 (b43legacy_phy_read(dev, 0x04A8) in b43legacy_radio_interference_mitigation_enable()
1164 b43legacy_phy_write(dev, 0x04A8, in b43legacy_radio_interference_mitigation_enable()
1165 (b43legacy_phy_read(dev, 0x04A8) in b43legacy_radio_interference_mitigation_enable()
1167 b43legacy_phy_write(dev, 0x04A2, in b43legacy_radio_interference_mitigation_enable()
1168 (b43legacy_phy_read(dev, 0x04A2) in b43legacy_radio_interference_mitigation_enable()
1170 b43legacy_phy_write(dev, 0x04A0, in b43legacy_radio_interference_mitigation_enable()
1171 (b43legacy_phy_read(dev, 0x04A0) in b43legacy_radio_interference_mitigation_enable()
1173 b43legacy_phy_write(dev, 0x04A2, in b43legacy_radio_interference_mitigation_enable()
1174 (b43legacy_phy_read(dev, 0x04A2) in b43legacy_radio_interference_mitigation_enable()
1178 b43legacy_phy_write(dev, 0x048A, in b43legacy_radio_interference_mitigation_enable()
1179 b43legacy_phy_read(dev, 0x048A) in b43legacy_radio_interference_mitigation_enable()
1181 b43legacy_phy_write(dev, 0x0415, in b43legacy_radio_interference_mitigation_enable()
1182 (b43legacy_phy_read(dev, 0x0415) in b43legacy_radio_interference_mitigation_enable()
1184 b43legacy_phy_write(dev, 0x0416, in b43legacy_radio_interference_mitigation_enable()
1185 (b43legacy_phy_read(dev, 0x0416) in b43legacy_radio_interference_mitigation_enable()
1187 b43legacy_phy_write(dev, 0x0417, in b43legacy_radio_interference_mitigation_enable()
1188 (b43legacy_phy_read(dev, 0x0417) in b43legacy_radio_interference_mitigation_enable()
1191 b43legacy_phy_write(dev, 0x048A, in b43legacy_radio_interference_mitigation_enable()
1192 b43legacy_phy_read(dev, 0x048A) in b43legacy_radio_interference_mitigation_enable()
1194 b43legacy_phy_write(dev, 0x048A, in b43legacy_radio_interference_mitigation_enable()
1195 (b43legacy_phy_read(dev, 0x048A) in b43legacy_radio_interference_mitigation_enable()
1197 tmp32 = b43legacy_shm_read32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_interference_mitigation_enable()
1201 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_interference_mitigation_enable()
1207 b43legacy_phy_write(dev, 0x042B, in b43legacy_radio_interference_mitigation_enable()
1208 b43legacy_phy_read(dev, 0x042B) in b43legacy_radio_interference_mitigation_enable()
1210 b43legacy_phy_write(dev, 0x048C, in b43legacy_radio_interference_mitigation_enable()
1211 (b43legacy_phy_read(dev, 0x048C) in b43legacy_radio_interference_mitigation_enable()
1214 b43legacy_phy_write(dev, 0x04AE, in b43legacy_radio_interference_mitigation_enable()
1215 (b43legacy_phy_read(dev, 0x04AE) in b43legacy_radio_interference_mitigation_enable()
1217 b43legacy_phy_write(dev, 0x04AD, in b43legacy_radio_interference_mitigation_enable()
1218 (b43legacy_phy_read(dev, 0x04AD) in b43legacy_radio_interference_mitigation_enable()
1221 b43legacy_ilt_write(dev, 0x1A00 + 0x3, 0x007F); in b43legacy_radio_interference_mitigation_enable()
1222 b43legacy_ilt_write(dev, 0x1A00 + 0x2, 0x007F); in b43legacy_radio_interference_mitigation_enable()
1223 b43legacy_phy_write(dev, 0x04AD, in b43legacy_radio_interference_mitigation_enable()
1224 b43legacy_phy_read(dev, 0x04AD) in b43legacy_radio_interference_mitigation_enable()
1227 b43legacy_calc_nrssi_slope(dev); in b43legacy_radio_interference_mitigation_enable()
1235 b43legacy_radio_interference_mitigation_disable(struct b43legacy_wldev *dev, in b43legacy_radio_interference_mitigation_disable() argument
1238 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_interference_mitigation_disable()
1245 b43legacy_phy_write(dev, 0x042B, in b43legacy_radio_interference_mitigation_disable()
1246 b43legacy_phy_read(dev, 0x042B) in b43legacy_radio_interference_mitigation_disable()
1248 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_interference_mitigation_disable()
1249 b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_disable()
1254 b43legacy_calc_nrssi_threshold(dev); in b43legacy_radio_interference_mitigation_disable()
1256 b43legacy_phy_write(dev, 0x042B, in b43legacy_radio_interference_mitigation_disable()
1257 b43legacy_phy_read(dev, 0x042B) & ~0x0800); in b43legacy_radio_interference_mitigation_disable()
1258 if (!dev->bad_frames_preempt) in b43legacy_radio_interference_mitigation_disable()
1259 b43legacy_phy_write(dev, B43legacy_PHY_RADIO_BITFIELD, in b43legacy_radio_interference_mitigation_disable()
1260 b43legacy_phy_read(dev, in b43legacy_radio_interference_mitigation_disable()
1263 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_interference_mitigation_disable()
1264 b43legacy_phy_read(dev, B43legacy_PHY_G_CRS) in b43legacy_radio_interference_mitigation_disable()
1279 if (!(b43legacy_phy_read(dev, 0x0033) & 0x0800)) in b43legacy_radio_interference_mitigation_disable()
1317 tmp32 = b43legacy_shm_read32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_interference_mitigation_disable()
1321 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_interference_mitigation_disable()
1325 b43legacy_calc_nrssi_slope(dev); in b43legacy_radio_interference_mitigation_disable()
1339 int b43legacy_radio_set_interference_mitigation(struct b43legacy_wldev *dev, in b43legacy_radio_set_interference_mitigation() argument
1342 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_set_interference_mitigation()
1370 b43legacy_radio_interference_mitigation_disable(dev, in b43legacy_radio_set_interference_mitigation()
1377 b43legacy_radio_interference_mitigation_enable(dev, mode); in b43legacy_radio_set_interference_mitigation()
1383 u16 b43legacy_radio_calibrationvalue(struct b43legacy_wldev *dev) in b43legacy_radio_calibrationvalue() argument
1389 reg = b43legacy_radio_read16(dev, 0x0060); in b43legacy_radio_calibrationvalue()
1399 static u16 b43legacy_get_812_value(struct b43legacy_wldev *dev, u8 lpd) in b43legacy_get_812_value() argument
1401 struct b43legacy_phy *phy = &dev->phy; in b43legacy_get_812_value()
1410 if (phy->rev < 7 || !(dev->dev->bus->sprom.boardflags_lo in b43legacy_get_812_value()
1463 if (phy->rev >= 7 && dev->dev->bus->sprom.boardflags_lo in b43legacy_get_812_value()
1496 u16 b43legacy_radio_init2050(struct b43legacy_wldev *dev) in b43legacy_radio_init2050() argument
1498 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_init2050()
1506 backup[0] = b43legacy_radio_read16(dev, 0x0043); in b43legacy_radio_init2050()
1507 backup[14] = b43legacy_radio_read16(dev, 0x0051); in b43legacy_radio_init2050()
1508 backup[15] = b43legacy_radio_read16(dev, 0x0052); in b43legacy_radio_init2050()
1509 backup[1] = b43legacy_phy_read(dev, 0x0015); in b43legacy_radio_init2050()
1510 backup[16] = b43legacy_phy_read(dev, 0x005A); in b43legacy_radio_init2050()
1511 backup[17] = b43legacy_phy_read(dev, 0x0059); in b43legacy_radio_init2050()
1512 backup[18] = b43legacy_phy_read(dev, 0x0058); in b43legacy_radio_init2050()
1514 backup[2] = b43legacy_phy_read(dev, 0x0030); in b43legacy_radio_init2050()
1515 backup[3] = b43legacy_read16(dev, 0x03EC); in b43legacy_radio_init2050()
1516 b43legacy_phy_write(dev, 0x0030, 0x00FF); in b43legacy_radio_init2050()
1517 b43legacy_write16(dev, 0x03EC, 0x3F3F); in b43legacy_radio_init2050()
1520 backup[4] = b43legacy_phy_read(dev, 0x0811); in b43legacy_radio_init2050()
1521 backup[5] = b43legacy_phy_read(dev, 0x0812); in b43legacy_radio_init2050()
1522 backup[6] = b43legacy_phy_read(dev, 0x0814); in b43legacy_radio_init2050()
1523 backup[7] = b43legacy_phy_read(dev, 0x0815); in b43legacy_radio_init2050()
1524 backup[8] = b43legacy_phy_read(dev, in b43legacy_radio_init2050()
1526 backup[9] = b43legacy_phy_read(dev, 0x0802); in b43legacy_radio_init2050()
1527 b43legacy_phy_write(dev, 0x0814, in b43legacy_radio_init2050()
1528 (b43legacy_phy_read(dev, 0x0814) in b43legacy_radio_init2050()
1530 b43legacy_phy_write(dev, 0x0815, in b43legacy_radio_init2050()
1531 (b43legacy_phy_read(dev, 0x0815) in b43legacy_radio_init2050()
1533 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_init2050()
1534 (b43legacy_phy_read(dev, in b43legacy_radio_init2050()
1536 b43legacy_phy_write(dev, 0x0802, in b43legacy_radio_init2050()
1537 (b43legacy_phy_read(dev, 0x0802) in b43legacy_radio_init2050()
1540 backup[19] = b43legacy_phy_read(dev, 0x080F); in b43legacy_radio_init2050()
1541 backup[20] = b43legacy_phy_read(dev, 0x0810); in b43legacy_radio_init2050()
1543 b43legacy_phy_write(dev, 0x080F, in b43legacy_radio_init2050()
1546 b43legacy_phy_write(dev, 0x080F, in b43legacy_radio_init2050()
1548 b43legacy_phy_write(dev, 0x0810, 0x0000); in b43legacy_radio_init2050()
1550 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1551 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1554 !(dev->dev->bus->sprom.boardflags_lo in b43legacy_radio_init2050()
1556 b43legacy_phy_write(dev, 0x0811, 0x01B3); in b43legacy_radio_init2050()
1558 b43legacy_phy_write(dev, 0x0811, 0x09B3); in b43legacy_radio_init2050()
1561 b43legacy_write16(dev, B43legacy_MMIO_PHY_RADIO, in b43legacy_radio_init2050()
1562 (b43legacy_read16(dev, B43legacy_MMIO_PHY_RADIO) in b43legacy_radio_init2050()
1564 backup[10] = b43legacy_phy_read(dev, 0x0035); in b43legacy_radio_init2050()
1565 b43legacy_phy_write(dev, 0x0035, in b43legacy_radio_init2050()
1566 (b43legacy_phy_read(dev, 0x0035) & 0xFF7F)); in b43legacy_radio_init2050()
1567 backup[11] = b43legacy_read16(dev, 0x03E6); in b43legacy_radio_init2050()
1568 backup[12] = b43legacy_read16(dev, B43legacy_MMIO_CHANNEL_EXT); in b43legacy_radio_init2050()
1572 b43legacy_write16(dev, 0x03E6, 0x0122); in b43legacy_radio_init2050()
1575 b43legacy_phy_write(dev, 0x0003, in b43legacy_radio_init2050()
1576 (b43legacy_phy_read(dev, 0x0003) in b43legacy_radio_init2050()
1578 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, in b43legacy_radio_init2050()
1579 (b43legacy_read16(dev, in b43legacy_radio_init2050()
1583 ret = b43legacy_radio_calibrationvalue(dev); in b43legacy_radio_init2050()
1586 b43legacy_radio_write16(dev, 0x0078, 0x0026); in b43legacy_radio_init2050()
1589 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1590 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1592 b43legacy_phy_write(dev, 0x0015, 0xBFAF); in b43legacy_radio_init2050()
1593 b43legacy_phy_write(dev, 0x002B, 0x1403); in b43legacy_radio_init2050()
1595 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1596 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1598 b43legacy_phy_write(dev, 0x0015, 0xBFA0); in b43legacy_radio_init2050()
1599 b43legacy_radio_write16(dev, 0x0051, in b43legacy_radio_init2050()
1600 (b43legacy_radio_read16(dev, 0x0051) in b43legacy_radio_init2050()
1603 b43legacy_radio_write16(dev, 0x0043, 0x001F); in b43legacy_radio_init2050()
1605 b43legacy_radio_write16(dev, 0x0052, 0x0000); in b43legacy_radio_init2050()
1606 b43legacy_radio_write16(dev, 0x0043, in b43legacy_radio_init2050()
1607 (b43legacy_radio_read16(dev, 0x0043) in b43legacy_radio_init2050()
1610 b43legacy_phy_write(dev, 0x0058, 0x0000); in b43legacy_radio_init2050()
1613 b43legacy_phy_write(dev, 0x005A, 0x0480); in b43legacy_radio_init2050()
1614 b43legacy_phy_write(dev, 0x0059, 0xC810); in b43legacy_radio_init2050()
1615 b43legacy_phy_write(dev, 0x0058, 0x000D); in b43legacy_radio_init2050()
1617 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1618 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1620 b43legacy_phy_write(dev, 0x0015, 0xAFB0); in b43legacy_radio_init2050()
1623 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1624 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1626 b43legacy_phy_write(dev, 0x0015, 0xEFB0); in b43legacy_radio_init2050()
1629 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1630 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1632 b43legacy_phy_write(dev, 0x0015, 0xFFF0); in b43legacy_radio_init2050()
1634 tmp1 += b43legacy_phy_read(dev, 0x002D); in b43legacy_radio_init2050()
1635 b43legacy_phy_write(dev, 0x0058, 0x0000); in b43legacy_radio_init2050()
1637 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1638 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1640 b43legacy_phy_write(dev, 0x0015, 0xAFB0); in b43legacy_radio_init2050()
1646 b43legacy_phy_write(dev, 0x0058, 0x0000); in b43legacy_radio_init2050()
1649 b43legacy_radio_write16(dev, 0x0078, (flip_4bit(i) << 1) in b43legacy_radio_init2050()
1651 backup[13] = b43legacy_radio_read16(dev, 0x0078); in b43legacy_radio_init2050()
1654 b43legacy_phy_write(dev, 0x005A, 0x0D80); in b43legacy_radio_init2050()
1655 b43legacy_phy_write(dev, 0x0059, 0xC810); in b43legacy_radio_init2050()
1656 b43legacy_phy_write(dev, 0x0058, 0x000D); in b43legacy_radio_init2050()
1658 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1659 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1661 b43legacy_phy_write(dev, 0x0015, 0xAFB0); in b43legacy_radio_init2050()
1664 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1665 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1667 b43legacy_phy_write(dev, 0x0015, 0xEFB0); in b43legacy_radio_init2050()
1670 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1671 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1673 b43legacy_phy_write(dev, 0x0015, 0xFFF0); in b43legacy_radio_init2050()
1675 tmp2 += b43legacy_phy_read(dev, 0x002D); in b43legacy_radio_init2050()
1676 b43legacy_phy_write(dev, 0x0058, 0x0000); in b43legacy_radio_init2050()
1678 b43legacy_phy_write(dev, 0x0812, in b43legacy_radio_init2050()
1679 b43legacy_get_812_value(dev, in b43legacy_radio_init2050()
1681 b43legacy_phy_write(dev, 0x0015, 0xAFB0); in b43legacy_radio_init2050()
1690 b43legacy_phy_write(dev, 0x0015, backup[1]); in b43legacy_radio_init2050()
1691 b43legacy_radio_write16(dev, 0x0051, backup[14]); in b43legacy_radio_init2050()
1692 b43legacy_radio_write16(dev, 0x0052, backup[15]); in b43legacy_radio_init2050()
1693 b43legacy_radio_write16(dev, 0x0043, backup[0]); in b43legacy_radio_init2050()
1694 b43legacy_phy_write(dev, 0x005A, backup[16]); in b43legacy_radio_init2050()
1695 b43legacy_phy_write(dev, 0x0059, backup[17]); in b43legacy_radio_init2050()
1696 b43legacy_phy_write(dev, 0x0058, backup[18]); in b43legacy_radio_init2050()
1697 b43legacy_write16(dev, 0x03E6, backup[11]); in b43legacy_radio_init2050()
1699 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, backup[12]); in b43legacy_radio_init2050()
1700 b43legacy_phy_write(dev, 0x0035, backup[10]); in b43legacy_radio_init2050()
1701 b43legacy_radio_selectchannel(dev, phy->channel, 1); in b43legacy_radio_init2050()
1703 b43legacy_phy_write(dev, 0x0030, backup[2]); in b43legacy_radio_init2050()
1704 b43legacy_write16(dev, 0x03EC, backup[3]); in b43legacy_radio_init2050()
1707 b43legacy_write16(dev, B43legacy_MMIO_PHY_RADIO, in b43legacy_radio_init2050()
1708 (b43legacy_read16(dev, in b43legacy_radio_init2050()
1710 b43legacy_phy_write(dev, 0x0811, backup[4]); in b43legacy_radio_init2050()
1711 b43legacy_phy_write(dev, 0x0812, backup[5]); in b43legacy_radio_init2050()
1712 b43legacy_phy_write(dev, 0x0814, backup[6]); in b43legacy_radio_init2050()
1713 b43legacy_phy_write(dev, 0x0815, backup[7]); in b43legacy_radio_init2050()
1714 b43legacy_phy_write(dev, B43legacy_PHY_G_CRS, in b43legacy_radio_init2050()
1716 b43legacy_phy_write(dev, 0x0802, backup[9]); in b43legacy_radio_init2050()
1718 b43legacy_phy_write(dev, 0x080F, backup[19]); in b43legacy_radio_init2050()
1719 b43legacy_phy_write(dev, 0x0810, backup[20]); in b43legacy_radio_init2050()
1746 int b43legacy_radio_selectchannel(struct b43legacy_wldev *dev, in b43legacy_radio_selectchannel() argument
1750 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_selectchannel()
1765 b43legacy_synth_pu_workaround(dev, channel); in b43legacy_radio_selectchannel()
1767 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL, in b43legacy_radio_selectchannel()
1771 if (dev->dev->bus->sprom.country_code == 5) /* JAPAN) */ in b43legacy_radio_selectchannel()
1772 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_selectchannel()
1774 b43legacy_shm_read32(dev, in b43legacy_radio_selectchannel()
1779 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED, in b43legacy_radio_selectchannel()
1781 b43legacy_shm_read32(dev, in b43legacy_radio_selectchannel()
1785 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, in b43legacy_radio_selectchannel()
1786 b43legacy_read16(dev, in b43legacy_radio_selectchannel()
1789 b43legacy_write16(dev, B43legacy_MMIO_CHANNEL_EXT, in b43legacy_radio_selectchannel()
1790 b43legacy_read16(dev, in b43legacy_radio_selectchannel()
1801 void b43legacy_radio_set_txantenna(struct b43legacy_wldev *dev, u32 val) in b43legacy_radio_set_txantenna() argument
1806 tmp = b43legacy_shm_read16(dev, B43legacy_SHM_SHARED, 0x0022) & 0xFCFF; in b43legacy_radio_set_txantenna()
1807 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0022, tmp | val); in b43legacy_radio_set_txantenna()
1808 tmp = b43legacy_shm_read16(dev, B43legacy_SHM_SHARED, 0x03A8) & 0xFCFF; in b43legacy_radio_set_txantenna()
1809 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x03A8, tmp | val); in b43legacy_radio_set_txantenna()
1810 tmp = b43legacy_shm_read16(dev, B43legacy_SHM_SHARED, 0x0054) & 0xFCFF; in b43legacy_radio_set_txantenna()
1811 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0054, tmp | val); in b43legacy_radio_set_txantenna()
1881 void b43legacy_radio_set_txpower_a(struct b43legacy_wldev *dev, u16 txpower) in b43legacy_radio_set_txpower_a() argument
1883 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_set_txpower_a()
1894 b43legacy_phy_write(dev, 0x0019, pamp); in b43legacy_radio_set_txpower_a()
1898 b43legacy_phy_write(dev, 0x0017, base | 0x0020); in b43legacy_radio_set_txpower_a()
1900 ilt = b43legacy_ilt_read(dev, 0x3001); in b43legacy_radio_set_txpower_a()
1907 b43legacy_ilt_write(dev, 0x3001, dac); in b43legacy_radio_set_txpower_a()
1914 void b43legacy_radio_set_txpower_bg(struct b43legacy_wldev *dev, in b43legacy_radio_set_txpower_bg() argument
1919 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_set_txpower_bg()
1938 b43legacy_phy_set_baseband_attenuation(dev, baseband_attenuation); in b43legacy_radio_set_txpower_bg()
1939 b43legacy_radio_write16(dev, 0x0043, radio_attenuation); in b43legacy_radio_set_txpower_bg()
1940 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0064, in b43legacy_radio_set_txpower_bg()
1943 b43legacy_radio_write16(dev, 0x0052, in b43legacy_radio_set_txpower_bg()
1944 (b43legacy_radio_read16(dev, 0x0052) in b43legacy_radio_set_txpower_bg()
1948 b43legacy_phy_lo_adjust(dev, 0); in b43legacy_radio_set_txpower_bg()
1951 u16 b43legacy_default_baseband_attenuation(struct b43legacy_wldev *dev) in b43legacy_default_baseband_attenuation() argument
1953 struct b43legacy_phy *phy = &dev->phy; in b43legacy_default_baseband_attenuation()
1960 u16 b43legacy_default_radio_attenuation(struct b43legacy_wldev *dev) in b43legacy_default_radio_attenuation() argument
1962 struct b43legacy_phy *phy = &dev->phy; in b43legacy_default_radio_attenuation()
1980 if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
1981 dev->dev->bus->boardinfo.type == 0x421 && in b43legacy_default_radio_attenuation()
1982 dev->dev->bus->sprom.board_rev >= 30) in b43legacy_default_radio_attenuation()
1984 else if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
1985 dev->dev->bus->boardinfo.type == 0x416) in b43legacy_default_radio_attenuation()
1990 if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
1991 dev->dev->bus->boardinfo.type == 0x421 && in b43legacy_default_radio_attenuation()
1992 dev->dev->bus->sprom.board_rev >= 30) in b43legacy_default_radio_attenuation()
2000 if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
2001 dev->dev->bus->boardinfo.type == 0x421 && in b43legacy_default_radio_attenuation()
2002 dev->dev->bus->sprom.board_rev >= 30) in b43legacy_default_radio_attenuation()
2004 else if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
2005 dev->dev->bus->boardinfo.type == in b43legacy_default_radio_attenuation()
2008 else if (dev->dev->bus->chip_id == 0x4320) in b43legacy_default_radio_attenuation()
2034 if (is_bcm_board_vendor(dev) && in b43legacy_default_radio_attenuation()
2035 dev->dev->bus->boardinfo.type == 0x421) { in b43legacy_default_radio_attenuation()
2036 if (dev->dev->bus->sprom.board_rev < 0x43) in b43legacy_default_radio_attenuation()
2038 else if (dev->dev->bus->sprom.board_rev < 0x51) in b43legacy_default_radio_attenuation()
2047 u16 b43legacy_default_txctl1(struct b43legacy_wldev *dev) in b43legacy_default_txctl1() argument
2049 struct b43legacy_phy *phy = &dev->phy; in b43legacy_default_txctl1()
2062 void b43legacy_radio_turn_on(struct b43legacy_wldev *dev) in b43legacy_radio_turn_on() argument
2064 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_turn_on()
2076 b43legacy_phy_write(dev, 0x0015, 0x8000); in b43legacy_radio_turn_on()
2077 b43legacy_phy_write(dev, 0x0015, 0xCC00); in b43legacy_radio_turn_on()
2078 b43legacy_phy_write(dev, 0x0015, in b43legacy_radio_turn_on()
2082 b43legacy_phy_write(dev, B43legacy_PHY_RFOVER, in b43legacy_radio_turn_on()
2084 b43legacy_phy_write(dev, B43legacy_PHY_RFOVERVAL, in b43legacy_radio_turn_on()
2089 err = b43legacy_radio_selectchannel(dev, in b43legacy_radio_turn_on()
2091 err |= b43legacy_radio_selectchannel(dev, channel, 0); in b43legacy_radio_turn_on()
2100 void b43legacy_radio_turn_off(struct b43legacy_wldev *dev, bool force) in b43legacy_radio_turn_off() argument
2102 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_turn_off()
2107 if (phy->type == B43legacy_PHYTYPE_G && dev->dev->id.revision >= 5) { in b43legacy_radio_turn_off()
2110 rfover = b43legacy_phy_read(dev, B43legacy_PHY_RFOVER); in b43legacy_radio_turn_off()
2111 rfoverval = b43legacy_phy_read(dev, B43legacy_PHY_RFOVERVAL); in b43legacy_radio_turn_off()
2117 b43legacy_phy_write(dev, B43legacy_PHY_RFOVER, rfover | 0x008C); in b43legacy_radio_turn_off()
2118 b43legacy_phy_write(dev, B43legacy_PHY_RFOVERVAL, in b43legacy_radio_turn_off()
2121 b43legacy_phy_write(dev, 0x0015, 0xAA00); in b43legacy_radio_turn_off()
2123 b43legacydbg(dev->wl, "Radio initialized\n"); in b43legacy_radio_turn_off()
2126 void b43legacy_radio_clear_tssi(struct b43legacy_wldev *dev) in b43legacy_radio_clear_tssi() argument
2128 struct b43legacy_phy *phy = &dev->phy; in b43legacy_radio_clear_tssi()
2133 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0058, in b43legacy_radio_clear_tssi()
2135 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x005a, in b43legacy_radio_clear_tssi()
2137 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0070, in b43legacy_radio_clear_tssi()
2139 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0072, in b43legacy_radio_clear_tssi()