linux/drivers/staging/rtlwifi/btcoexist/rtl_btc.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/******************************************************************************
   3 *
   4 * Copyright(c) 2009-2010  Realtek Corporation.
   5 *
   6 * Contact Information:
   7 * wlanfae <wlanfae@realtek.com>
   8 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
   9 * Hsinchu 300, Taiwan.
  10 * Larry Finger <Larry.Finger@lwfinger.net>
  11 *
  12 *****************************************************************************/
  13
  14#ifndef __RTL_BTC_H__
  15#define __RTL_BTC_H__
  16
  17#include "halbt_precomp.h"
  18
  19void rtl_btc_init_variables(struct rtl_priv *rtlpriv);
  20void rtl_btc_init_variables_wifi_only(struct rtl_priv *rtlpriv);
  21void rtl_btc_deinit_variables(struct rtl_priv *rtlpriv);
  22void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv);
  23void rtl_btc_power_on_setting(struct rtl_priv *rtlpriv);
  24void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv);
  25void rtl_btc_init_hw_config_wifi_only(struct rtl_priv *rtlpriv);
  26void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type);
  27void rtl_btc_lps_notify(struct rtl_priv *rtlpriv, u8 type);
  28void rtl_btc_scan_notify(struct rtl_priv *rtlpriv, u8 scantype);
  29void rtl_btc_scan_notify_wifi_only(struct rtl_priv *rtlpriv, u8 scantype);
  30void rtl_btc_connect_notify(struct rtl_priv *rtlpriv, u8 action);
  31void rtl_btc_mediastatus_notify(struct rtl_priv *rtlpriv,
  32                                enum rt_media_status mstatus);
  33void rtl_btc_periodical(struct rtl_priv *rtlpriv);
  34void rtl_btc_halt_notify(struct rtl_priv *rtlpriv);
  35void rtl_btc_btinfo_notify(struct rtl_priv *rtlpriv, u8 *tmpbuf, u8 length);
  36void rtl_btc_btmpinfo_notify(struct rtl_priv *rtlpriv, u8 *tmp_buf, u8 length);
  37bool rtl_btc_is_limited_dig(struct rtl_priv *rtlpriv);
  38bool rtl_btc_is_disable_edca_turbo(struct rtl_priv *rtlpriv);
  39bool rtl_btc_is_bt_disabled(struct rtl_priv *rtlpriv);
  40void rtl_btc_special_packet_notify(struct rtl_priv *rtlpriv, u8 pkt_type);
  41void rtl_btc_switch_band_notify(struct rtl_priv *rtlpriv, u8 band_type,
  42                                bool scanning);
  43void rtl_btc_switch_band_notify_wifionly(struct rtl_priv *rtlpriv, u8 band_type,
  44                                         bool scanning);
  45void rtl_btc_display_bt_coex_info(struct rtl_priv *rtlpriv, struct seq_file *m);
  46void rtl_btc_record_pwr_mode(struct rtl_priv *rtlpriv, u8 *buf, u8 len);
  47u8   rtl_btc_get_lps_val(struct rtl_priv *rtlpriv);
  48u8   rtl_btc_get_rpwm_val(struct rtl_priv *rtlpriv);
  49bool rtl_btc_is_bt_ctrl_lps(struct rtl_priv *rtlpriv);
  50bool rtl_btc_is_bt_lps_on(struct rtl_priv *rtlpriv);
  51void rtl_btc_get_ampdu_cfg(struct rtl_priv *rtlpriv, u8 *reject_agg,
  52                           u8 *ctrl_agg_size, u8 *agg_size);
  53
  54struct rtl_btc_ops *rtl_btc_get_ops_pointer(void);
  55
  56u8 rtl_get_hwpg_bt_exist(struct rtl_priv *rtlpriv);
  57u8 rtl_get_hwpg_bt_type(struct rtl_priv *rtlpriv);
  58u8 rtl_get_hwpg_ant_num(struct rtl_priv *rtlpriv);
  59u8 rtl_get_hwpg_single_ant_path(struct rtl_priv *rtlpriv);
  60u8 rtl_get_hwpg_package_type(struct rtl_priv *rtlpriv);
  61
  62enum rt_media_status mgnt_link_status_query(struct ieee80211_hw *hw);
  63
  64#endif
  65