Skip to content

Commit

Permalink
rtlwifi: rtl8192ce: Change sw and LED routines for addition of rtl819…
Browse files Browse the repository at this point in the history
…2se and rtl8192de

Change rtl8192ce sw and LED routines for addition of RTL8192SE and
RTL8192DE.

Signed-off-by: Chaoming_Li <chaoming_li@realsil.com.cn>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Chaoming_Li authored and John W. Linville committed Apr 26, 2011
1 parent f73b279 commit 2b8359f
Show file tree
Hide file tree
Showing 9 changed files with 143 additions and 85 deletions.
12 changes: 7 additions & 5 deletions drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,7 @@ static void rtl92c_dm_ctrl_initgain_by_rssi(struct ieee80211_hw *hw)

static void rtl92c_dm_initial_gain_multi_sta(struct ieee80211_hw *hw)
{
static u8 binitialized; /* initialized to false */
static u8 initialized; /* initialized to false */
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
long rssi_strength = rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb;
Expand All @@ -331,11 +331,11 @@ static void rtl92c_dm_initial_gain_multi_sta(struct ieee80211_hw *hw)

if ((multi_sta == false) || (dm_digtable.cursta_connectctate !=
DIG_STA_DISCONNECT)) {
binitialized = false;
initialized = false;
dm_digtable.dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;
return;
} else if (binitialized == false) {
binitialized = true;
} else if (initialized == false) {
initialized = true;
dm_digtable.dig_ext_port_stage = DIG_EXT_PORT_STAGE_0;
dm_digtable.cur_igvalue = 0x20;
rtl92c_dm_write_dig(hw);
Expand Down Expand Up @@ -1513,7 +1513,7 @@ void rtl92c_dm_watchdog(struct ieee80211_hw *hw)
}
EXPORT_SYMBOL(rtl92c_dm_watchdog);

static u8 rtl92c_bt_rssi_state_change(struct ieee80211_hw *hw)
u8 rtl92c_bt_rssi_state_change(struct ieee80211_hw *hw)
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw);
Expand Down Expand Up @@ -1570,6 +1570,7 @@ static u8 rtl92c_bt_rssi_state_change(struct ieee80211_hw *hw)
return false;
}
}
EXPORT_SYMBOL(rtl92c_bt_rssi_state_change);

static bool rtl92c_bt_state_change(struct ieee80211_hw *hw)
{
Expand Down Expand Up @@ -1820,3 +1821,4 @@ void rtl92c_dm_bt_coexist(struct ieee80211_hw *hw)
rtl92c_check_bt_change(hw);
}
}
EXPORT_SYMBOL(rtl92c_dm_bt_coexist);
2 changes: 2 additions & 0 deletions drivers/net/wireless/rtlwifi/rtl8192ce/dm.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,12 @@

#include "../wifi.h"
#include "../base.h"
#include "../pci.h"
#include "reg.h"
#include "def.h"
#include "phy.h"
#include "dm.h"
#include "../rtl8192c/fw_common.h"

void rtl92ce_dm_dynamic_txpower(struct ieee80211_hw *hw)
{
Expand Down
1 change: 1 addition & 0 deletions drivers/net/wireless/rtlwifi/rtl8192ce/dm.h
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ void rtl92c_dm_init_edca_turbo(struct ieee80211_hw *hw);
void rtl92c_dm_check_txpower_tracking(struct ieee80211_hw *hw);
void rtl92c_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw);
void rtl92c_dm_rf_saving(struct ieee80211_hw *hw, u8 bforce_in_normal);
void rtl92c_dm_bt_coexist(struct ieee80211_hw *hw);
void rtl92ce_dm_dynamic_txpower(struct ieee80211_hw *hw);

#endif
5 changes: 2 additions & 3 deletions drivers/net/wireless/rtlwifi/rtl8192ce/led.c
Original file line number Diff line number Diff line change
Expand Up @@ -106,12 +106,11 @@ void rtl92ce_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled)
void rtl92ce_init_sw_leds(struct ieee80211_hw *hw)
{
struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw);

_rtl92ce_init_led(hw, &(pcipriv->ledctl.sw_led0), LED_PIN_LED0);
_rtl92ce_init_led(hw, &(pcipriv->ledctl.sw_led1), LED_PIN_LED1);
}

void _rtl92ce_sw_led_control(struct ieee80211_hw *hw,
static void _rtl92ce_sw_led_control(struct ieee80211_hw *hw,
enum led_ctl_mode ledaction)
{
struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw);
Expand Down Expand Up @@ -146,7 +145,7 @@ void rtl92ce_led_control(struct ieee80211_hw *hw,
ledaction == LED_CTL_POWER_ON)) {
return;
}
RT_TRACE(rtlpriv, COMP_LED, DBG_LOUD, ("ledaction %d,\n",
RT_TRACE(rtlpriv, COMP_LED, DBG_LOUD, ("ledaction %d.\n",
ledaction));
_rtl92ce_sw_led_control(hw, ledaction);
}
2 changes: 0 additions & 2 deletions drivers/net/wireless/rtlwifi/rtl8192ce/led.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,5 @@ void rtl92ce_init_sw_leds(struct ieee80211_hw *hw);
void rtl92ce_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled);
void rtl92ce_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled);
void rtl92ce_led_control(struct ieee80211_hw *hw, enum led_ctl_mode ledaction);
void _rtl92ce_sw_led_control(struct ieee80211_hw *hw,
enum led_ctl_mode ledaction);

#endif
58 changes: 10 additions & 48 deletions drivers/net/wireless/rtlwifi/rtl8192ce/reg.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@
#define REG_GPIO_IO_SEL_2 0x0062
/* RTL8723 WIFI/BT/GPS Multi-Function control source. */
#define REG_MULTI_FUNC_CTRL 0x0068

#define REG_MCUFWDL 0x0080

#define REG_HMEBOX_EXT_0 0x0088
Expand Down Expand Up @@ -543,6 +544,8 @@
#define IMR_WLANOFF BIT(0)

#define HWSET_MAX_SIZE 128
#define EFUSE_MAX_SECTION 16
#define EFUSE_REAL_CONTENT_LEN 512

#define EEPROM_DEFAULT_TSSI 0x0
#define EEPROM_DEFAULT_TXPOWERDIFF 0x0
Expand Down Expand Up @@ -656,6 +659,7 @@
#define STOPBE BIT(1)
#define STOPBK BIT(0)

#define RCR_APPFCS BIT(31)
#define RCR_APP_FCS BIT(31)
#define RCR_APP_MIC BIT(30)
#define RCR_APP_ICV BIT(29)
Expand Down Expand Up @@ -688,6 +692,7 @@

#define REG_USB_INFO 0xFE17
#define REG_USB_SPECIAL_OPTION 0xFE55

#define REG_USB_DMA_AGG_TO 0xFE5B
#define REG_USB_AGG_TO 0xFE5C
#define REG_USB_AGG_TH 0xFE5D
Expand Down Expand Up @@ -775,7 +780,6 @@

#define BOOT_FROM_EEPROM BIT(4)
#define EEPROM_EN BIT(5)
#define EEPROMSEL BOOT_FROM_EEPROM

#define AFE_BGEN BIT(0)
#define AFE_MBEN BIT(1)
Expand Down Expand Up @@ -901,28 +905,7 @@
#define BD_PKG_SEL BIT(25)
#define BD_HCI_SEL BIT(26)
#define TYPE_ID BIT(27)

/* REG_GPIO_OUTSTS (For RTL8723 only) */
#define EFS_HCI_SEL (BIT(0)|BIT(1))
#define PAD_HCI_SEL (BIT(2)|BIT(3))
#define HCI_SEL (BIT(4)|BIT(5))
#define PKG_SEL_HCI BIT(6)
#define FEN_GPS BIT(7)
#define FEN_BT BIT(8)
#define FEN_WL BIT(9)
#define FEN_PCI BIT(10)
#define FEN_USB BIT(11)
#define BTRF_HWPDN_N BIT(12)
#define WLRF_HWPDN_N BIT(13)
#define PDN_BT_N BIT(14)
#define PDN_GPS_N BIT(15)
#define BT_CTL_HWPDN BIT(16)
#define GPS_CTL_HWPDN BIT(17)
#define PPHY_SUSB BIT(20)
#define UPHY_SUSB BIT(21)
#define PCI_SUSEN BIT(22)
#define USB_SUSEN BIT(23)
#define RF_RL_ID (BIT(31) | BIT(30) | BIT(29) | BIT(28))
#define RF_RL_ID (BIT(31) | BIT(30) | BIT(29) | BIT(28))

#define CHIP_VER_RTL_MASK 0xF000
#define CHIP_VER_RTL_SHIFT 12
Expand Down Expand Up @@ -1077,6 +1060,7 @@
#define _RARF_RC8(x) (((x) & 0x1F) << 24)

#define AC_PARAM_TXOP_OFFSET 16
#define AC_PARAM_TXOP_LIMIT_OFFSET 16
#define AC_PARAM_ECW_MAX_OFFSET 12
#define AC_PARAM_ECW_MIN_OFFSET 8
#define AC_PARAM_AIFS_OFFSET 0
Expand Down Expand Up @@ -1221,33 +1205,11 @@
#define EPROM_CMD_CONFIG 0x3
#define EPROM_CMD_LOAD 1

#define HWSET_MAX_SIZE_92S HWSET_MAX_SIZE
#define HWSET_MAX_SIZE_92S HWSET_MAX_SIZE

#define HAL_8192C_HW_GPIO_WPS_BIT BIT(2)

/* REG_MULTI_FUNC_CTRL(For RTL8723 Only) */
/* Enable GPIO[9] as WiFi HW PDn source */
#define WL_HWPDN_EN BIT(0)
/* WiFi HW PDn polarity control */
#define WL_HWPDN_SL BIT(1)
/* WiFi function enable */
#define WL_FUNC_EN BIT(2)
/* Enable GPIO[9] as WiFi RF HW PDn source */
#define WL_HWROF_EN BIT(3)
/* Enable GPIO[11] as BT HW PDn source */
#define BT_HWPDN_EN BIT(16)
/* BT HW PDn polarity control */
#define BT_HWPDN_SL BIT(17)
/* BT function enable */
#define BT_FUNC_EN BIT(18)
/* Enable GPIO[11] as BT/GPS RF HW PDn source */
#define BT_HWROF_EN BIT(19)
/* Enable GPIO[10] as GPS HW PDn source */
#define GPS_HWPDN_EN BIT(20)
/* GPS HW PDn polarity control */
#define GPS_HWPDN_SL BIT(21)
/* GPS function enable */
#define GPS_FUNC_EN BIT(22)

#define HAL_8192C_HW_GPIO_WPS_BIT BIT(2)

#define RPMAC_RESET 0x100
#define RPMAC_TXSTART 0x104
Expand Down
Loading

0 comments on commit 2b8359f

Please sign in to comment.