Lines Matching refs:il
46 #define IL_ERR(f, a...) dev_err(&il->pci_dev->dev, f, ## a)
47 #define IL_WARN(f, a...) dev_warn(&il->pci_dev->dev, f, ## a)
48 #define IL_INFO(f, a...) dev_info(&il->pci_dev->dev, f, ## a)
116 void (*callback) (struct il_priv *il, struct il_device_cmd *cmd,
428 int il_eeprom_init(struct il_priv *il);
429 void il_eeprom_free(struct il_priv *il);
430 const u8 *il_eeprom_query_addr(const struct il_priv *il, size_t offset);
431 u16 il_eeprom_query16(const struct il_priv *il, size_t offset);
432 int il_init_channel_map(struct il_priv *il);
433 void il_free_channel_map(struct il_priv *il);
434 const struct il_channel_info *il_get_channel_info(const struct il_priv *il,
580 void (*callback) (struct il_priv *il, struct il_device_cmd *cmd,
861 void il4965_update_chain_flags(struct il_priv *il);
1147 void (*handlers[IL_CN_MAX]) (struct il_priv *il,
1442 il_txq_ctx_activate(struct il_priv *il, int txq_id) in il_txq_ctx_activate() argument
1444 set_bit(txq_id, &il->txq_ctx_active_msk); in il_txq_ctx_activate()
1448 il_txq_ctx_deactivate(struct il_priv *il, int txq_id) in il_txq_ctx_deactivate() argument
1450 clear_bit(txq_id, &il->txq_ctx_active_msk); in il_txq_ctx_deactivate()
1454 il_is_associated(struct il_priv *il) in il_is_associated() argument
1456 return (il->active.filter_flags & RXON_FILTER_ASSOC_MSK) ? 1 : 0; in il_is_associated()
1460 il_is_any_associated(struct il_priv *il) in il_is_any_associated() argument
1462 return il_is_associated(il); in il_is_any_associated()
1498 __il_free_pages(struct il_priv *il, struct page *page) in __il_free_pages() argument
1500 __free_pages(page, il->hw_params.rx_page_order); in __il_free_pages()
1501 il->alloc_rxb_page--; in __il_free_pages()
1505 il_free_pages(struct il_priv *il, unsigned long page) in il_free_pages() argument
1507 free_pages(page, il->hw_params.rx_page_order); in il_free_pages()
1508 il->alloc_rxb_page--; in il_free_pages()
1547 void (*txq_update_byte_cnt_tbl) (struct il_priv *il,
1550 int (*txq_attach_buf_to_tfd) (struct il_priv *il,
1553 void (*txq_free_tfd) (struct il_priv *il, struct il_tx_queue *txq);
1554 int (*txq_init) (struct il_priv *il, struct il_tx_queue *txq);
1556 void (*init_alive_start) (struct il_priv *il);
1560 int (*load_ucode) (struct il_priv *il);
1562 void (*dump_nic_error_log) (struct il_priv *il);
1563 int (*dump_fh) (struct il_priv *il, char **buf, bool display);
1564 int (*set_channel_switch) (struct il_priv *il,
1567 int (*apm_init) (struct il_priv *il);
1570 int (*send_tx_power) (struct il_priv *il);
1571 void (*update_chain_flags) (struct il_priv *il);
1574 int (*eeprom_acquire_semaphore) (struct il_priv *il);
1575 void (*eeprom_release_semaphore) (struct il_priv *il);
1577 int (*rxon_assoc) (struct il_priv *il);
1578 int (*commit_rxon) (struct il_priv *il);
1579 void (*set_rxon_chain) (struct il_priv *il);
1584 int (*request_scan) (struct il_priv *il, struct ieee80211_vif *vif);
1585 void (*post_scan) (struct il_priv *il);
1586 void (*post_associate) (struct il_priv *il);
1587 void (*config_ap) (struct il_priv *il);
1589 int (*update_bcast_stations) (struct il_priv *il);
1590 int (*manage_ibss_station) (struct il_priv *il,
1593 int (*send_led_cmd) (struct il_priv *il, struct il_led_cmd *led_cmd);
1626 void il_leds_init(struct il_priv *il);
1627 void il_leds_exit(struct il_priv *il);
1706 void il_set_rxon_hwcrypto(struct il_priv *il, int hw_decrypt);
1707 int il_check_rxon_cmd(struct il_priv *il);
1708 int il_full_rxon_required(struct il_priv *il);
1709 int il_set_rxon_channel(struct il_priv *il, struct ieee80211_channel *ch);
1710 void il_set_flags_for_band(struct il_priv *il, enum ieee80211_band band,
1712 u8 il_get_single_channel_number(struct il_priv *il, enum ieee80211_band band);
1713 void il_set_rxon_ht(struct il_priv *il, struct il_ht_config *ht_conf);
1714 bool il_is_ht40_tx_allowed(struct il_priv *il,
1716 void il_connection_init_rx_config(struct il_priv *il);
1717 void il_set_rate(struct il_priv *il);
1718 int il_set_decrypted_flag(struct il_priv *il, struct ieee80211_hdr *hdr,
1720 void il_irq_handle_error(struct il_priv *il);
1728 int il_alloc_txq_mem(struct il_priv *il);
1729 void il_free_txq_mem(struct il_priv *il);
1732 void il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len);
1735 il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len) in il_update_stats() argument
1743 void il_hdl_pm_sleep(struct il_priv *il, struct il_rx_buf *rxb);
1744 void il_hdl_pm_debug_stats(struct il_priv *il, struct il_rx_buf *rxb);
1745 void il_hdl_error(struct il_priv *il, struct il_rx_buf *rxb);
1746 void il_hdl_csa(struct il_priv *il, struct il_rx_buf *rxb);
1751 void il_cmd_queue_unmap(struct il_priv *il);
1752 void il_cmd_queue_free(struct il_priv *il);
1753 int il_rx_queue_alloc(struct il_priv *il);
1754 void il_rx_queue_update_write_ptr(struct il_priv *il, struct il_rx_queue *q);
1756 void il_tx_cmd_complete(struct il_priv *il, struct il_rx_buf *rxb);
1758 void il_hdl_spectrum_measurement(struct il_priv *il, struct il_rx_buf *rxb);
1759 void il_recover_from_stats(struct il_priv *il, struct il_rx_pkt *pkt);
1760 void il_chswitch_done(struct il_priv *il, bool is_success);
1765 void il_txq_update_write_ptr(struct il_priv *il, struct il_tx_queue *txq);
1766 int il_tx_queue_init(struct il_priv *il, u32 txq_id);
1767 void il_tx_queue_reset(struct il_priv *il, u32 txq_id);
1768 void il_tx_queue_unmap(struct il_priv *il, int txq_id);
1769 void il_tx_queue_free(struct il_priv *il, int txq_id);
1770 void il_setup_watchdog(struct il_priv *il);
1774 int il_set_tx_power(struct il_priv *il, s8 tx_power, bool force);
1780 u8 il_get_lowest_plcp(struct il_priv *il);
1785 void il_init_scan_params(struct il_priv *il);
1786 int il_scan_cancel(struct il_priv *il);
1787 int il_scan_cancel_timeout(struct il_priv *il, unsigned long ms);
1788 void il_force_scan_end(struct il_priv *il);
1791 void il_internal_short_hw_scan(struct il_priv *il);
1792 int il_force_reset(struct il_priv *il, bool external);
1793 u16 il_fill_probe_req(struct il_priv *il, struct ieee80211_mgmt *frame,
1795 void il_setup_rx_scan_handlers(struct il_priv *il);
1796 u16 il_get_active_dwell_time(struct il_priv *il, enum ieee80211_band band,
1798 u16 il_get_passive_dwell_time(struct il_priv *il, enum ieee80211_band band,
1800 void il_setup_scan_deferred_work(struct il_priv *il);
1801 void il_cancel_scan_deferred_work(struct il_priv *il);
1819 int __must_check il_send_cmd_sync(struct il_priv *il, struct il_host_cmd *cmd);
1820 int il_send_cmd(struct il_priv *il, struct il_host_cmd *cmd);
1821 int __must_check il_send_cmd_pdu(struct il_priv *il, u8 id, u16 len,
1823 int il_send_cmd_pdu_async(struct il_priv *il, u8 id, u16 len, const void *data,
1824 void (*callback) (struct il_priv *il,
1828 int il_enqueue_hcmd(struct il_priv *il, struct il_host_cmd *cmd);
1835 u32 il_usecs_to_beacons(struct il_priv *il, u32 usec, u32 beacon_interval);
1836 __le32 il_add_beacon_time(struct il_priv *il, u32 base, u32 addon,
1853 void il4965_dump_nic_error_log(struct il_priv *il);
1855 void il_print_rx_config_cmd(struct il_priv *il);
1858 il_print_rx_config_cmd(struct il_priv *il) in il_print_rx_config_cmd() argument
1863 void il_clear_isr_stats(struct il_priv *il);
1868 int il_init_geos(struct il_priv *il);
1869 void il_free_geos(struct il_priv *il);
1893 il_is_ready(struct il_priv *il) in il_is_ready() argument
1897 return test_bit(S_READY, &il->status) && in il_is_ready()
1898 test_bit(S_GEO_CONFIGURED, &il->status) && in il_is_ready()
1899 !test_bit(S_EXIT_PENDING, &il->status); in il_is_ready()
1903 il_is_alive(struct il_priv *il) in il_is_alive() argument
1905 return test_bit(S_ALIVE, &il->status); in il_is_alive()
1909 il_is_init(struct il_priv *il) in il_is_init() argument
1911 return test_bit(S_INIT, &il->status); in il_is_init()
1915 il_is_rfkill(struct il_priv *il) in il_is_rfkill() argument
1917 return test_bit(S_RFKILL, &il->status); in il_is_rfkill()
1921 il_is_ctkill(struct il_priv *il) in il_is_ctkill() argument
1923 return test_bit(S_CT_KILL, &il->status); in il_is_ctkill()
1927 il_is_ready_rf(struct il_priv *il) in il_is_ready_rf() argument
1930 if (il_is_rfkill(il)) in il_is_ready_rf()
1933 return il_is_ready(il); in il_is_ready_rf()
1936 void il_send_bt_config(struct il_priv *il);
1937 int il_send_stats_request(struct il_priv *il, u8 flags, bool clear);
1938 void il_apm_stop(struct il_priv *il);
1939 void _il_apm_stop(struct il_priv *il);
1941 int il_apm_init(struct il_priv *il);
1943 int il_send_rxon_timing(struct il_priv *il);
1946 il_send_rxon_assoc(struct il_priv *il) in il_send_rxon_assoc() argument
1948 return il->ops->rxon_assoc(il); in il_send_rxon_assoc()
1952 il_commit_rxon(struct il_priv *il) in il_commit_rxon() argument
1954 return il->ops->commit_rxon(il); in il_commit_rxon()
1958 il_get_hw_mode(struct il_priv *il, enum ieee80211_band band) in il_get_hw_mode() argument
1960 return il->hw->wiphy->bands[band]; in il_get_hw_mode()
1968 void il_tx_cmd_protection(struct il_priv *il, struct ieee80211_tx_info *info,
1975 bool _il_grab_nic_access(struct il_priv *il);
1976 int _il_poll_bit(struct il_priv *il, u32 addr, u32 bits, u32 mask, int timeout);
1977 int il_poll_bit(struct il_priv *il, u32 addr, u32 mask, int timeout);
1978 u32 il_rd_prph(struct il_priv *il, u32 reg);
1979 void il_wr_prph(struct il_priv *il, u32 addr, u32 val);
1980 u32 il_read_targ_mem(struct il_priv *il, u32 addr);
1981 void il_write_targ_mem(struct il_priv *il, u32 addr, u32 val);
1983 static inline bool il_need_reclaim(struct il_priv *il, struct il_rx_pkt *pkt) in il_need_reclaim() argument
1998 _il_write8(struct il_priv *il, u32 ofs, u8 val) in _il_write8() argument
2000 writeb(val, il->hw_base + ofs); in _il_write8()
2002 #define il_write8(il, ofs, val) _il_write8(il, ofs, val) argument
2005 _il_wr(struct il_priv *il, u32 ofs, u32 val) in _il_wr() argument
2007 writel(val, il->hw_base + ofs); in _il_wr()
2011 _il_rd(struct il_priv *il, u32 ofs) in _il_rd() argument
2013 return readl(il->hw_base + ofs); in _il_rd()
2017 _il_clear_bit(struct il_priv *il, u32 reg, u32 mask) in _il_clear_bit() argument
2019 _il_wr(il, reg, _il_rd(il, reg) & ~mask); in _il_clear_bit()
2023 _il_set_bit(struct il_priv *il, u32 reg, u32 mask) in _il_set_bit() argument
2025 _il_wr(il, reg, _il_rd(il, reg) | mask); in _il_set_bit()
2029 _il_release_nic_access(struct il_priv *il) in _il_release_nic_access() argument
2031 _il_clear_bit(il, CSR_GP_CNTRL, CSR_GP_CNTRL_REG_FLAG_MAC_ACCESS_REQ); in _il_release_nic_access()
2042 il_rd(struct il_priv *il, u32 reg) in il_rd() argument
2047 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_rd()
2048 _il_grab_nic_access(il); in il_rd()
2049 value = _il_rd(il, reg); in il_rd()
2050 _il_release_nic_access(il); in il_rd()
2051 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_rd()
2056 il_wr(struct il_priv *il, u32 reg, u32 value) in il_wr() argument
2060 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_wr()
2061 if (likely(_il_grab_nic_access(il))) { in il_wr()
2062 _il_wr(il, reg, value); in il_wr()
2063 _il_release_nic_access(il); in il_wr()
2065 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_wr()
2069 _il_rd_prph(struct il_priv *il, u32 reg) in _il_rd_prph() argument
2071 _il_wr(il, HBUS_TARG_PRPH_RADDR, reg | (3 << 24)); in _il_rd_prph()
2072 return _il_rd(il, HBUS_TARG_PRPH_RDAT); in _il_rd_prph()
2076 _il_wr_prph(struct il_priv *il, u32 addr, u32 val) in _il_wr_prph() argument
2078 _il_wr(il, HBUS_TARG_PRPH_WADDR, ((addr & 0x0000FFFF) | (3 << 24))); in _il_wr_prph()
2079 _il_wr(il, HBUS_TARG_PRPH_WDAT, val); in _il_wr_prph()
2083 il_set_bits_prph(struct il_priv *il, u32 reg, u32 mask) in il_set_bits_prph() argument
2087 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_set_bits_prph()
2088 if (likely(_il_grab_nic_access(il))) { in il_set_bits_prph()
2089 _il_wr_prph(il, reg, (_il_rd_prph(il, reg) | mask)); in il_set_bits_prph()
2090 _il_release_nic_access(il); in il_set_bits_prph()
2092 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_set_bits_prph()
2096 il_set_bits_mask_prph(struct il_priv *il, u32 reg, u32 bits, u32 mask) in il_set_bits_mask_prph() argument
2100 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_set_bits_mask_prph()
2101 if (likely(_il_grab_nic_access(il))) { in il_set_bits_mask_prph()
2102 _il_wr_prph(il, reg, ((_il_rd_prph(il, reg) & mask) | bits)); in il_set_bits_mask_prph()
2103 _il_release_nic_access(il); in il_set_bits_mask_prph()
2105 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_set_bits_mask_prph()
2109 il_clear_bits_prph(struct il_priv *il, u32 reg, u32 mask) in il_clear_bits_prph() argument
2114 spin_lock_irqsave(&il->reg_lock, reg_flags); in il_clear_bits_prph()
2115 if (likely(_il_grab_nic_access(il))) { in il_clear_bits_prph()
2116 val = _il_rd_prph(il, reg); in il_clear_bits_prph()
2117 _il_wr_prph(il, reg, (val & ~mask)); in il_clear_bits_prph()
2118 _il_release_nic_access(il); in il_clear_bits_prph()
2120 spin_unlock_irqrestore(&il->reg_lock, reg_flags); in il_clear_bits_prph()
2134 void il_restore_stations(struct il_priv *il);
2135 void il_clear_ucode_stations(struct il_priv *il);
2136 void il_dealloc_bcast_stations(struct il_priv *il);
2137 int il_get_free_ucode_key_idx(struct il_priv *il);
2138 int il_send_add_sta(struct il_priv *il, struct il_addsta_cmd *sta, u8 flags);
2139 int il_add_station_common(struct il_priv *il, const u8 *addr, bool is_ap,
2141 int il_remove_station(struct il_priv *il, const u8 sta_id, const u8 * addr);
2145 u8 il_prep_station(struct il_priv *il, const u8 *addr, bool is_ap,
2148 int il_send_lq_cmd(struct il_priv *il, struct il_link_quality_cmd *lq,
2161 il_clear_driver_stations(struct il_priv *il) in il_clear_driver_stations() argument
2165 spin_lock_irqsave(&il->sta_lock, flags); in il_clear_driver_stations()
2166 memset(il->stations, 0, sizeof(il->stations)); in il_clear_driver_stations()
2167 il->num_stations = 0; in il_clear_driver_stations()
2168 il->ucode_key_table = 0; in il_clear_driver_stations()
2169 spin_unlock_irqrestore(&il->sta_lock, flags); in il_clear_driver_stations()
2193 il_sta_id_or_broadcast(struct il_priv *il, struct ieee80211_sta *sta) in il_sta_id_or_broadcast() argument
2198 return il->hw_params.bcast_id; in il_sta_id_or_broadcast()
2278 _il_wake_queue(struct il_priv *il, u8 ac) in _il_wake_queue() argument
2280 if (atomic_dec_return(&il->queue_stop_count[ac]) <= 0) in _il_wake_queue()
2281 ieee80211_wake_queue(il->hw, ac); in _il_wake_queue()
2285 _il_stop_queue(struct il_priv *il, u8 ac) in _il_stop_queue() argument
2287 if (atomic_inc_return(&il->queue_stop_count[ac]) > 0) in _il_stop_queue()
2288 ieee80211_stop_queue(il->hw, ac); in _il_stop_queue()
2291 il_wake_queue(struct il_priv *il, struct il_tx_queue *txq) in il_wake_queue() argument
2297 if (test_and_clear_bit(hwq, il->queue_stopped)) in il_wake_queue()
2298 _il_wake_queue(il, ac); in il_wake_queue()
2302 il_stop_queue(struct il_priv *il, struct il_tx_queue *txq) in il_stop_queue() argument
2308 if (!test_and_set_bit(hwq, il->queue_stopped)) in il_stop_queue()
2309 _il_stop_queue(il, ac); in il_stop_queue()
2313 il_wake_queues_by_reason(struct il_priv *il, int reason) in il_wake_queues_by_reason() argument
2317 if (test_and_clear_bit(reason, &il->stop_reason)) in il_wake_queues_by_reason()
2319 _il_wake_queue(il, ac); in il_wake_queues_by_reason()
2323 il_stop_queues_by_reason(struct il_priv *il, int reason) in il_stop_queues_by_reason() argument
2327 if (!test_and_set_bit(reason, &il->stop_reason)) in il_stop_queues_by_reason()
2329 _il_stop_queue(il, ac); in il_stop_queues_by_reason()
2345 il_disable_interrupts(struct il_priv *il) in il_disable_interrupts() argument
2347 clear_bit(S_INT_ENABLED, &il->status); in il_disable_interrupts()
2350 _il_wr(il, CSR_INT_MASK, 0x00000000); in il_disable_interrupts()
2354 _il_wr(il, CSR_INT, 0xffffffff); in il_disable_interrupts()
2355 _il_wr(il, CSR_FH_INT_STATUS, 0xffffffff); in il_disable_interrupts()
2359 il_enable_rfkill_int(struct il_priv *il) in il_enable_rfkill_int() argument
2361 _il_wr(il, CSR_INT_MASK, CSR_INT_BIT_RF_KILL); in il_enable_rfkill_int()
2365 il_enable_interrupts(struct il_priv *il) in il_enable_interrupts() argument
2367 set_bit(S_INT_ENABLED, &il->status); in il_enable_interrupts()
2368 _il_wr(il, CSR_INT_MASK, il->inta_mask); in il_enable_interrupts()
2377 il_beacon_time_mask_low(struct il_priv *il, u16 tsf_bits) in il_beacon_time_mask_low() argument
2388 il_beacon_time_mask_high(struct il_priv *il, u16 tsf_bits) in il_beacon_time_mask_high() argument
2890 void il4965_rs_rate_init(struct il_priv *il, struct ieee80211_sta *sta,
2892 void il3945_rs_rate_init(struct il_priv *il, struct ieee80211_sta *sta,
2917 int il_power_update_mode(struct il_priv *il, bool force);
2918 void il_power_initialize(struct il_priv *il);
2931 il_get_debug_level(struct il_priv *il) in il_get_debug_level() argument
2933 if (il->debug_level) in il_get_debug_level()
2934 return il->debug_level; in il_get_debug_level()
2940 il_get_debug_level(struct il_priv *il) in il_get_debug_level() argument
2946 #define il_print_hex_error(il, p, len) \ argument
2955 if (il_get_debug_level(il) & level) \
2956 dev_err(&il->hw->wiphy->dev, "%c %s " fmt, \
2960 #define il_print_hex_dump(il, level, p, len) \ argument
2962 if (il_get_debug_level(il) & level) \
2970 il_print_hex_dump(struct il_priv *il, int level, const void *p, u32 len) in il_print_hex_dump() argument
2976 int il_dbgfs_register(struct il_priv *il, const char *name);
2977 void il_dbgfs_unregister(struct il_priv *il);
2980 il_dbgfs_register(struct il_priv *il, const char *name) in il_dbgfs_register() argument
2986 il_dbgfs_unregister(struct il_priv *il) in il_dbgfs_unregister() argument