| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- /******************************************************************************
- *
- * Copyright(c) 2016 - 2017 Realtek Corporation.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of version 2 of the GNU General Public License as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- *****************************************************************************/
- #ifndef __INC_HAL8821CWIFIONLYHWCFG_H
- #define __INC_HAL8821CWIFIONLYHWCFG_H
- struct rfe_type_8821c_wifi_only {
- u8 rfe_module_type;
- boolean ext_ant_switch_exist;
- u8 ext_ant_switch_type; /* 0:DPDT, 1:SPDT */
- u8 ext_ant_switch_ctrl_polarity; /* iF 0: DPDT_P=0, DPDT_N=1 => BTG to Main, WL_A+G to Aux */
- boolean ant_at_main_port;
- boolean wlg_Locate_at_btg; /* If true: WLG at BTG, If false: WLG at WLAG */
- boolean ext_ant_switch_diversity; /* If diversity on */
- };
- enum bt_8821c_wifi_only_ext_ant_switch_type {
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_USE_DPDT = 0x0,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_USE_SPDT = 0x1,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_NONE = 0x2,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_MAX
- };
- enum bt_8821c_wifi_only_ext_ant_switch_ctrl_type {
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_BY_BBSW = 0x0,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_BY_PTA = 0x1,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_BY_ANTDIV = 0x2,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_BY_MAC = 0x3,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_BY_BT = 0x4,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_CTRL_MAX
- };
- enum bt_8821c_wifi_only_ext_ant_switch_pos_type {
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_TO_BT = 0x0,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_TO_WLG = 0x1,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_TO_WLA = 0x2,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_TO_NOCARE = 0x3,
- BT_8821C_WIFI_ONLY_EXT_ANT_SWITCH_TO_MAX
- };
- VOID
- hal8821c_wifi_only_switch_antenna(
- IN struct wifi_only_cfg *pwifionlycfg,
- IN u1Byte is_5g
- );
- VOID
- halbtc8821c_wifi_only_set_rfe_type(
- IN struct wifi_only_cfg *pwifionlycfg
- );
- VOID
- ex_hal8821c_wifi_only_hw_config(
- IN struct wifi_only_cfg *pwifionlycfg
- );
- VOID
- ex_hal8821c_wifi_only_scannotify(
- IN struct wifi_only_cfg *pwifionlycfg,
- IN u1Byte is_5g
- );
- VOID
- ex_hal8821c_wifi_only_connectnotify(
- IN struct wifi_only_cfg *pwifionlycfg,
- IN u1Byte is_5g
- );
- VOID
- ex_hal8821c_wifi_only_switchbandnotify(
- IN struct wifi_only_cfg *pwifionlycfg,
- IN u1Byte is_5g
- );
- #endif
|