401 { 0x00000015, 0x00000015, 0x0000001d, 0x00000015 } },
403 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
405 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
407 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
409 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
411 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
413 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
415 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
417 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
419 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
421 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } },
423 { 0x00000168, 0x000001e0, 0x000001b8, 0x00000168 } },
425 { 0x00000230, 0x000001e0, 0x000000b0, 0x00000230 } },
427 { 0x00000d98, 0x00001180, 0x00001f48, 0x00000d98 } },
429 { 0x0000a0e0, 0x00014068, 0x00005880, 0x0000a0e0 } },
431 { 0x04000400, 0x08000800, 0x20003000, 0x04000400 } },
433 { 0x0e8d8fa7, 0x0e8d8fcf, 0x01608f95, 0x0e8d8fa7 } },
435 { 0x00000000, 0x00000003, 0x00000000, 0x00000000 } },
437 { 0x02020200, 0x02020200, 0x02010200, 0x02020200 } },
439 { 0x00000e0e, 0x00000e0e, 0x00000707, 0x00000e0e } },
441 { 0x0a020001, 0x0a020001, 0x05010000, 0x0a020001 } },
443 { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } },
445 { 0x00000007, 0x00000007, 0x0000000b, 0x0000000b } },
447 { 0x1372169c, 0x137216a5, 0x137216a8, 0x1372169c } },
449 { 0x0018ba67, 0x0018ba67, 0x0018ba69, 0x0018ba69 } },
451 { 0x0c28b4e0, 0x0c28b4e0, 0x0c28b4e0, 0x0c28b4e0 } },
453 { 0x7e800d2e, 0x7e800d2e, 0x7ec00d2e, 0x7e800d2e } },
455 { 0x31375d5e, 0x31375d5e, 0x313a5d5e, 0x31375d5e } },
457 { 0x0000bd10, 0x0000bd10, 0x0000bd38, 0x0000bd10 } },
459 { 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00 } },
461 { 0x00002710, 0x00002710, 0x0000157c, 0x00002710 } },
463 { 0x00000190, 0x00000190, 0x00000084, 0x00000190 } },
465 { 0x6fe01020, 0x6fe01020, 0x6fe00920, 0x6fe01020 } },
467 { 0x05ff14ff, 0x05ff14ff, 0x05ff14ff, 0x05ff19ff } },
469 { 0x00000010, 0x00000014, 0x00000010, 0x00000010 } },
689 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
691 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
693 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
695 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
697 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
699 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
701 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
703 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
705 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
707 { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f, 0x002ffc0f } },
709 { 0x00000230, 0x000001e0, 0x000000b0, 0x00000160, 0x000001e0 } },
711 { 0x00000168, 0x000001e0, 0x000001b8, 0x0000018c, 0x000001e0 } },
713 { 0x00000e60, 0x00001180, 0x00001f1c, 0x00003e38, 0x00001180 } },
715 { 0x0000a0e0, 0x00014068, 0x00005880, 0x0000b0e0, 0x00014068 } },
717 { 0x03e803e8, 0x06e006e0, 0x04200420, 0x08400840, 0x06e006e0 } },
719 { 0x00000000, 0x00000003, 0x00000000, 0x00000000, 0x00000003 } },
721 { 0x02020200, 0x02020200, 0x02010200, 0x02020200, 0x02020200 } },
723 { 0x00000e0e, 0x00000e0e, 0x00000707, 0x00000e0e, 0x00000e0e } },
725 { 0x1372161c, 0x13721c25, 0x13721722, 0x137216a2, 0x13721c25 } },
727 { 0x00009d10, 0x00009d10, 0x00009d18, 0x00009d18, 0x00009d10 } },
729 { 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00 } },
731 { 0x409a4190, 0x409a4190, 0x409a4190, 0x409a4190, 0x409a4190 } },
733 { 0x000001b8, 0x000001b8, 0x00000084, 0x00000108, 0x000001b8 } },
735 { 0x10058a05, 0x10058a05, 0x10058a05, 0x10058a05, 0x10058a05 } },
737 { 0x00000000, 0x00000000, 0x00000000, 0x00000108, 0x00000000 } },
744 { 0x00008015, 0x00008015, 0x00008015, 0x00008015, 0x00008015 } },
746 { 0x128d8fa7, 0x09880fcf, 0x04e00f95, 0x12e00fab, 0x09880fcf } },
748 { 0x0a020001, 0x0a020001, 0x05010100, 0x0a020001, 0x0a020001 } },
750 { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } },
752 { 0x00000007, 0x00000007, 0x0000000b, 0x0000000b, 0x0000000b } },
754 { 0x0018da5a, 0x0018da5a, 0x0018ca69, 0x0018ca69, 0x0018ca69 } },
756 { 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0 } },
758 { 0x7e800d2e, 0x7e800d2e, 0x7ee84d2e, 0x7ee84d2e, 0x7e800d2e } },
760 { 0x3137665e, 0x3137665e, 0x3137665e, 0x3137665e, 0x3137615e } },
762 { 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb080, 0x050cb080 } },
764 { 0x00002710, 0x00002710, 0x0000157c, 0x00002af8, 0x00002710 } },
766 { 0xf7b81020, 0xf7b81020, 0xf7b80d20, 0xf7b81020, 0xf7b81020 } },
768 { 0x642c416a, 0x642c416a, 0x6440416a, 0x6440416a, 0x6440416a } },
770 { 0x1883800a, 0x1883800a, 0x1873800a, 0x1883800a, 0x1883800a } },
794 { 0x00008015, 0x00008015, 0x00008015, 0x00008015, 0x00008015 } },
796 { 0x128d93a7, 0x098813cf, 0x04e01395, 0x12e013ab, 0x098813cf } },
798 { 0x0a020001, 0x0a020001, 0x05020100, 0x0a020001, 0x0a020001 } },
800 { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } },
802 { 0x00000007, 0x00000007, 0x0000000b, 0x0000000b, 0x0000000b } },
804 { 0x0018da6d, 0x0018da6d, 0x0018ca75, 0x0018ca75, 0x0018ca75 } },
806 { 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0, 0x0de8b4e0 } },
808 { 0x7e800d2e, 0x7e800d2e, 0x7ee80d2e, 0x7ee80d2e, 0x7e800d2e } },
810 { 0x3137665e, 0x3137665e, 0x3137665e, 0x3137665e, 0x3137665e } },
812 { 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081 } },
814 { 0x000007d0, 0x000007d0, 0x0000044c, 0x00000898, 0x000007d0 } },
816 { 0xf7b81020, 0xf7b81020, 0xf7b80d10, 0xf7b81010, 0xf7b81010 } },
818 { 0x00000000, 0x00000000, 0x00000008, 0x00000008, 0x00000008 } },
820 { 0xd6be6788, 0xd6be6788, 0xd03e6788, 0xd03e6788, 0xd03e6788 } },
822 { 0x642c0140, 0x642c0140, 0x6442c160, 0x6442c160, 0x6442c160 } },
824 { 0x1883800a, 0x1883800a, 0x1873800a, 0x1883800a, 0x1883800a } },
845 { 0x00000015, 0x00000015, 0x00000015, 0x00000015, 0x00000015 } },
847 { 0x128d93a7, 0x098813cf, 0x04e01395, 0x12e013ab, 0x098813cf } },
849 { 0x0a020001, 0x0a020001, 0x05020100, 0x0a020001, 0x0a020001 } },
851 { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } },
853 { 0x00000007, 0x00000007, 0x0000000b, 0x0000000b, 0x0000000b } },
855 { 0x0018fa61, 0x0018fa61, 0x001a1a63, 0x001a1a63, 0x001a1a63 } },
857 { 0x0c98b4e0, 0x0c98b4e0, 0x0c98b0da, 0x0c98b0da, 0x0c98b0da } },
859 { 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e } },
861 { 0x3139605e, 0x3139605e, 0x3139605e, 0x3139605e, 0x3139605e } },
863 { 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081 } },
865 { 0x000007d0, 0x000007d0, 0x0000044c, 0x00000898, 0x000007d0 } },
867 { 0xf7b81000, 0xf7b81000, 0xf7b80d00, 0xf7b81000, 0xf7b81000 } },
869 { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 } },
871 { 0xd6be6788, 0xd6be6788, 0xd03e6788, 0xd03e6788, 0xd03e6788 } },
873 { 0x002ec1e0, 0x002ec1e0, 0x002ac120, 0x002ac120, 0x002ac120 } },
875 { 0x1883800a, 0x1883800a, 0x1863800a, 0x1883800a, 0x1883800a } },
877 { 0x18010000, 0x18010000, 0x18010000, 0x18010000, 0x18010000 } },
879 { 0x30032602, 0x30032602, 0x30032602, 0x30032602, 0x30032602 } },
881 { 0x48073e06, 0x48073e06, 0x48073e06, 0x48073e06, 0x48073e06 } },
883 { 0x560b4c0a, 0x560b4c0a, 0x560b4c0a, 0x560b4c0a, 0x560b4c0a } },
885 { 0x641a600f, 0x641a600f, 0x641a600f, 0x641a600f, 0x641a600f } },
887 { 0x784f6e1b, 0x784f6e1b, 0x784f6e1b, 0x784f6e1b, 0x784f6e1b } },
889 { 0x868f7c5a, 0x868f7c5a, 0x868f7c5a, 0x868f7c5a, 0x868f7c5a } },
891 { 0x90cf865b, 0x90cf865b, 0x8ecf865b, 0x8ecf865b, 0x8ecf865b } },
893 { 0x9d4f970f, 0x9d4f970f, 0x9b4f970f, 0x9b4f970f, 0x9b4f970f } },
895 { 0xa7cfa38f, 0xa7cfa38f, 0xa3cf9f8f, 0xa3cf9f8f, 0xa3cf9f8f } },
897 { 0xb55faf1f, 0xb55faf1f, 0xb35faf1f, 0xb35faf1f, 0xb35faf1f } },
899 { 0xbddfb99f, 0xbddfb99f, 0xbbdfb99f, 0xbbdfb99f, 0xbbdfb99f } },
901 { 0xcb7fc53f, 0xcb7fc53f, 0xcb7fc73f, 0xcb7fc73f, 0xcb7fc73f } },
903 { 0xd5ffd1bf, 0xd5ffd1bf, 0xd3ffd1bf, 0xd3ffd1bf, 0xd3ffd1bf } },
984 { 0x00000015, 0x00000015, 0x00000015, 0x00000015, 0x00000015 } },
986 { 0x128d93a7, 0x098813cf, 0x04e01395, 0x12e013ab, 0x098813cf } },
988 { 0x0a020001, 0x0a020001, 0x05020000, 0x0a020001, 0x0a020001 } },
990 { 0x00000e00, 0x00000e00, 0x00000e00, 0x00000e00, 0x00000e00 } },
992 { 0x00000002, 0x00000002, 0x0000000a, 0x0000000a, 0x0000000a } },
994 { 0x0018da6d, 0x0018da6d, 0x001a6a64, 0x001a6a64, 0x001a6a64 } },
996 { 0x0de8b4e0, 0x0de8b4e0, 0x0de8b0da, 0x0c98b0da, 0x0de8b0da } },
998 { 0x7e800d2e, 0x7e800d2e, 0x7ee80d2e, 0x7ec80d2e, 0x7e800d2e } },
1000 { 0x3137665e, 0x3137665e, 0x3137665e, 0x3139605e, 0x3137665e } },
1002 { 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081 } },
1004 { 0x000007d0, 0x000007d0, 0x0000044c, 0x00000898, 0x000007d0 } },
1006 { 0xf7b81000, 0xf7b81000, 0xf7b80d00, 0xf7b81000, 0xf7b81000 } },
1008 { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 } },
1010 { 0xd6be6788, 0xd6be6788, 0xd03e6788, 0xd03e6788, 0xd03e6788 } },
1012 { 0x002c0140, 0x002c0140, 0x0042c140, 0x0042c140, 0x0042c140 } },
1014 { 0x1883800a, 0x1883800a, 0x1863800a, 0x1883800a, 0x1883800a } },
1106 { 0x00000015, 0x00000015, 0x00000015, 0x00000015, 0x00000015 } },
1108 { 0x128d93a7, 0x098813cf, 0x04e01395, 0x12e013ab, 0x098813cf } },
1110 { 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000001 } },
1112 { 0x0a020001, 0x0a020001, 0x05020100, 0x0a020001, 0x0a020001 } },
1114 { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } },
1116 { 0x00000003, 0x00000003, 0x0000000b, 0x0000000b, 0x0000000b } },
1118 { 0x1372161c, 0x13721c25, 0x13721722, 0x13721422, 0x13721c25 } },
1120 { 0x0018fa61, 0x0018fa61, 0x00199a65, 0x00199a65, 0x00199a65 } },
1122 { 0x0c98b4e0, 0x0c98b4e0, 0x0c98b0da, 0x0c98b0da, 0x0c98b0da } },
1124 { 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e, 0x7ec80d2e } },
1126 { 0x3139605e, 0x3139605e, 0x3139605e, 0x3139605e, 0x3139605e } },
1128 { 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081 } },
1130 { 0x000007d0, 0x000007d0, 0x0000044c, 0x00000898, 0x000007d0 } },
1132 { 0xf7b81000, 0xf7b81000, 0xf7b80d00, 0xf7b81000, 0xf7b81000 } },
1134 { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 } },
1136 { 0xd6be6788, 0xd6be6788, 0xd03e6788, 0xd03e6788, 0xd03e6788 } },
1138 { 0x00000140, 0x00000140, 0x0052c140, 0x0052c140, 0x0052c140 } },
1140 { 0x1883800a, 0x1883800a, 0x1863800a, 0x1883800a, 0x1883800a } },
1142 { 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf } },
1144 { 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf } },
1146 { 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf } },
1148 { 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf } },
1150 { 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf, 0xa7cfa7cf } },
1379 const struct ath5k_ini *ini_regs,
int change_channel)
1384 for (i = 0; i <
size; i++) {
1387 if (change_channel &&
1412 for (i = 0; i <
size; i++) {
1440 switch (
ah->ah_radio) {
1535 DBG(
"ath5k: unsupported channel mode %d\n",
mode);
#define AR5K_PHY_SPENDING
#define AR5K_DCU_GBL_IFS_EIFS
#define AR5K_PHY_FRAME_CTL_5211
#define AR5K_PHY_SETTLING
#define EINVAL
Invalid argument.
#define AR5K_TUNE_RSSI_THRES
#define AR5K_RX_FILTER_5210
#define AR5K_RATE_DUR(_n)
#define AR5K_PHY_TIMING_3
#define AR5K_PHY_TXPOWER_RATE_MAX
#define AR5K_PHY_AGCCOARSE
#define AR5K_PHY_PCDAC_TXPOWER_BASE
#define AR5K_RX_FILTER_5211
#define AR5K_PHY_TIMING_8
#define AR5K_REG_WAIT(_i)
#define AR5K_PHY_WEAK_OFDM_HIGH_THR
#define AR5K_PHY_CCK_RX_CTL_4
#define AR5K_PHY_PAPD_PROBE
#define AR5K_PHY_MAX_RX_LEN
static const struct ath5k_ini rf2413_ini_common_end[]
uint16_t mode
Acceleration mode.
static const struct ath5k_ini_mode rf5111_ini_mode_end[]
#define AR5K_PHY_WEAK_OFDM_LOW_THR
uint16_t size
Buffer size.
#define AR5K_MCAST_FILTER0_5210
#define AR5K_DCU_GBL_IFS_SLOT
static const struct ath5k_ini rf5112_ini_common_end[]
#define AR5K_PHY_BLUETOOTH
#define AR5K_PHY_BIN_MASK_2
#define AR5K_DCU_GBL_IFS_MISC
#define AR5K_MCAST_FILTER1_5210
#define AR5K_PHY_TXPOWER_RATE1
static const struct ath5k_ini_mode rf2425_ini_mode_end[]
#define AR5K_MCAST_FILTER1_5211
ath5k_hw_get_isr - Get interrupt status
int ath5k_hw_write_initvals(struct ath5k_hw *ah, u8 mode, int change_channel)
#define AR5K_RF_BUFFER_CONTROL_4
static const struct ath5k_ini rf5111_ini_bbgain[]
#define AR5K_PHY_PCDAC_TXPOWER(_n)
#define AR5K_OFDM_FIL_CNT
#define AR5K_DCU_TX_FILTER_CLR
static const struct ath5k_ini_mode ar5212_ini_mode_start[]
#define AR5K_PHY_TIMING_11
#define AR5K_PROFCNT_CYCLE
#define AR5K_FRAME_CTL_QOSM
#define AR5K_TUNE_MIN_TX_FIFO_THRES
#define AR5K_CFP_PERIOD_5211
static const struct ath5k_ini_mode rf2413_ini_mode_end[]
#define AR5K_QUEUE_DFS_LOCAL_IFS(_q)
#define AR5K_TSF_L32_5210
#define AR5K_CFP_DUR_5211
#define AR5K_PHY_TXPOWER_RATE3
static const struct ath5k_ini ar5211_ini[]
#define AR5K_PHY_RFBUS_REQ
static const struct ath5k_ini rf5112_ini_bbgain[]
#define AR5K_PHY_FAST_ADC
static const struct ath5k_ini ar5210_ini[]
#define AR5K_CFP_PERIOD_5210
#define AR5K_PHYERR_CNT2_MASK
#define AR5K_DCU_TX_FILTER_1(_n)
#define AR5K_DEFAULT_ANTENNA
#define AR5K_PHY_TIMING_7
#define AR5K_PHY_HEAVY_CLIP_ENABLE
static const struct ath5k_ini rf5111_ini_common_end[]
enum ath5k_ini::@15 ini_mode
static void ath5k_hw_reg_write(struct ath5k_hw *ah, u32 val, u16 reg)
#define AR5K_PHYERR_CNT1_MASK
#define AR5K_PHY_ACT_DISABLE
#define AR5K_PHY_WARM_RESET
#define AR5K_PHY_BIN_MASK_CTL
static const struct ath5k_ini ar5212_ini_common_start[]
#define AR5K_DCU_TX_FILTER_SET
static const struct ath5k_ini_mode rf5413_ini_mode_end[]
#define AR5K_DIAG_SW_5211
#define AR5K_DCU_GBL_IFS_SIFS
#define AR5K_DIAG_SW_5210
#define AR5K_DCU_TX_FILTER_0(_n)
static const struct ath5k_ini_mode rf5112_ini_mode_end[]
#define AR5K_PHY_GAIN_2GHZ
#define AR5K_PHY_TXPOWER_RATE4
#define AR5K_PHY_BIN_MASK_1
#define AR5K_PHY_CCK_CROSSCORR
static u32 ath5k_hw_reg_read(struct ath5k_hw *ah, u16 reg)
static const struct ath5k_ini rf5413_ini_common_end[]
#define AR5K_PHY_DAG_CCK_CTL
static void ath5k_hw_ini_registers(struct ath5k_hw *ah, unsigned int size, const struct ath5k_ini *ini_regs, int change_channel)
#define DBG(...)
Print a debugging message.
#define AR5K_PHY_DESIRED_SIZE
#define AR5K_PHY_BIN_MASK_3
#define AR5K_QUEUE_TXDP(_q)
static const struct ath5k_ini_mode ar5211_ini_mode[]
static const struct ath5k_ini rf2425_ini_common_end[]
static void ath5k_hw_ini_mode_registers(struct ath5k_hw *ah, unsigned int size, const struct ath5k_ini_mode *ini_mode, u8 mode)
#define AR5K_PHY_CCKTXCTL
#define AR5K_PHY_RX_DELAY
#define AR5K_PROFCNT_RXCLR
#define AR5K_MCAST_FILTER0_5211
#define AR5K_PHY_TXPOWER_RATE2
#define AR5K_CFP_DUR_5210
#define AR5K_PHY_ACT_ENABLE
#define AR5K_PHY_GAIN_OFFSET
#define AR5K_PHY_OFDM_SELFCORR