Lines Matching refs:il
31 #define IL_ERR(f, a...) dev_err(&il->pci_dev->dev, f, ## a)
32 #define IL_WARN(f, a...) dev_warn(&il->pci_dev->dev, f, ## a)
33 #define IL_WARN_ONCE(f, a...) dev_warn_once(&il->pci_dev->dev, f, ## a)
34 #define IL_INFO(f, a...) dev_info(&il->pci_dev->dev, f, ## a)
102 void (*callback) (struct il_priv *il, struct il_device_cmd *cmd,
414 int il_eeprom_init(struct il_priv *il);
415 void il_eeprom_free(struct il_priv *il);
416 const u8 *il_eeprom_query_addr(const struct il_priv *il, size_t offset);
417 u16 il_eeprom_query16(const struct il_priv *il, size_t offset);
418 int il_init_channel_map(struct il_priv *il);
419 void il_free_channel_map(struct il_priv *il);
420 const struct il_channel_info *il_get_channel_info(const struct il_priv *il,
566 void (*callback) (struct il_priv *il, struct il_device_cmd *cmd,
844 void il4965_update_chain_flags(struct il_priv *il);
1130 void (*handlers[IL_CN_MAX]) (struct il_priv *il,
1425 il_txq_ctx_activate(struct il_priv *il, int txq_id) in il_txq_ctx_activate() argument
1427 set_bit(txq_id, &il->txq_ctx_active_msk); in il_txq_ctx_activate()
1431 il_txq_ctx_deactivate(struct il_priv *il, int txq_id) in il_txq_ctx_deactivate() argument
1433 clear_bit(txq_id, &il->txq_ctx_active_msk); in il_txq_ctx_deactivate()
1437 il_is_associated(struct il_priv *il) in il_is_associated() argument
1439 return (il->active.filter_flags & RXON_FILTER_ASSOC_MSK) ? 1 : 0; in il_is_associated()
1443 il_is_any_associated(struct il_priv *il) in il_is_any_associated() argument
1445 return il_is_associated(il); in il_is_any_associated()
1481 __il_free_pages(struct il_priv *il, struct page *page) in __il_free_pages() argument
1483 __free_pages(page, il->hw_params.rx_page_order); in __il_free_pages()
1484 il->alloc_rxb_page--; in __il_free_pages()
1488 il_free_pages(struct il_priv *il, unsigned long page) in il_free_pages() argument
1490 free_pages(page, il->hw_params.rx_page_order); in il_free_pages()
1491 il->alloc_rxb_page--; in il_free_pages()
1530 void (*txq_update_byte_cnt_tbl) (struct il_priv *il,
1533 int (*txq_attach_buf_to_tfd) (struct il_priv *il,
1536 void (*txq_free_tfd) (struct il_priv *il, struct il_tx_queue *txq);
1537 int (*txq_init) (struct il_priv *il, struct il_tx_queue *txq);
1539 void (*init_alive_start) (struct il_priv *il);
1543 int (*load_ucode) (struct il_priv *il);
1545 void (*dump_nic_error_log) (struct il_priv *il);
1546 int (*dump_fh) (struct il_priv *il, char **buf, bool display);
1547 int (*set_channel_switch) (struct il_priv *il,
1550 int (*apm_init) (struct il_priv *il);
1553 int (*send_tx_power) (struct il_priv *il);
1554 void (*update_chain_flags) (struct il_priv *il);
1557 int (*eeprom_acquire_semaphore) (struct il_priv *il);
1558 void (*eeprom_release_semaphore) (struct il_priv *il);
1560 int (*rxon_assoc) (struct il_priv *il);
1561 int (*commit_rxon) (struct il_priv *il);
1562 void (*set_rxon_chain) (struct il_priv *il);
1567 int (*request_scan) (struct il_priv *il, struct ieee80211_vif *vif);
1568 void (*post_scan) (struct il_priv *il);
1569 void (*post_associate) (struct il_priv *il);
1570 void (*config_ap) (struct il_priv *il);
1572 int (*update_bcast_stations) (struct il_priv *il);
1573 int (*manage_ibss_station) (struct il_priv *il,
1576 int (*send_led_cmd) (struct il_priv *il, struct il_led_cmd *led_cmd);
1609 void il_leds_init(struct il_priv *il);
1610 void il_leds_exit(struct il_priv *il);
1689 void il_set_rxon_hwcrypto(struct il_priv *il, int hw_decrypt);
1690 int il_check_rxon_cmd(struct il_priv *il);
1691 int il_full_rxon_required(struct il_priv *il);
1692 int il_set_rxon_channel(struct il_priv *il, struct ieee80211_channel *ch);
1693 void il_set_flags_for_band(struct il_priv *il, enum nl80211_band band,
1695 u8 il_get_single_channel_number(struct il_priv *il, enum nl80211_band band);
1696 void il_set_rxon_ht(struct il_priv *il, struct il_ht_config *ht_conf);
1697 bool il_is_ht40_tx_allowed(struct il_priv *il,
1699 void il_connection_init_rx_config(struct il_priv *il);
1700 void il_set_rate(struct il_priv *il);
1701 int il_set_decrypted_flag(struct il_priv *il, struct ieee80211_hdr *hdr,
1703 void il_irq_handle_error(struct il_priv *il);
1711 int il_alloc_txq_mem(struct il_priv *il);
1712 void il_free_txq_mem(struct il_priv *il);
1715 void il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len);
1718 il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len) in il_update_stats() argument
1726 void il_hdl_pm_sleep(struct il_priv *il, struct il_rx_buf *rxb);
1727 void il_hdl_pm_debug_stats(struct il_priv *il, struct il_rx_buf *rxb);
1728 void il_hdl_error(struct il_priv *il, struct il_rx_buf *rxb);
1729 void il_hdl_csa(struct il_priv *il, struct il_rx_buf *rxb);
1734 void il_cmd_queue_unmap(struct il_priv *il);
1735 void il_cmd_queue_free(struct il_priv *il);
1736 int il_rx_queue_alloc(struct il_priv *il);
1737 void il_rx_queue_update_write_ptr(struct il_priv *il, struct il_rx_queue *q);
1739 void il_tx_cmd_complete(struct il_priv *il, struct il_rx_buf *rxb);
1741 void il_hdl_spectrum_measurement(struct il_priv *il, struct il_rx_buf *rxb);
1742 void il_recover_from_stats(struct il_priv *il, struct il_rx_pkt *pkt);
1743 void il_chswitch_done(struct il_priv *il, bool is_success);
1748 void il_txq_update_write_ptr(struct il_priv *il, struct il_tx_queue *txq);
1749 int il_tx_queue_init(struct il_priv *il, u32 txq_id);
1750 void il_tx_queue_reset(struct il_priv *il, u32 txq_id);
1751 void il_tx_queue_unmap(struct il_priv *il, int txq_id);
1752 void il_tx_queue_free(struct il_priv *il, int txq_id);
1753 void il_setup_watchdog(struct il_priv *il);
1757 int il_set_tx_power(struct il_priv *il, s8 tx_power, bool force);
1763 u8 il_get_lowest_plcp(struct il_priv *il);
1768 void il_init_scan_params(struct il_priv *il);
1769 int il_scan_cancel(struct il_priv *il);
1770 int il_scan_cancel_timeout(struct il_priv *il, unsigned long ms);
1771 void il_force_scan_end(struct il_priv *il);
1774 void il_internal_short_hw_scan(struct il_priv *il);
1775 int il_force_reset(struct il_priv *il, bool external);
1776 u16 il_fill_probe_req(struct il_priv *il, struct ieee80211_mgmt *frame,
1778 void il_setup_rx_scan_handlers(struct il_priv *il);
1779 u16 il_get_active_dwell_time(struct il_priv *il, enum nl80211_band band,
1781 u16 il_get_passive_dwell_time(struct il_priv *il, enum nl80211_band band,
1783 void il_setup_scan_deferred_work(struct il_priv *il);
1784 void il_cancel_scan_deferred_work(struct il_priv *il);
1802 int __must_check il_send_cmd_sync(struct il_priv *il, struct il_host_cmd *cmd);
1803 int il_send_cmd(struct il_priv *il, struct il_host_cmd *cmd);
1804 int __must_check il_send_cmd_pdu(struct il_priv *il, u8 id, u16 len,
1806 int il_send_cmd_pdu_async(struct il_priv *il, u8 id, u16 len, const void *data,
1807 void (*callback) (struct il_priv *il,
1811 int il_enqueue_hcmd(struct il_priv *il, struct il_host_cmd *cmd);
1818 u32 il_usecs_to_beacons(struct il_priv *il, u32 usec, u32 beacon_interval);
1819 __le32 il_add_beacon_time(struct il_priv *il, u32 base, u32 addon,
1836 void il4965_dump_nic_error_log(struct il_priv *il);
1838 void il_print_rx_config_cmd(struct il_priv *il);
1841 il_print_rx_config_cmd(struct il_priv *il) in il_print_rx_config_cmd() argument
1846 void il_clear_isr_stats(struct il_priv *il);
1851 int il_init_geos(struct il_priv *il);
1852 void il_free_geos(struct il_priv *il);
1876 il_is_ready(struct il_priv *il) in il_is_ready() argument
1880 return test_bit(S_READY, &il->status) && in il_is_ready()
1881 test_bit(S_GEO_CONFIGURED, &il->status) && in il_is_ready()
1882 !test_bit(S_EXIT_PENDING, &il->status); in il_is_ready()
1886 il_is_alive(struct il_priv *il) in il_is_alive() argument
1888 return test_bit(S_ALIVE, &il->status); in il_is_alive()
1892 il_is_init(struct il_priv *il) in il_is_init() argument
1894 return test_bit(S_INIT, &il->status); in il_is_init()
1898 il_is_rfkill(struct il_priv *il) in il_is_rfkill() argument
1900 return test_bit(S_RFKILL, &il->status); in il_is_rfkill()
1904 il_is_ctkill(struct il_priv *il) in il_is_ctkill() argument
1906 return test_bit(S_CT_KILL, &il->status); in il_is_ctkill()
1910 il_is_ready_rf(struct il_priv *il) in il_is_ready_rf() argument
1913 if (il_is_rfkill(il)) in il_is_ready_rf()
1916 return il_is_ready(il); in il_is_ready_rf()
1919 void il_send_bt_config(struct il_priv *il);
1920 int il_send_stats_request(struct il_priv *il, u8 flags, bool clear);
1921 void il_apm_stop(struct il_priv *il);
1922 void _il_apm_stop(struct il_priv *il);
1924 int il_apm_init(struct il_priv *il);
1926 int il_send_rxon_timing(struct il_priv *il);
1929 il_send_rxon_assoc(struct il_priv *il) in il_send_rxon_assoc() argument
1931 return il->ops->rxon_assoc(il); in il_send_rxon_assoc()
1935 il_commit_rxon(struct il_priv *il) in il_commit_rxon() argument
1937 return il->ops->commit_rxon(il); in il_commit_rxon()
1941 il_get_hw_mode(struct il_priv *il, enum nl80211_band band) in il_get_hw_mode() argument
1943 return il->hw->wiphy->bands[band]; in il_get_hw_mode()
1951 void il_tx_cmd_protection(struct il_priv *il, struct ieee80211_tx_info *info,
1958 bool _il_grab_nic_access(struct il_priv *il);
1959 int _il_poll_bit(struct il_priv *il, u32 addr, u32 bits, u32 mask, int timeout);
1960 int il_poll_bit(struct il_priv *il, u32 addr, u32 mask, int timeout);
1961 u32 il_rd_prph(struct il_priv *il, u32 reg);
1962 void il_wr_prph(struct il_priv *il, u32 addr, u32 val);
1963 u32 il_read_targ_mem(struct il_priv *il, u32 addr);
1964 void il_write_targ_mem(struct il_priv *il, u32 addr, u32 val);
1966 static inline bool il_need_reclaim(struct il_priv *il, struct il_rx_pkt *pkt) in il_need_reclaim() argument
1981 _il_write8(struct il_priv *il, u32 ofs, u8 val) in _il_write8() argument
1983 writeb(val, il->hw_base + ofs); in _il_write8()
1985 #define il_write8(il, ofs, val) _il_write8(il, ofs, val) argument
1988 _il_wr(struct il_priv *il, u32 ofs, u32 val) in _il_wr() argument
1990 writel(val, il->hw_base + ofs); in _il_wr()
1994 _il_rd(struct il_priv *il, u32 ofs) in _il_rd() argument
1996 return readl(il->hw_base + ofs); in _il_rd()
2000 _il_clear_bit(struct il_priv *il, u32 reg, u32 mask) in _il_clear_bit() argument
2002 _il_wr(il, reg, _il_rd(il, reg) & ~mask); in _il_clear_bit()
2006 _il_set_bit(struct il_priv *il, u32 reg, u32 mask) in _il_set_bit() argument
2008 _il_wr(il, reg, _il_rd(il, reg) | mask); in _il_set_bit()
2012 _il_release_nic_access(struct il_priv *il) in _il_release_nic_access() argument
2014 _il_clear_bit(il, CSR_GP_CNTRL, CSR_GP_CNTRL_REG_FLAG_MAC_ACCESS_REQ); in _il_release_nic_access()
2018 il_rd(struct il_priv *il, u32 reg) in il_rd() argument
2023 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_rd()
2024 _il_grab_nic_access(il); in il_rd()
2025 value = _il_rd(il, reg); in il_rd()
2026 _il_release_nic_access(il); in il_rd()
2027 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_rd()
2032 il_wr(struct il_priv *il, u32 reg, u32 value) in il_wr() argument
2036 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_wr()
2037 if (likely(_il_grab_nic_access(il))) { in il_wr()
2038 _il_wr(il, reg, value); in il_wr()
2039 _il_release_nic_access(il); in il_wr()
2041 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_wr()
2045 _il_rd_prph(struct il_priv *il, u32 reg) in _il_rd_prph() argument
2047 _il_wr(il, HBUS_TARG_PRPH_RADDR, reg | (3 << 24)); in _il_rd_prph()
2048 return _il_rd(il, HBUS_TARG_PRPH_RDAT); in _il_rd_prph()
2052 _il_wr_prph(struct il_priv *il, u32 addr, u32 val) in _il_wr_prph() argument
2054 _il_wr(il, HBUS_TARG_PRPH_WADDR, ((addr & 0x0000FFFF) | (3 << 24))); in _il_wr_prph()
2055 _il_wr(il, HBUS_TARG_PRPH_WDAT, val); in _il_wr_prph()
2059 il_set_bits_prph(struct il_priv *il, u32 reg, u32 mask) in il_set_bits_prph() argument
2063 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_set_bits_prph()
2064 if (likely(_il_grab_nic_access(il))) { in il_set_bits_prph()
2065 _il_wr_prph(il, reg, (_il_rd_prph(il, reg) | mask)); in il_set_bits_prph()
2066 _il_release_nic_access(il); in il_set_bits_prph()
2068 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_set_bits_prph()
2072 il_set_bits_mask_prph(struct il_priv *il, u32 reg, u32 bits, u32 mask) in il_set_bits_mask_prph() argument
2076 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_set_bits_mask_prph()
2077 if (likely(_il_grab_nic_access(il))) { in il_set_bits_mask_prph()
2078 _il_wr_prph(il, reg, ((_il_rd_prph(il, reg) & mask) | bits)); in il_set_bits_mask_prph()
2079 _il_release_nic_access(il); in il_set_bits_mask_prph()
2081 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_set_bits_mask_prph()
2085 il_clear_bits_prph(struct il_priv *il, u32 reg, u32 mask) in il_clear_bits_prph() argument
2090 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_clear_bits_prph()
2091 if (likely(_il_grab_nic_access(il))) { in il_clear_bits_prph()
2092 val = _il_rd_prph(il, reg); in il_clear_bits_prph()
2093 _il_wr_prph(il, reg, (val & ~mask)); in il_clear_bits_prph()
2094 _il_release_nic_access(il); in il_clear_bits_prph()
2096 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_clear_bits_prph()
2110 void il_restore_stations(struct il_priv *il);
2111 void il_clear_ucode_stations(struct il_priv *il);
2112 void il_dealloc_bcast_stations(struct il_priv *il);
2113 int il_get_free_ucode_key_idx(struct il_priv *il);
2114 int il_send_add_sta(struct il_priv *il, struct il_addsta_cmd *sta, u8 flags);
2115 int il_add_station_common(struct il_priv *il, const u8 *addr, bool is_ap,
2117 int il_remove_station(struct il_priv *il, const u8 sta_id, const u8 * addr);
2121 u8 il_prep_station(struct il_priv *il, const u8 *addr, bool is_ap,
2124 int il_send_lq_cmd(struct il_priv *il, struct il_link_quality_cmd *lq,
2137 il_clear_driver_stations(struct il_priv *il) in il_clear_driver_stations() argument
2141 spin_lock_irqsave(&il->sta_lock, flags); in il_clear_driver_stations()
2142 memset(il->stations, 0, sizeof(il->stations)); in il_clear_driver_stations()
2143 il->num_stations = 0; in il_clear_driver_stations()
2144 il->ucode_key_table = 0; in il_clear_driver_stations()
2145 spin_unlock_irqrestore(&il->sta_lock, flags); in il_clear_driver_stations()
2169 il_sta_id_or_broadcast(struct il_priv *il, struct ieee80211_sta *sta) in il_sta_id_or_broadcast() argument
2174 return il->hw_params.bcast_id; in il_sta_id_or_broadcast()
2254 _il_wake_queue(struct il_priv *il, u8 ac) in _il_wake_queue() argument
2256 if (atomic_dec_return(&il->queue_stop_count[ac]) <= 0) in _il_wake_queue()
2257 ieee80211_wake_queue(il->hw, ac); in _il_wake_queue()
2261 _il_stop_queue(struct il_priv *il, u8 ac) in _il_stop_queue() argument
2263 if (atomic_inc_return(&il->queue_stop_count[ac]) > 0) in _il_stop_queue()
2264 ieee80211_stop_queue(il->hw, ac); in _il_stop_queue()
2267 il_wake_queue(struct il_priv *il, struct il_tx_queue *txq) in il_wake_queue() argument
2273 if (test_and_clear_bit(hwq, il->queue_stopped)) in il_wake_queue()
2274 _il_wake_queue(il, ac); in il_wake_queue()
2278 il_stop_queue(struct il_priv *il, struct il_tx_queue *txq) in il_stop_queue() argument
2284 if (!test_and_set_bit(hwq, il->queue_stopped)) in il_stop_queue()
2285 _il_stop_queue(il, ac); in il_stop_queue()
2289 il_wake_queues_by_reason(struct il_priv *il, int reason) in il_wake_queues_by_reason() argument
2293 if (test_and_clear_bit(reason, &il->stop_reason)) in il_wake_queues_by_reason()
2295 _il_wake_queue(il, ac); in il_wake_queues_by_reason()
2299 il_stop_queues_by_reason(struct il_priv *il, int reason) in il_stop_queues_by_reason() argument
2303 if (!test_and_set_bit(reason, &il->stop_reason)) in il_stop_queues_by_reason()
2305 _il_stop_queue(il, ac); in il_stop_queues_by_reason()
2321 il_disable_interrupts(struct il_priv *il) in il_disable_interrupts() argument
2323 clear_bit(S_INT_ENABLED, &il->status); in il_disable_interrupts()
2326 _il_wr(il, CSR_INT_MASK, 0x00000000); in il_disable_interrupts()
2330 _il_wr(il, CSR_INT, 0xffffffff); in il_disable_interrupts()
2331 _il_wr(il, CSR_FH_INT_STATUS, 0xffffffff); in il_disable_interrupts()
2335 il_enable_rfkill_int(struct il_priv *il) in il_enable_rfkill_int() argument
2337 _il_wr(il, CSR_INT_MASK, CSR_INT_BIT_RF_KILL); in il_enable_rfkill_int()
2341 il_enable_interrupts(struct il_priv *il) in il_enable_interrupts() argument
2343 set_bit(S_INT_ENABLED, &il->status); in il_enable_interrupts()
2344 _il_wr(il, CSR_INT_MASK, il->inta_mask); in il_enable_interrupts()
2353 il_beacon_time_mask_low(struct il_priv *il, u16 tsf_bits) in il_beacon_time_mask_low() argument
2364 il_beacon_time_mask_high(struct il_priv *il, u16 tsf_bits) in il_beacon_time_mask_high() argument
2862 void il4965_rs_rate_init(struct il_priv *il, struct ieee80211_sta *sta,
2864 void il3945_rs_rate_init(struct il_priv *il, struct ieee80211_sta *sta,
2889 int il_power_update_mode(struct il_priv *il, bool force);
2890 void il_power_initialize(struct il_priv *il);
2903 il_get_debug_level(struct il_priv *il) in il_get_debug_level() argument
2905 if (il->debug_level) in il_get_debug_level()
2906 return il->debug_level; in il_get_debug_level()
2912 il_get_debug_level(struct il_priv *il) in il_get_debug_level() argument
2918 #define il_print_hex_error(il, p, len) \ argument
2927 if (il_get_debug_level(il) & level) \
2928 dev_err(&il->hw->wiphy->dev, "%s " fmt, __func__, \
2932 #define il_print_hex_dump(il, level, p, len) \ argument
2934 if (il_get_debug_level(il) & level) \
2942 il_print_hex_dump(struct il_priv *il, int level, const void *p, u32 len) in il_print_hex_dump() argument
2948 void il_dbgfs_register(struct il_priv *il, const char *name);
2949 void il_dbgfs_unregister(struct il_priv *il);
2951 static inline void il_dbgfs_register(struct il_priv *il, const char *name) in il_dbgfs_register() argument
2956 il_dbgfs_unregister(struct il_priv *il) in il_dbgfs_unregister() argument