summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2026-10-03 00:54:46 +0200
committerMark Brown <broonie@kernel.org>2026-10-03 00:54:46 +0200
commitbb03a50a01b9f9ca4048f10aa4d05bf21a71f9dc (patch)
tree62d1f2974b30b78eabc064298ab0ce3b4914cd39 /drivers
parent2678de559aa2b5e42a5415c5c8292d9b0970ab1e (diff)
parentdbc2fa996f44602af72ea56efa68c043407eaaac (diff)
downloadlinux-next-bb03a50a01b9f9ca4048f10aa4d05bf21a71f9dc.tar.gz
linux-next-bb03a50a01b9f9ca4048f10aa4d05bf21a71f9dc.zip
Merge branch 'staging-next' of https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/axis-fifo/axis-fifo.c6
-rw-r--r--drivers/staging/fbtft/fb_bd663474.c4
-rw-r--r--drivers/staging/greybus/Kconfig19
-rw-r--r--drivers/staging/greybus/Makefile8
-rw-r--r--drivers/staging/greybus/TODO0
-rw-r--r--drivers/staging/greybus/arche-apb-ctrl.c490
-rw-r--r--drivers/staging/greybus/arche-platform.c653
-rw-r--r--drivers/staging/greybus/arche_platform.h28
-rw-r--r--drivers/staging/greybus/camera.c1367
-rw-r--r--drivers/staging/greybus/gb-camera.h127
-rw-r--r--drivers/staging/greybus/gbphy.c2
-rw-r--r--drivers/staging/greybus/loopback.c5
-rw-r--r--drivers/staging/greybus/uart.c30
-rw-r--r--drivers/staging/most/video/video.c1
-rw-r--r--drivers/staging/octeon/ethernet-tx.c2
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_ap.c6
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_cmd.c46
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_efuse.c150
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_ieee80211.c10
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_ioctl_set.c3
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_mlme.c1018
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_mlme_ext.c218
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_pwrctrl.c3
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_recv.c146
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_security.c99
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_sta_mgt.c32
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_wlan_util.c23
-rw-r--r--drivers/staging/rtl8723bs/core/rtw_xmit.c56
-rw-r--r--drivers/staging/rtl8723bs/hal/Hal8723BReg.h17
-rw-r--r--drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c16
-rw-r--r--drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.h2
-rw-r--r--drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c8
-rw-r--r--drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.h2
-rw-r--r--drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h3
-rw-r--r--drivers/staging/rtl8723bs/hal/HalPhyRf.c11
-rw-r--r--drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c77
-rw-r--r--drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.h6
-rw-r--r--drivers/staging/rtl8723bs/hal/HalPwrSeqCmd.c6
-rw-r--r--drivers/staging/rtl8723bs/hal/hal_btcoex.c52
-rw-r--r--drivers/staging/rtl8723bs/hal/hal_com.c6
-rw-r--r--drivers/staging/rtl8723bs/hal/hal_com_phycfg.c10
-rw-r--r--drivers/staging/rtl8723bs/hal/hal_intf.c9
-rw-r--r--drivers/staging/rtl8723bs/hal/odm.c34
-rw-r--r--drivers/staging/rtl8723bs/hal/odm.h51
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_DIG.h1
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_DynamicTxPower.h1
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c4
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_HWConfig.c7
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_HWConfig.h2
-rw-r--r--drivers/staging/rtl8723bs/hal/odm_precomp.h1
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c2
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_dm.c14
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c76
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c25
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_rf6052.c30
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723b_rxdesc.c13
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c9
-rw-r--r--drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c15
-rw-r--r--drivers/staging/rtl8723bs/hal/sdio_halinit.c58
-rw-r--r--drivers/staging/rtl8723bs/hal/sdio_ops.c24
-rw-r--r--drivers/staging/rtl8723bs/include/HalPwrSeqCmd.h2
-rw-r--r--drivers/staging/rtl8723bs/include/basic_types.h8
-rw-r--r--drivers/staging/rtl8723bs/include/cmd_osdep.h6
-rw-r--r--drivers/staging/rtl8723bs/include/drv_types.h6
-rw-r--r--drivers/staging/rtl8723bs/include/hal_com.h7
-rw-r--r--drivers/staging/rtl8723bs/include/hal_com_h2c.h2
-rw-r--r--drivers/staging/rtl8723bs/include/hal_com_phycfg.h2
-rw-r--r--drivers/staging/rtl8723bs/include/hal_com_reg.h92
-rw-r--r--drivers/staging/rtl8723bs/include/hal_data.h23
-rw-r--r--drivers/staging/rtl8723bs/include/hal_intf.h2
-rw-r--r--drivers/staging/rtl8723bs/include/hal_pg.h2
-rw-r--r--drivers/staging/rtl8723bs/include/hal_phy.h19
-rw-r--r--drivers/staging/rtl8723bs/include/ieee80211.h10
-rw-r--r--drivers/staging/rtl8723bs/include/ioctl_cfg80211.h1
-rw-r--r--drivers/staging/rtl8723bs/include/osdep_intf.h1
-rw-r--r--drivers/staging/rtl8723bs/include/osdep_service.h4
-rw-r--r--drivers/staging/rtl8723bs/include/osdep_service_linux.h2
-rw-r--r--drivers/staging/rtl8723bs/include/rtl8723b_cmd.h9
-rw-r--r--drivers/staging/rtl8723bs/include/rtl8723b_dm.h10
-rw-r--r--drivers/staging/rtl8723bs/include/rtl8723b_hal.h6
-rw-r--r--drivers/staging/rtl8723bs/include/rtl8723b_spec.h72
-rw-r--r--drivers/staging/rtl8723bs/include/rtl8723b_xmit.h10
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_ap.h1
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_cmd.h463
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_eeprom.h2
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_efuse.h9
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_ht.h2
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_io.h14
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_ioctl_set.h2
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_mlme.h89
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_mlme_ext.h46
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_pwrctrl.h23
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_recv.h85
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_security.h3
-rw-r--r--drivers/staging/rtl8723bs/include/rtw_xmit.h58
-rw-r--r--drivers/staging/rtl8723bs/include/sdio_ops.h23
-rw-r--r--drivers/staging/rtl8723bs/include/sta_info.h96
-rw-r--r--drivers/staging/rtl8723bs/include/wlan_bssdef.h23
-rw-r--r--drivers/staging/rtl8723bs/include/xmit_osdep.h14
-rw-r--r--drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c130
-rw-r--r--drivers/staging/rtl8723bs/os_dep/os_intfs.c61
-rw-r--r--drivers/staging/rtl8723bs/os_dep/sdio_intf.c4
-rw-r--r--drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c1
-rw-r--r--drivers/staging/rtl8723bs/os_dep/xmit_linux.c3
-rw-r--r--drivers/staging/sm750fb/sm750.c22
-rw-r--r--drivers/staging/sm750fb/sm750_accel.h4
-rw-r--r--drivers/staging/vme_user/vme_tsi148.c3
107 files changed, 1334 insertions, 5287 deletions
diff --git a/drivers/staging/axis-fifo/axis-fifo.c b/drivers/staging/axis-fifo/axis-fifo.c
index 3d358f919352..7bb35e11d1dd 100644
--- a/drivers/staging/axis-fifo/axis-fifo.c
+++ b/drivers/staging/axis-fifo/axis-fifo.c
@@ -212,9 +212,9 @@ static ssize_t axis_fifo_write(struct file *f, const char __user *buf,
size_t len, loff_t *off)
{
struct axis_fifo *fifo = f->private_data;
- unsigned int words_to_write;
+ size_t words_to_write;
u32 *txbuf;
- int ret;
+ ssize_t ret;
words_to_write = len / sizeof(u32);
@@ -256,7 +256,7 @@ static ssize_t axis_fifo_write(struct file *f, const char __user *buf,
goto end_unlock;
}
- for (int i = 0; i < words_to_write; ++i)
+ for (size_t i = 0; i < words_to_write; ++i)
iowrite32(txbuf[i], fifo->base_addr + XLLF_TDFD_OFFSET);
iowrite32(len, fifo->base_addr + XLLF_TLR_OFFSET);
diff --git a/drivers/staging/fbtft/fb_bd663474.c b/drivers/staging/fbtft/fb_bd663474.c
index 1629c2c440a9..c34f859043ef 100644
--- a/drivers/staging/fbtft/fb_bd663474.c
+++ b/drivers/staging/fbtft/fb_bd663474.c
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0+
/*
- * FB driver for the uPD161704 LCD Controller
+ * FB driver for the BD663474 LCD Controller
*
* Copyright (C) 2014 Seong-Woo Kim
*
@@ -166,6 +166,6 @@ MODULE_ALIAS("platform:" DRVNAME);
MODULE_ALIAS("spi:bd663474");
MODULE_ALIAS("platform:bd663474");
-MODULE_DESCRIPTION("FB driver for the uPD161704 LCD Controller");
+MODULE_DESCRIPTION("FB driver for the BD663474 LCD Controller");
MODULE_AUTHOR("Seong-Woo Kim");
MODULE_LICENSE("GPL");
diff --git a/drivers/staging/greybus/Kconfig b/drivers/staging/greybus/Kconfig
index 7635f3e850fa..e1d7ffdf4a6f 100644
--- a/drivers/staging/greybus/Kconfig
+++ b/drivers/staging/greybus/Kconfig
@@ -32,16 +32,6 @@ config GREYBUS_BOOTROM
To compile this code as a module, chose M here: the module
will be called gb-bootrom.ko
-config GREYBUS_CAMERA
- tristate "Greybus Camera Class driver"
- depends on MEDIA_SUPPORT && LEDS_CLASS_FLASH && BROKEN
- help
- Select this option if you have a device that follows the
- Greybus Camera Class specification.
-
- To compile this code as a module, chose M here: the module
- will be called gb-camera.ko
-
config GREYBUS_FIRMWARE
tristate "Greybus Firmware Download Class driver"
depends on SPI
@@ -204,13 +194,4 @@ config GREYBUS_USB
endif # GREYBUS_BRIDGED_PHY
-config GREYBUS_ARCHE
- tristate "Greybus Arche Platform driver"
- depends on USB_HSIC_USB3613 || COMPILE_TEST
- help
- Select this option if you have an Arche device.
-
- To compile this code as a module, chose M here: the module
- will be called gb-arche.ko
-
endif # GREYBUS
diff --git a/drivers/staging/greybus/Makefile b/drivers/staging/greybus/Makefile
index 7c5e89622334..01a372e9833e 100644
--- a/drivers/staging/greybus/Makefile
+++ b/drivers/staging/greybus/Makefile
@@ -4,7 +4,6 @@ ccflags-y += -I$(src)
# Greybus class drivers
gb-bootrom-y := bootrom.o
-gb-camera-y := camera.o
gb-firmware-y := fw-core.o fw-download.o fw-management.o authentication.o
gb-spilib-y := spilib.o
gb-hid-y := hid.o
@@ -16,7 +15,6 @@ gb-raw-y := raw.o
gb-vibrator-y := vibrator.o
obj-$(CONFIG_GREYBUS_BOOTROM) += gb-bootrom.o
-obj-$(CONFIG_GREYBUS_CAMERA) += gb-camera.o
obj-$(CONFIG_GREYBUS_FIRMWARE) += gb-firmware.o gb-spilib.o
obj-$(CONFIG_GREYBUS_HID) += gb-hid.o
obj-$(CONFIG_GREYBUS_LIGHT) += gb-light.o
@@ -65,9 +63,3 @@ obj-$(CONFIG_GREYBUS_SDIO) += gb-sdio.o
obj-$(CONFIG_GREYBUS_SPI) += gb-spi.o gb-spilib.o
obj-$(CONFIG_GREYBUS_UART) += gb-uart.o
obj-$(CONFIG_GREYBUS_USB) += gb-usb.o
-
-
-# Greybus Platform driver
-gb-arche-y := arche-platform.o arche-apb-ctrl.o
-
-obj-$(CONFIG_GREYBUS_ARCHE) += gb-arche.o
diff --git a/drivers/staging/greybus/TODO b/drivers/staging/greybus/TODO
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/drivers/staging/greybus/TODO
+++ /dev/null
diff --git a/drivers/staging/greybus/arche-apb-ctrl.c b/drivers/staging/greybus/arche-apb-ctrl.c
deleted file mode 100644
index 4302c2226126..000000000000
--- a/drivers/staging/greybus/arche-apb-ctrl.c
+++ /dev/null
@@ -1,490 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-/*
- * Arche Platform driver to control APB.
- *
- * Copyright 2014-2015 Google Inc.
- * Copyright 2014-2015 Linaro Ltd.
- */
-
-#include <linux/clk.h>
-#include <linux/delay.h>
-#include <linux/gpio/consumer.h>
-#include <linux/interrupt.h>
-#include <linux/module.h>
-#include <linux/pinctrl/consumer.h>
-#include <linux/platform_device.h>
-#include <linux/pm.h>
-#include <linux/property.h>
-#include <linux/regulator/consumer.h>
-#include <linux/spinlock.h>
-#include "arche_platform.h"
-
-static void apb_bootret_deassert(struct device *dev);
-
-struct arche_apb_ctrl_drvdata {
- /* Control GPIO signals to and from AP <=> AP Bridges */
- struct gpio_desc *resetn;
- struct gpio_desc *boot_ret;
- struct gpio_desc *pwroff;
- struct gpio_desc *wake_in;
- struct gpio_desc *wake_out;
- struct gpio_desc *pwrdn;
-
- enum arche_platform_state state;
- bool init_disabled;
-
- struct regulator *vcore;
- struct regulator *vio;
-
- struct gpio_desc *clk_en;
- struct clk *clk;
-
- struct pinctrl *pinctrl;
- struct pinctrl_state *pin_default;
-
- /* V2: SPI Bus control */
- struct gpio_desc *spi_en;
- bool spi_en_polarity_high;
-};
-
-/*
- * Note that these low level api's are active high
- */
-static inline void deassert_reset(struct gpio_desc *gpio)
-{
- gpiod_set_raw_value(gpio, 1);
-}
-
-static inline void assert_reset(struct gpio_desc *gpio)
-{
- gpiod_set_raw_value(gpio, 0);
-}
-
-/*
- * Note: Please do not modify the below sequence, as it is as per the spec
- */
-static int coldboot_seq(struct platform_device *pdev)
-{
- struct device *dev = &pdev->dev;
- struct arche_apb_ctrl_drvdata *apb = platform_get_drvdata(pdev);
- int ret;
-
- if (apb->init_disabled ||
- apb->state == ARCHE_PLATFORM_STATE_ACTIVE)
- return 0;
-
- /* Hold APB in reset state */
- assert_reset(apb->resetn);
-
- if (apb->state == ARCHE_PLATFORM_STATE_FW_FLASHING && apb->spi_en)
- devm_gpiod_put(dev, apb->spi_en);
-
- /* Enable power to APB */
- if (!IS_ERR(apb->vcore)) {
- ret = regulator_enable(apb->vcore);
- if (ret) {
- dev_err(dev, "failed to enable core regulator\n");
- return ret;
- }
- }
-
- if (!IS_ERR(apb->vio)) {
- ret = regulator_enable(apb->vio);
- if (ret) {
- dev_err(dev, "failed to enable IO regulator\n");
- return ret;
- }
- }
-
- apb_bootret_deassert(dev);
-
- /* On DB3 clock was not mandatory */
- if (apb->clk_en)
- gpiod_set_value(apb->clk_en, 1);
-
- usleep_range(100, 200);
-
- /* deassert reset to APB : Active-low signal */
- deassert_reset(apb->resetn);
-
- apb->state = ARCHE_PLATFORM_STATE_ACTIVE;
-
- return 0;
-}
-
-static int fw_flashing_seq(struct platform_device *pdev)
-{
- struct device *dev = &pdev->dev;
- struct arche_apb_ctrl_drvdata *apb = platform_get_drvdata(pdev);
- int ret;
-
- if (apb->init_disabled ||
- apb->state == ARCHE_PLATFORM_STATE_FW_FLASHING)
- return 0;
-
- ret = regulator_enable(apb->vcore);
- if (ret) {
- dev_err(dev, "failed to enable core regulator\n");
- return ret;
- }
-
- ret = regulator_enable(apb->vio);
- if (ret) {
- dev_err(dev, "failed to enable IO regulator\n");
- return ret;
- }
-
- if (apb->spi_en) {
- unsigned long flags;
-
- if (apb->spi_en_polarity_high)
- flags = GPIOD_OUT_HIGH;
- else
- flags = GPIOD_OUT_LOW;
-
- apb->spi_en = devm_gpiod_get(dev, "spi-en", flags);
- if (IS_ERR(apb->spi_en)) {
- ret = PTR_ERR(apb->spi_en);
- dev_err(dev, "Failed requesting SPI bus en GPIO: %d\n",
- ret);
- return ret;
- }
- }
-
- /* for flashing device should be in reset state */
- assert_reset(apb->resetn);
- apb->state = ARCHE_PLATFORM_STATE_FW_FLASHING;
-
- return 0;
-}
-
-static int standby_boot_seq(struct platform_device *pdev)
-{
- struct device *dev = &pdev->dev;
- struct arche_apb_ctrl_drvdata *apb = platform_get_drvdata(pdev);
-
- if (apb->init_disabled)
- return 0;
-
- /*
- * Even if it is in OFF state,
- * then we do not want to change the state
- */
- if (apb->state == ARCHE_PLATFORM_STATE_STANDBY ||
- apb->state == ARCHE_PLATFORM_STATE_OFF)
- return 0;
-
- if (apb->state == ARCHE_PLATFORM_STATE_FW_FLASHING && apb->spi_en)
- devm_gpiod_put(dev, apb->spi_en);
-
- /*
- * As per WDM spec, do nothing
- *
- * Pasted from WDM spec,
- * - A falling edge on POWEROFF_L is detected (a)
- * - WDM enters standby mode, but no output signals are changed
- */
-
- /* TODO: POWEROFF_L is input to WDM module */
- apb->state = ARCHE_PLATFORM_STATE_STANDBY;
- return 0;
-}
-
-static void poweroff_seq(struct platform_device *pdev)
-{
- struct device *dev = &pdev->dev;
- struct arche_apb_ctrl_drvdata *apb = platform_get_drvdata(pdev);
-
- if (apb->init_disabled || apb->state == ARCHE_PLATFORM_STATE_OFF)
- return;
-
- if (apb->state == ARCHE_PLATFORM_STATE_FW_FLASHING && apb->spi_en)
- devm_gpiod_put(dev, apb->spi_en);
-
- /* disable the clock */
- if (apb->clk_en)
- gpiod_set_value(apb->clk_en, 0);
-
- if (!IS_ERR(apb->vcore) && regulator_is_enabled(apb->vcore) > 0)
- regulator_disable(apb->vcore);
-
- if (!IS_ERR(apb->vio) && regulator_is_enabled(apb->vio) > 0)
- regulator_disable(apb->vio);
-
- /* As part of exit, put APB back in reset state */
- assert_reset(apb->resetn);
- apb->state = ARCHE_PLATFORM_STATE_OFF;
-
- /* TODO: May have to send an event to SVC about this exit */
-}
-
-static void apb_bootret_deassert(struct device *dev)
-{
- struct arche_apb_ctrl_drvdata *apb = dev_get_drvdata(dev);
-
- gpiod_set_value(apb->boot_ret, 0);
-}
-
-int apb_ctrl_coldboot(struct device *dev)
-{
- return coldboot_seq(to_platform_device(dev));
-}
-
-int apb_ctrl_fw_flashing(struct device *dev)
-{
- return fw_flashing_seq(to_platform_device(dev));
-}
-
-int apb_ctrl_standby_boot(struct device *dev)
-{
- return standby_boot_seq(to_platform_device(dev));
-}
-
-void apb_ctrl_poweroff(struct device *dev)
-{
- poweroff_seq(to_platform_device(dev));
-}
-
-static ssize_t state_store(struct device *dev,
- struct device_attribute *attr,
- const char *buf, size_t count)
-{
- struct platform_device *pdev = to_platform_device(dev);
- struct arche_apb_ctrl_drvdata *apb = platform_get_drvdata(pdev);
- int ret = 0;
- bool is_disabled;
-
- if (sysfs_streq(buf, "off")) {
- if (apb->state == ARCHE_PLATFORM_STATE_OFF)
- return count;
-
- poweroff_seq(pdev);
- } else if (sysfs_streq(buf, "active")) {
- if (apb->state == ARCHE_PLATFORM_STATE_ACTIVE)
- return count;
-
- poweroff_seq(pdev);
- is_disabled = apb->init_disabled;
- apb->init_disabled = false;
- ret = coldboot_seq(pdev);
- if (ret)
- apb->init_disabled = is_disabled;
- } else if (sysfs_streq(buf, "standby")) {
- if (apb->state == ARCHE_PLATFORM_STATE_STANDBY)
- return count;
-
- ret = standby_boot_seq(pdev);
- } else if (sysfs_streq(buf, "fw_flashing")) {
- if (apb->state == ARCHE_PLATFORM_STATE_FW_FLASHING)
- return count;
-
- /*
- * First we want to make sure we power off everything
- * and then enter FW flashing state
- */
- poweroff_seq(pdev);
- ret = fw_flashing_seq(pdev);
- } else {
- dev_err(dev, "unknown state\n");
- ret = -EINVAL;
- }
-
- return ret ? ret : count;
-}
-
-static ssize_t state_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- struct arche_apb_ctrl_drvdata *apb = dev_get_drvdata(dev);
-
- switch (apb->state) {
- case ARCHE_PLATFORM_STATE_OFF:
- return sysfs_emit(buf, "off%s\n",
- apb->init_disabled ? ",disabled" : "");
- case ARCHE_PLATFORM_STATE_ACTIVE:
- return sysfs_emit(buf, "active\n");
- case ARCHE_PLATFORM_STATE_STANDBY:
- return sysfs_emit(buf, "standby\n");
- case ARCHE_PLATFORM_STATE_FW_FLASHING:
- return sysfs_emit(buf, "fw_flashing\n");
- default:
- return sysfs_emit(buf, "unknown state\n");
- }
-}
-
-static DEVICE_ATTR_RW(state);
-
-static int apb_ctrl_get_fw_data(struct platform_device *pdev,
- struct arche_apb_ctrl_drvdata *apb)
-{
- struct device *dev = &pdev->dev;
- int ret;
-
- apb->resetn = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
- if (IS_ERR(apb->resetn)) {
- ret = PTR_ERR(apb->resetn);
- dev_err(dev, "Failed requesting reset GPIO: %d\n", ret);
- return ret;
- }
-
- apb->boot_ret = devm_gpiod_get(dev, "boot-ret", GPIOD_OUT_LOW);
- if (IS_ERR(apb->boot_ret)) {
- ret = PTR_ERR(apb->boot_ret);
- dev_err(dev, "Failed requesting bootret GPIO: %d\n", ret);
- return ret;
- }
-
- /* It's not mandatory to support power management interface */
- apb->pwroff = devm_gpiod_get_optional(dev, "pwr-off", GPIOD_IN);
- if (IS_ERR(apb->pwroff)) {
- ret = PTR_ERR(apb->pwroff);
- dev_err(dev, "Failed requesting pwroff_n GPIO: %d\n", ret);
- return ret;
- }
-
- /* Do not make clock mandatory as of now (for DB3) */
- apb->clk_en = devm_gpiod_get_optional(dev, "clock-en", GPIOD_OUT_LOW);
- if (IS_ERR(apb->clk_en)) {
- ret = PTR_ERR(apb->clk_en);
- dev_err(dev, "Failed requesting APB clock en GPIO: %d\n", ret);
- return ret;
- }
-
- apb->pwrdn = devm_gpiod_get(dev, "pwr-down", GPIOD_OUT_LOW);
- if (IS_ERR(apb->pwrdn)) {
- ret = PTR_ERR(apb->pwrdn);
- dev_warn(dev, "Failed requesting power down GPIO: %d\n", ret);
- return ret;
- }
-
- /* Regulators are optional, as we may have fixed supply coming in */
- apb->vcore = devm_regulator_get(dev, "vcore");
- if (IS_ERR(apb->vcore))
- dev_warn(dev, "no core regulator found\n");
-
- apb->vio = devm_regulator_get(dev, "vio");
- if (IS_ERR(apb->vio))
- dev_warn(dev, "no IO regulator found\n");
-
- apb->pinctrl = devm_pinctrl_get(&pdev->dev);
- if (IS_ERR(apb->pinctrl)) {
- dev_err(&pdev->dev, "could not get pinctrl handle\n");
- return PTR_ERR(apb->pinctrl);
- }
- apb->pin_default = pinctrl_lookup_state(apb->pinctrl, "default");
- if (IS_ERR(apb->pin_default)) {
- dev_err(&pdev->dev, "could not get default pin state\n");
- return PTR_ERR(apb->pin_default);
- }
-
- /* Only applicable for platform >= V2 */
- if (device_property_read_bool(&pdev->dev, "gb,spi-en-active-high"))
- apb->spi_en_polarity_high = true;
-
- return 0;
-}
-
-static int arche_apb_ctrl_probe(struct platform_device *pdev)
-{
- int ret;
- struct arche_apb_ctrl_drvdata *apb;
- struct device *dev = &pdev->dev;
-
- apb = devm_kzalloc(&pdev->dev, sizeof(*apb), GFP_KERNEL);
- if (!apb)
- return -ENOMEM;
-
- ret = apb_ctrl_get_fw_data(pdev, apb);
- if (ret) {
- dev_err(dev, "failed to get apb devicetree data %d\n", ret);
- return ret;
- }
-
- /* Initially set APB to OFF state */
- apb->state = ARCHE_PLATFORM_STATE_OFF;
- /* Check whether device needs to be enabled on boot */
- if (device_property_read_bool(&pdev->dev, "arche,init-disable"))
- apb->init_disabled = true;
-
- platform_set_drvdata(pdev, apb);
-
- /* Create sysfs interface to allow user to change state dynamically */
- ret = device_create_file(dev, &dev_attr_state);
- if (ret) {
- dev_err(dev, "failed to create state file in sysfs\n");
- return ret;
- }
-
- dev_info(&pdev->dev, "Device registered successfully\n");
- return 0;
-}
-
-static void arche_apb_ctrl_remove(struct platform_device *pdev)
-{
- device_remove_file(&pdev->dev, &dev_attr_state);
- poweroff_seq(pdev);
- platform_set_drvdata(pdev, NULL);
-}
-
-static int __maybe_unused arche_apb_ctrl_suspend(struct device *dev)
-{
- /*
- * If timing profile permits, we may shutdown bridge
- * completely
- *
- * TODO: sequence ??
- *
- * Also, need to make sure we meet precondition for unipro suspend
- * Precondition: Definition ???
- */
- return 0;
-}
-
-static int __maybe_unused arche_apb_ctrl_resume(struct device *dev)
-{
- /*
- * At least for ES2 we have to meet the delay requirement between
- * unipro switch and AP bridge init, depending on whether bridge is in
- * OFF state or standby state.
- *
- * Based on whether bridge is in standby or OFF state we may have to
- * assert multiple signals. Please refer to WDM spec, for more info.
- *
- */
- return 0;
-}
-
-static void arche_apb_ctrl_shutdown(struct platform_device *pdev)
-{
- apb_ctrl_poweroff(&pdev->dev);
-}
-
-static SIMPLE_DEV_PM_OPS(arche_apb_ctrl_pm_ops, arche_apb_ctrl_suspend,
- arche_apb_ctrl_resume);
-
-static const struct of_device_id arche_apb_ctrl_of_match[] = {
- { .compatible = "usbffff,2", },
- { },
-};
-MODULE_DEVICE_TABLE(of, arche_apb_ctrl_of_match);
-
-static struct platform_driver arche_apb_ctrl_device_driver = {
- .probe = arche_apb_ctrl_probe,
- .remove = arche_apb_ctrl_remove,
- .shutdown = arche_apb_ctrl_shutdown,
- .driver = {
- .name = "arche-apb-ctrl",
- .pm = &arche_apb_ctrl_pm_ops,
- .of_match_table = arche_apb_ctrl_of_match,
- }
-};
-
-int __init arche_apb_init(void)
-{
- return platform_driver_register(&arche_apb_ctrl_device_driver);
-}
-
-void __exit arche_apb_exit(void)
-{
- platform_driver_unregister(&arche_apb_ctrl_device_driver);
-}
diff --git a/drivers/staging/greybus/arche-platform.c b/drivers/staging/greybus/arche-platform.c
deleted file mode 100644
index de5de59ea8ab..000000000000
--- a/drivers/staging/greybus/arche-platform.c
+++ /dev/null
@@ -1,653 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-/*
- * Arche Platform driver to enable Unipro link.
- *
- * Copyright 2014-2015 Google Inc.
- * Copyright 2014-2015 Linaro Ltd.
- */
-
-#include <linux/clk.h>
-#include <linux/delay.h>
-#include <linux/gpio/consumer.h>
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/of_platform.h>
-#include <linux/pinctrl/consumer.h>
-#include <linux/platform_device.h>
-#include <linux/pm.h>
-#include <linux/interrupt.h>
-#include <linux/irq.h>
-#include <linux/suspend.h>
-#include <linux/time.h>
-#include <linux/greybus.h>
-#include <linux/of.h>
-#include "arche_platform.h"
-
-#if IS_ENABLED(CONFIG_USB_HSIC_USB3613)
-#include <linux/usb/usb3613.h>
-#else
-static inline int usb3613_hub_mode_ctrl(bool unused)
-{
- return 0;
-}
-#endif
-
-#define WD_COLDBOOT_PULSE_WIDTH_MS 30
-
-enum svc_wakedetect_state {
- WD_STATE_IDLE, /* Default state = pulled high/low */
- WD_STATE_BOOT_INIT, /* WD = falling edge (low) */
- WD_STATE_COLDBOOT_TRIG, /* WD = rising edge (high), > 30msec */
- WD_STATE_STANDBYBOOT_TRIG, /* As of now not used ?? */
- WD_STATE_COLDBOOT_START, /* Cold boot process started */
- WD_STATE_STANDBYBOOT_START, /* Not used */
-};
-
-struct arche_platform_drvdata {
- /* Control GPIO signals to and from AP <=> SVC */
- struct gpio_desc *svc_reset;
- bool is_reset_act_hi;
- struct gpio_desc *svc_sysboot;
- struct gpio_desc *wake_detect; /* bi-dir,maps to WAKE_MOD & WAKE_FRAME signals */
-
- enum arche_platform_state state;
-
- struct gpio_desc *svc_refclk_req;
- struct clk *svc_ref_clk;
-
- struct pinctrl *pinctrl;
- struct pinctrl_state *pin_default;
-
- int num_apbs;
-
- enum svc_wakedetect_state wake_detect_state;
- int wake_detect_irq;
- spinlock_t wake_lock; /* Protect wake_detect_state */
- struct mutex platform_state_mutex; /* Protect state */
- unsigned long wake_detect_start;
- struct notifier_block pm_notifier;
-
- struct device *dev;
-};
-
-/* Requires calling context to hold arche_pdata->platform_state_mutex */
-static void arche_platform_set_state(struct arche_platform_drvdata *arche_pdata,
- enum arche_platform_state state)
-{
- arche_pdata->state = state;
-}
-
-/* Requires arche_pdata->wake_lock is held by calling context */
-static void arche_platform_set_wake_detect_state(struct arche_platform_drvdata *arche_pdata,
- enum svc_wakedetect_state state)
-{
- arche_pdata->wake_detect_state = state;
-}
-
-static inline void svc_reset_onoff(struct gpio_desc *gpio, bool onoff)
-{
- gpiod_set_raw_value(gpio, onoff);
-}
-
-static int apb_cold_boot(struct device *dev, void *data)
-{
- int ret;
-
- ret = apb_ctrl_coldboot(dev);
- if (ret)
- dev_warn(dev, "failed to coldboot\n");
-
- /*Child nodes are independent, so do not exit coldboot operation */
- return 0;
-}
-
-static int apb_poweroff(struct device *dev, void *data)
-{
- apb_ctrl_poweroff(dev);
-
- /* Enable HUB3613 into HUB mode. */
- if (usb3613_hub_mode_ctrl(false))
- dev_warn(dev, "failed to control hub device\n");
-
- return 0;
-}
-
-static void arche_platform_wd_irq_en(struct arche_platform_drvdata *arche_pdata)
-{
- /* Enable interrupt here, to read event back from SVC */
- enable_irq(arche_pdata->wake_detect_irq);
-}
-
-static irqreturn_t arche_platform_wd_irq_thread(int irq, void *devid)
-{
- struct arche_platform_drvdata *arche_pdata = devid;
- unsigned long flags;
-
- spin_lock_irqsave(&arche_pdata->wake_lock, flags);
- if (arche_pdata->wake_detect_state != WD_STATE_COLDBOOT_TRIG) {
- /* Something is wrong */
- spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
- return IRQ_HANDLED;
- }
-
- arche_platform_set_wake_detect_state(arche_pdata,
- WD_STATE_COLDBOOT_START);
- spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
-
- /* It should complete power cycle, so first make sure it is poweroff */
- device_for_each_child(arche_pdata->dev, NULL, apb_poweroff);
-
- /* Bring APB out of reset: cold boot sequence */
- device_for_each_child(arche_pdata->dev, NULL, apb_cold_boot);
-
- /* Enable HUB3613 into HUB mode. */
- if (usb3613_hub_mode_ctrl(true))
- dev_warn(arche_pdata->dev, "failed to control hub device\n");
-
- spin_lock_irqsave(&arche_pdata->wake_lock, flags);
- arche_platform_set_wake_detect_state(arche_pdata, WD_STATE_IDLE);
- spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
-
- return IRQ_HANDLED;
-}
-
-static irqreturn_t arche_platform_wd_irq(int irq, void *devid)
-{
- struct arche_platform_drvdata *arche_pdata = devid;
- unsigned long flags;
-
- spin_lock_irqsave(&arche_pdata->wake_lock, flags);
-
- if (gpiod_get_value(arche_pdata->wake_detect)) {
- /* wake/detect rising */
-
- /*
- * If wake/detect line goes high after low, within less than
- * 30msec, then standby boot sequence is initiated, which is not
- * supported/implemented as of now. So ignore it.
- */
- if (arche_pdata->wake_detect_state == WD_STATE_BOOT_INIT) {
- if (time_before(jiffies,
- arche_pdata->wake_detect_start +
- msecs_to_jiffies(WD_COLDBOOT_PULSE_WIDTH_MS))) {
- arche_platform_set_wake_detect_state(arche_pdata,
- WD_STATE_IDLE);
- } else {
- /*
- * Check we are not in middle of irq thread
- * already
- */
- if (arche_pdata->wake_detect_state !=
- WD_STATE_COLDBOOT_START) {
- arche_platform_set_wake_detect_state(arche_pdata,
- WD_STATE_COLDBOOT_TRIG);
- spin_unlock_irqrestore(&arche_pdata->wake_lock,
- flags);
- return IRQ_WAKE_THREAD;
- }
- }
- }
- } else {
- /* wake/detect falling */
- if (arche_pdata->wake_detect_state == WD_STATE_IDLE) {
- arche_pdata->wake_detect_start = jiffies;
- /*
- * In the beginning, when wake/detect goes low
- * (first time), we assume it is meant for coldboot
- * and set the flag. If wake/detect line stays low
- * beyond 30msec, then it is coldboot else fallback
- * to standby boot.
- */
- arche_platform_set_wake_detect_state(arche_pdata,
- WD_STATE_BOOT_INIT);
- }
- }
-
- spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
-
- return IRQ_HANDLED;
-}
-
-/*
- * Requires arche_pdata->platform_state_mutex to be held
- */
-static int
-arche_platform_coldboot_seq(struct arche_platform_drvdata *arche_pdata)
-{
- int ret;
-
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_ACTIVE)
- return 0;
-
- dev_info(arche_pdata->dev, "Booting from cold boot state\n");
-
- svc_reset_onoff(arche_pdata->svc_reset, arche_pdata->is_reset_act_hi);
-
- gpiod_set_value(arche_pdata->svc_sysboot, 0);
- usleep_range(100, 200);
-
- ret = clk_prepare_enable(arche_pdata->svc_ref_clk);
- if (ret) {
- dev_err(arche_pdata->dev, "failed to enable svc_ref_clk: %d\n",
- ret);
- return ret;
- }
-
- /* bring SVC out of reset */
- svc_reset_onoff(arche_pdata->svc_reset, !arche_pdata->is_reset_act_hi);
-
- arche_platform_set_state(arche_pdata, ARCHE_PLATFORM_STATE_ACTIVE);
-
- return 0;
-}
-
-/*
- * Requires arche_pdata->platform_state_mutex to be held
- */
-static int
-arche_platform_fw_flashing_seq(struct arche_platform_drvdata *arche_pdata)
-{
- int ret;
-
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_FW_FLASHING)
- return 0;
-
- dev_info(arche_pdata->dev, "Switching to FW flashing state\n");
-
- svc_reset_onoff(arche_pdata->svc_reset, arche_pdata->is_reset_act_hi);
-
- gpiod_set_value(arche_pdata->svc_sysboot, 1);
-
- usleep_range(100, 200);
-
- ret = clk_prepare_enable(arche_pdata->svc_ref_clk);
- if (ret) {
- dev_err(arche_pdata->dev, "failed to enable svc_ref_clk: %d\n",
- ret);
- return ret;
- }
-
- svc_reset_onoff(arche_pdata->svc_reset, !arche_pdata->is_reset_act_hi);
-
- arche_platform_set_state(arche_pdata, ARCHE_PLATFORM_STATE_FW_FLASHING);
-
- return 0;
-}
-
-/*
- * Requires arche_pdata->platform_state_mutex to be held
- */
-static void
-arche_platform_poweroff_seq(struct arche_platform_drvdata *arche_pdata)
-{
- unsigned long flags;
-
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_OFF)
- return;
-
- /* If in fw_flashing mode, then no need to repeate things again */
- if (arche_pdata->state != ARCHE_PLATFORM_STATE_FW_FLASHING) {
- disable_irq(arche_pdata->wake_detect_irq);
-
- spin_lock_irqsave(&arche_pdata->wake_lock, flags);
- arche_platform_set_wake_detect_state(arche_pdata,
- WD_STATE_IDLE);
- spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
- }
-
- clk_disable_unprepare(arche_pdata->svc_ref_clk);
-
- /* As part of exit, put APB back in reset state */
- svc_reset_onoff(arche_pdata->svc_reset, arche_pdata->is_reset_act_hi);
-
- arche_platform_set_state(arche_pdata, ARCHE_PLATFORM_STATE_OFF);
-}
-
-static ssize_t state_store(struct device *dev,
- struct device_attribute *attr,
- const char *buf, size_t count)
-{
- struct arche_platform_drvdata *arche_pdata = dev_get_drvdata(dev);
- int ret = 0;
-
- mutex_lock(&arche_pdata->platform_state_mutex);
-
- if (sysfs_streq(buf, "off")) {
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_OFF)
- goto exit;
-
- /* If SVC goes down, bring down APB's as well */
- device_for_each_child(arche_pdata->dev, NULL, apb_poweroff);
-
- arche_platform_poweroff_seq(arche_pdata);
-
- } else if (sysfs_streq(buf, "active")) {
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_ACTIVE)
- goto exit;
-
- /* First we want to make sure we power off everything
- * and then activate back again
- */
- device_for_each_child(arche_pdata->dev, NULL, apb_poweroff);
- arche_platform_poweroff_seq(arche_pdata);
-
- arche_platform_wd_irq_en(arche_pdata);
- ret = arche_platform_coldboot_seq(arche_pdata);
- if (ret)
- goto exit;
-
- } else if (sysfs_streq(buf, "standby")) {
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_STANDBY)
- goto exit;
-
- dev_warn(arche_pdata->dev, "standby state not supported\n");
- } else if (sysfs_streq(buf, "fw_flashing")) {
- if (arche_pdata->state == ARCHE_PLATFORM_STATE_FW_FLASHING)
- goto exit;
-
- /*
- * Here we only control SVC.
- *
- * In case of FW_FLASHING mode we do not want to control
- * APBs, as in case of V2, SPI bus is shared between both
- * the APBs. So let user chose which APB he wants to flash.
- */
- arche_platform_poweroff_seq(arche_pdata);
-
- ret = arche_platform_fw_flashing_seq(arche_pdata);
- if (ret)
- goto exit;
- } else {
- dev_err(arche_pdata->dev, "unknown state\n");
- ret = -EINVAL;
- }
-
-exit:
- mutex_unlock(&arche_pdata->platform_state_mutex);
- return ret ? ret : count;
-}
-
-static ssize_t state_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- struct arche_platform_drvdata *arche_pdata = dev_get_drvdata(dev);
-
- switch (arche_pdata->state) {
- case ARCHE_PLATFORM_STATE_OFF:
- return sysfs_emit(buf, "off\n");
- case ARCHE_PLATFORM_STATE_ACTIVE:
- return sysfs_emit(buf, "active\n");
- case ARCHE_PLATFORM_STATE_STANDBY:
- return sysfs_emit(buf, "standby\n");
- case ARCHE_PLATFORM_STATE_FW_FLASHING:
- return sysfs_emit(buf, "fw_flashing\n");
- default:
- return sysfs_emit(buf, "unknown state\n");
- }
-}
-
-static DEVICE_ATTR_RW(state);
-
-static int arche_platform_pm_notifier(struct notifier_block *notifier,
- unsigned long pm_event, void *unused)
-{
- struct arche_platform_drvdata *arche_pdata =
- container_of(notifier, struct arche_platform_drvdata,
- pm_notifier);
- int ret = NOTIFY_DONE;
-
- mutex_lock(&arche_pdata->platform_state_mutex);
- switch (pm_event) {
- case PM_SUSPEND_PREPARE:
- if (arche_pdata->state != ARCHE_PLATFORM_STATE_ACTIVE) {
- ret = NOTIFY_STOP;
- break;
- }
- device_for_each_child(arche_pdata->dev, NULL, apb_poweroff);
- arche_platform_poweroff_seq(arche_pdata);
- break;
- case PM_POST_SUSPEND:
- if (arche_pdata->state != ARCHE_PLATFORM_STATE_OFF)
- break;
-
- arche_platform_wd_irq_en(arche_pdata);
- arche_platform_coldboot_seq(arche_pdata);
- break;
- default:
- break;
- }
- mutex_unlock(&arche_pdata->platform_state_mutex);
-
- return ret;
-}
-
-static int arche_platform_probe(struct platform_device *pdev)
-{
- struct arche_platform_drvdata *arche_pdata;
- struct device *dev = &pdev->dev;
- struct device_node *np = dev->of_node;
- int ret;
- unsigned int flags;
-
- arche_pdata = devm_kzalloc(&pdev->dev, sizeof(*arche_pdata),
- GFP_KERNEL);
- if (!arche_pdata)
- return -ENOMEM;
-
- /* setup svc reset gpio */
- arche_pdata->is_reset_act_hi = of_property_read_bool(np,
- "svc,reset-active-high");
- if (arche_pdata->is_reset_act_hi)
- flags = GPIOD_OUT_HIGH;
- else
- flags = GPIOD_OUT_LOW;
-
- arche_pdata->svc_reset = devm_gpiod_get(dev, "svc,reset", flags);
- if (IS_ERR(arche_pdata->svc_reset)) {
- ret = PTR_ERR(arche_pdata->svc_reset);
- dev_err(dev, "failed to request svc-reset GPIO: %d\n", ret);
- return ret;
- }
- arche_platform_set_state(arche_pdata, ARCHE_PLATFORM_STATE_OFF);
-
- arche_pdata->svc_sysboot = devm_gpiod_get(dev, "svc,sysboot",
- GPIOD_OUT_LOW);
- if (IS_ERR(arche_pdata->svc_sysboot)) {
- ret = PTR_ERR(arche_pdata->svc_sysboot);
- dev_err(dev, "failed to request sysboot0 GPIO: %d\n", ret);
- return ret;
- }
-
- /* setup the clock request gpio first */
- arche_pdata->svc_refclk_req = devm_gpiod_get(dev, "svc,refclk-req",
- GPIOD_IN);
- if (IS_ERR(arche_pdata->svc_refclk_req)) {
- ret = PTR_ERR(arche_pdata->svc_refclk_req);
- dev_err(dev, "failed to request svc-clk-req GPIO: %d\n", ret);
- return ret;
- }
-
- /* setup refclk2 to follow the pin */
- arche_pdata->svc_ref_clk = devm_clk_get(dev, "svc_ref_clk");
- if (IS_ERR(arche_pdata->svc_ref_clk)) {
- ret = PTR_ERR(arche_pdata->svc_ref_clk);
- dev_err(dev, "failed to get svc_ref_clk: %d\n", ret);
- return ret;
- }
-
- platform_set_drvdata(pdev, arche_pdata);
-
- arche_pdata->num_apbs = of_get_child_count(np);
- dev_dbg(dev, "Number of APB's available - %d\n", arche_pdata->num_apbs);
-
- arche_pdata->wake_detect = devm_gpiod_get(dev, "svc,wake-detect",
- GPIOD_IN);
- if (IS_ERR(arche_pdata->wake_detect)) {
- ret = PTR_ERR(arche_pdata->wake_detect);
- dev_err(dev, "Failed requesting wake_detect GPIO: %d\n", ret);
- return ret;
- }
-
- arche_platform_set_wake_detect_state(arche_pdata, WD_STATE_IDLE);
-
- arche_pdata->dev = &pdev->dev;
-
- spin_lock_init(&arche_pdata->wake_lock);
- mutex_init(&arche_pdata->platform_state_mutex);
- arche_pdata->wake_detect_irq =
- gpiod_to_irq(arche_pdata->wake_detect);
-
- ret = devm_request_threaded_irq(dev, arche_pdata->wake_detect_irq,
- arche_platform_wd_irq,
- arche_platform_wd_irq_thread,
- IRQF_TRIGGER_FALLING |
- IRQF_TRIGGER_RISING | IRQF_ONESHOT,
- dev_name(dev), arche_pdata);
- if (ret) {
- dev_err(dev, "failed to request wake detect IRQ %d\n", ret);
- return ret;
- }
- disable_irq(arche_pdata->wake_detect_irq);
-
- ret = device_create_file(dev, &dev_attr_state);
- if (ret) {
- dev_err(dev, "failed to create state file in sysfs\n");
- return ret;
- }
-
- ret = of_platform_populate(np, NULL, NULL, dev);
- if (ret) {
- dev_err(dev, "failed to populate child nodes %d\n", ret);
- goto err_device_remove;
- }
-
- arche_pdata->pm_notifier.notifier_call = arche_platform_pm_notifier;
- ret = register_pm_notifier(&arche_pdata->pm_notifier);
- if (ret) {
- dev_err(dev, "failed to register pm notifier %d\n", ret);
- goto err_depopulate;
- }
-
- /* Explicitly power off if requested */
- if (!of_property_read_bool(pdev->dev.of_node, "arche,init-off")) {
- mutex_lock(&arche_pdata->platform_state_mutex);
- ret = arche_platform_coldboot_seq(arche_pdata);
- if (ret) {
- mutex_unlock(&arche_pdata->platform_state_mutex);
- dev_err(dev, "Failed to cold boot svc %d\n", ret);
- goto err_unregister_pm_notifier;
- }
- arche_platform_wd_irq_en(arche_pdata);
- mutex_unlock(&arche_pdata->platform_state_mutex);
- }
-
- dev_info(dev, "Device registered successfully\n");
- return 0;
-
-err_unregister_pm_notifier:
- unregister_pm_notifier(&arche_pdata->pm_notifier);
-err_depopulate:
- of_platform_depopulate(dev);
-err_device_remove:
- device_remove_file(&pdev->dev, &dev_attr_state);
- return ret;
-}
-
-static void arche_platform_remove(struct platform_device *pdev)
-{
- struct arche_platform_drvdata *arche_pdata = platform_get_drvdata(pdev);
-
- unregister_pm_notifier(&arche_pdata->pm_notifier);
- device_remove_file(&pdev->dev, &dev_attr_state);
- of_platform_depopulate(&pdev->dev);
- arche_platform_poweroff_seq(arche_pdata);
-
- if (usb3613_hub_mode_ctrl(false))
- dev_warn(arche_pdata->dev, "failed to control hub device\n");
-}
-
-static __maybe_unused int arche_platform_suspend(struct device *dev)
-{
- /*
- * If timing profile permits, we may shutdown bridge
- * completely
- *
- * TODO: define shutdown sequence
- *
- * Also, need to make sure we meet precondition for unipro suspend
- * Precondition: Definition ???
- */
- return 0;
-}
-
-static __maybe_unused int arche_platform_resume(struct device *dev)
-{
- /*
- * At least for ES2 we have to meet the delay requirement between
- * unipro switch and AP bridge init, depending on whether bridge is in
- * OFF state or standby state.
- *
- * Based on whether bridge is in standby or OFF state we may have to
- * assert multiple signals. Please refer to WDM spec, for more info.
- *
- */
- return 0;
-}
-
-static void arche_platform_shutdown(struct platform_device *pdev)
-{
- struct arche_platform_drvdata *arche_pdata = platform_get_drvdata(pdev);
-
- arche_platform_poweroff_seq(arche_pdata);
-
- usb3613_hub_mode_ctrl(false);
-}
-
-static SIMPLE_DEV_PM_OPS(arche_platform_pm_ops,
- arche_platform_suspend,
- arche_platform_resume);
-
-static const struct of_device_id arche_platform_of_match[] = {
- /* Use PID/VID of SVC device */
- { .compatible = "google,arche-platform", },
- { },
-};
-MODULE_DEVICE_TABLE(of, arche_platform_of_match);
-
-static struct platform_driver arche_platform_device_driver = {
- .probe = arche_platform_probe,
- .remove = arche_platform_remove,
- .shutdown = arche_platform_shutdown,
- .driver = {
- .name = "arche-platform-ctrl",
- .pm = &arche_platform_pm_ops,
- .of_match_table = arche_platform_of_match,
- }
-};
-
-static int __init arche_init(void)
-{
- int retval;
-
- retval = platform_driver_register(&arche_platform_device_driver);
- if (retval)
- return retval;
-
- retval = arche_apb_init();
- if (retval)
- platform_driver_unregister(&arche_platform_device_driver);
-
- return retval;
-}
-module_init(arche_init);
-
-static void __exit arche_exit(void)
-{
- arche_apb_exit();
- platform_driver_unregister(&arche_platform_device_driver);
-}
-module_exit(arche_exit);
-
-MODULE_LICENSE("GPL v2");
-MODULE_AUTHOR("Vaibhav Hiremath <vaibhav.hiremath@linaro.org>");
-MODULE_DESCRIPTION("Arche Platform Driver");
diff --git a/drivers/staging/greybus/arche_platform.h b/drivers/staging/greybus/arche_platform.h
deleted file mode 100644
index 9d997f2d6517..000000000000
--- a/drivers/staging/greybus/arche_platform.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/*
- * Arche Platform driver to enable Unipro link.
- *
- * Copyright 2015-2016 Google Inc.
- * Copyright 2015-2016 Linaro Ltd.
- */
-
-#ifndef __ARCHE_PLATFORM_H
-#define __ARCHE_PLATFORM_H
-
-enum arche_platform_state {
- ARCHE_PLATFORM_STATE_OFF,
- ARCHE_PLATFORM_STATE_ACTIVE,
- ARCHE_PLATFORM_STATE_STANDBY,
- ARCHE_PLATFORM_STATE_FW_FLASHING,
-};
-
-int __init arche_apb_init(void);
-void __exit arche_apb_exit(void);
-
-/* Operational states for the APB device */
-int apb_ctrl_coldboot(struct device *dev);
-int apb_ctrl_fw_flashing(struct device *dev);
-int apb_ctrl_standby_boot(struct device *dev);
-void apb_ctrl_poweroff(struct device *dev);
-
-#endif /* __ARCHE_PLATFORM_H */
diff --git a/drivers/staging/greybus/camera.c b/drivers/staging/greybus/camera.c
deleted file mode 100644
index 62b55bb28408..000000000000
--- a/drivers/staging/greybus/camera.c
+++ /dev/null
@@ -1,1367 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-/*
- * Greybus Camera protocol driver.
- *
- * Copyright 2015 Google Inc.
- * Copyright 2015 Linaro Ltd.
- */
-
-#include <linux/debugfs.h>
-#include <linux/fs.h>
-#include <linux/kernel.h>
-#include <linux/module.h>
-#include <linux/slab.h>
-#include <linux/string.h>
-#include <linux/uaccess.h>
-#include <linux/vmalloc.h>
-#include <linux/greybus.h>
-
-#include "gb-camera.h"
-#include "greybus_protocols.h"
-
-enum gb_camera_debugs_buffer_id {
- GB_CAMERA_DEBUGFS_BUFFER_CAPABILITIES,
- GB_CAMERA_DEBUGFS_BUFFER_STREAMS,
- GB_CAMERA_DEBUGFS_BUFFER_CAPTURE,
- GB_CAMERA_DEBUGFS_BUFFER_FLUSH,
- GB_CAMERA_DEBUGFS_BUFFER_MAX,
-};
-
-struct gb_camera_debugfs_buffer {
- char data[PAGE_SIZE];
- size_t length;
-};
-
-enum gb_camera_state {
- GB_CAMERA_STATE_UNCONFIGURED,
- GB_CAMERA_STATE_CONFIGURED,
-};
-
-/**
- * struct gb_camera - A Greybus Camera Device
- * @connection: the greybus connection for camera management
- * @data_connection: the greybus connection for camera data
- * @data_cport_id: the data CPort ID on the module side
- * @mutex: protects the connection and state fields
- * @state: the current module state
- * @debugfs: debugfs entries for camera protocol operations testing
- * @module: Greybus camera module registered to HOST processor.
- */
-struct gb_camera {
- struct gb_bundle *bundle;
- struct gb_connection *connection;
- struct gb_connection *data_connection;
- u16 data_cport_id;
-
- struct mutex mutex;
- enum gb_camera_state state;
-
- struct {
- struct dentry *root;
- struct gb_camera_debugfs_buffer *buffers;
- } debugfs;
-
- struct gb_camera_module module;
-};
-
-struct gb_camera_stream_config {
- unsigned int width;
- unsigned int height;
- unsigned int format;
- unsigned int vc;
- unsigned int dt[2];
- unsigned int max_size;
-};
-
-struct gb_camera_fmt_info {
- enum v4l2_mbus_pixelcode mbus_code;
- unsigned int gb_format;
- unsigned int bpp;
-};
-
-/* GB format to media code map */
-static const struct gb_camera_fmt_info gb_fmt_info[] = {
- {
- .mbus_code = V4L2_MBUS_FMT_UYVY8_1X16,
- .gb_format = 0x01,
- .bpp = 16,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_NV12_1x8,
- .gb_format = 0x12,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_NV21_1x8,
- .gb_format = 0x13,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_YU12_1x8,
- .gb_format = 0x16,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_YV12_1x8,
- .gb_format = 0x17,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_JPEG_1X8,
- .gb_format = 0x40,
- .bpp = 0,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_GB_CAM_METADATA_1X8,
- .gb_format = 0x41,
- .bpp = 0,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_GB_CAM_DEBUG_DATA_1X8,
- .gb_format = 0x42,
- .bpp = 0,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SBGGR10_1X10,
- .gb_format = 0x80,
- .bpp = 10,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SGBRG10_1X10,
- .gb_format = 0x81,
- .bpp = 10,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SGRBG10_1X10,
- .gb_format = 0x82,
- .bpp = 10,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SRGGB10_1X10,
- .gb_format = 0x83,
- .bpp = 10,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SBGGR12_1X12,
- .gb_format = 0x84,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SGBRG12_1X12,
- .gb_format = 0x85,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SGRBG12_1X12,
- .gb_format = 0x86,
- .bpp = 12,
- },
- {
- .mbus_code = V4L2_MBUS_FMT_SRGGB12_1X12,
- .gb_format = 0x87,
- .bpp = 12,
- },
-};
-
-static const struct gb_camera_fmt_info *gb_camera_get_format_info(u16 gb_fmt)
-{
- unsigned int i;
-
- for (i = 0; i < ARRAY_SIZE(gb_fmt_info); i++) {
- if (gb_fmt_info[i].gb_format == gb_fmt)
- return &gb_fmt_info[i];
- }
-
- return NULL;
-}
-
-#define ES2_APB_CDSI0_CPORT 16
-#define ES2_APB_CDSI1_CPORT 17
-
-#define GB_CAMERA_MAX_SETTINGS_SIZE 8192
-
-static int gb_camera_operation_sync_flags(struct gb_connection *connection,
- int type, unsigned int flags,
- void *request, size_t request_size,
- void *response, size_t *response_size)
-{
- struct gb_operation *operation;
- int ret;
-
- operation = gb_operation_create_flags(connection, type, request_size,
- *response_size, flags,
- GFP_KERNEL);
- if (!operation)
- return -ENOMEM;
-
- if (request_size)
- memcpy(operation->request->payload, request, request_size);
-
- ret = gb_operation_request_send_sync(operation);
- if (ret) {
- dev_err(&connection->hd->dev,
- "%s: synchronous operation of type 0x%02x failed: %d\n",
- connection->name, type, ret);
- } else {
- *response_size = operation->response->payload_size;
-
- if (operation->response->payload_size)
- memcpy(response, operation->response->payload,
- operation->response->payload_size);
- }
-
- gb_operation_put(operation);
-
- return ret;
-}
-
-static int gb_camera_get_max_pkt_size(struct gb_camera *gcam,
- struct gb_camera_configure_streams_response *resp)
-{
- unsigned int max_pkt_size = 0;
- unsigned int i;
-
- for (i = 0; i < resp->num_streams; i++) {
- struct gb_camera_stream_config_response *cfg = &resp->config[i];
- const struct gb_camera_fmt_info *fmt_info;
- unsigned int pkt_size;
-
- fmt_info = gb_camera_get_format_info(cfg->format);
- if (!fmt_info) {
- dev_err(&gcam->bundle->dev, "unsupported greybus image format: %d\n",
- cfg->format);
- return -EIO;
- }
-
- if (fmt_info->bpp == 0) {
- pkt_size = le32_to_cpu(cfg->max_pkt_size);
-
- if (pkt_size == 0) {
- dev_err(&gcam->bundle->dev,
- "Stream %u: invalid zero maximum packet size\n",
- i);
- return -EIO;
- }
- } else {
- pkt_size = le16_to_cpu(cfg->width) * fmt_info->bpp / 8;
-
- if (pkt_size != le32_to_cpu(cfg->max_pkt_size)) {
- dev_err(&gcam->bundle->dev,
- "Stream %u: maximum packet size mismatch (%u/%u)\n",
- i, pkt_size, cfg->max_pkt_size);
- return -EIO;
- }
- }
-
- max_pkt_size = max(pkt_size, max_pkt_size);
- }
-
- return max_pkt_size;
-}
-
-/*
- * Validate the stream configuration response verifying padding is correctly
- * set and the returned number of streams is supported
- */
-static const int gb_camera_configure_streams_validate_response(struct gb_camera *gcam,
- struct gb_camera_configure_streams_response *resp,
- unsigned int nstreams)
-{
- unsigned int i;
-
- /* Validate the returned response structure */
- if (resp->padding[0] || resp->padding[1]) {
- dev_err(&gcam->bundle->dev, "response padding != 0\n");
- return -EIO;
- }
-
- if (resp->num_streams > nstreams) {
- dev_err(&gcam->bundle->dev, "got #streams %u > request %u\n",
- resp->num_streams, nstreams);
- return -EIO;
- }
-
- for (i = 0; i < resp->num_streams; i++) {
- struct gb_camera_stream_config_response *cfg = &resp->config[i];
-
- if (cfg->padding) {
- dev_err(&gcam->bundle->dev, "stream #%u padding != 0\n", i);
- return -EIO;
- }
- }
-
- return 0;
-}
-
-/* -----------------------------------------------------------------------------
- * Hardware Configuration
- */
-
-static int gb_camera_set_intf_power_mode(struct gb_camera *gcam, u8 intf_id,
- bool hs)
-{
- struct gb_svc *svc = gcam->connection->hd->svc;
- int ret;
-
- if (hs)
- ret = gb_svc_intf_set_power_mode(svc, intf_id,
- GB_SVC_UNIPRO_HS_SERIES_A,
- GB_SVC_UNIPRO_FAST_MODE, 2, 2,
- GB_SVC_SMALL_AMPLITUDE,
- GB_SVC_NO_DE_EMPHASIS,
- GB_SVC_UNIPRO_FAST_MODE, 2, 2,
- GB_SVC_PWRM_RXTERMINATION |
- GB_SVC_PWRM_TXTERMINATION, 0,
- NULL, NULL);
- else
- ret = gb_svc_intf_set_power_mode(svc, intf_id,
- GB_SVC_UNIPRO_HS_SERIES_A,
- GB_SVC_UNIPRO_SLOW_AUTO_MODE,
- 2, 1,
- GB_SVC_SMALL_AMPLITUDE,
- GB_SVC_NO_DE_EMPHASIS,
- GB_SVC_UNIPRO_SLOW_AUTO_MODE,
- 2, 1,
- 0, 0,
- NULL, NULL);
-
- return ret;
-}
-
-static int gb_camera_set_power_mode(struct gb_camera *gcam, bool hs)
-{
- struct gb_interface *intf = gcam->connection->intf;
- struct gb_svc *svc = gcam->connection->hd->svc;
- int ret;
-
- ret = gb_camera_set_intf_power_mode(gcam, intf->interface_id, hs);
- if (ret < 0) {
- dev_err(&gcam->bundle->dev, "failed to set module interface to %s (%d)\n",
- hs ? "HS" : "PWM", ret);
- return ret;
- }
-
- ret = gb_camera_set_intf_power_mode(gcam, svc->ap_intf_id, hs);
- if (ret < 0) {
- gb_camera_set_intf_power_mode(gcam, intf->interface_id, !hs);
- dev_err(&gcam->bundle->dev, "failed to set AP interface to %s (%d)\n",
- hs ? "HS" : "PWM", ret);
- return ret;
- }
-
- return 0;
-}
-
-struct ap_csi_config_request {
- __u8 csi_id;
- __u8 flags;
-#define GB_CAMERA_CSI_FLAG_CLOCK_CONTINUOUS 0x01
- __u8 num_lanes;
- __u8 padding;
- __le32 csi_clk_freq;
- __le32 max_pkt_size;
-} __packed;
-
-/*
- * TODO: Compute the number of lanes dynamically based on bandwidth
- * requirements.
- */
-#define GB_CAMERA_CSI_NUM_DATA_LANES 4
-
-#define GB_CAMERA_CSI_CLK_FREQ_MAX 999000000U
-#define GB_CAMERA_CSI_CLK_FREQ_MIN 100000000U
-#define GB_CAMERA_CSI_CLK_FREQ_MARGIN 150000000U
-
-static int gb_camera_setup_data_connection(struct gb_camera *gcam,
- struct gb_camera_configure_streams_response *resp,
- struct gb_camera_csi_params *csi_params)
-{
- struct ap_csi_config_request csi_cfg;
- struct gb_connection *conn;
- unsigned int clk_freq;
- int ret;
-
- /*
- * Create the data connection between the camera module data CPort and
- * APB CDSI1. The CDSI1 CPort ID is hardcoded by the ES2 bridge.
- */
- conn = gb_connection_create_offloaded(gcam->bundle, gcam->data_cport_id,
- GB_CONNECTION_FLAG_NO_FLOWCTRL |
- GB_CONNECTION_FLAG_CDSI1);
- if (IS_ERR(conn))
- return PTR_ERR(conn);
-
- gcam->data_connection = conn;
- gb_connection_set_data(conn, gcam);
-
- ret = gb_connection_enable(conn);
- if (ret)
- goto error_conn_destroy;
-
- /* Set the UniPro link to high speed mode. */
- ret = gb_camera_set_power_mode(gcam, true);
- if (ret < 0)
- goto error_conn_disable;
-
- /*
- * Configure the APB-A CSI-2 transmitter.
- *
- * Hardcode the number of lanes to 4 and compute the bus clock frequency
- * based on the module bandwidth requirements with a safety margin.
- */
- memset(&csi_cfg, 0, sizeof(csi_cfg));
- csi_cfg.csi_id = 1;
- csi_cfg.flags = 0;
- csi_cfg.num_lanes = GB_CAMERA_CSI_NUM_DATA_LANES;
-
- clk_freq = resp->data_rate / 2 / GB_CAMERA_CSI_NUM_DATA_LANES;
- clk_freq = clamp(clk_freq + GB_CAMERA_CSI_CLK_FREQ_MARGIN,
- GB_CAMERA_CSI_CLK_FREQ_MIN,
- GB_CAMERA_CSI_CLK_FREQ_MAX);
- csi_cfg.csi_clk_freq = clk_freq;
-
- ret = gb_camera_get_max_pkt_size(gcam, resp);
- if (ret < 0) {
- ret = -EIO;
- goto error_power;
- }
- csi_cfg.max_pkt_size = ret;
-
- ret = gb_hd_output(gcam->connection->hd, &csi_cfg,
- sizeof(csi_cfg),
- GB_APB_REQUEST_CSI_TX_CONTROL, false);
- if (ret < 0) {
- dev_err(&gcam->bundle->dev, "failed to start the CSI transmitter\n");
- goto error_power;
- }
-
- if (csi_params) {
- csi_params->clk_freq = csi_cfg.csi_clk_freq;
- csi_params->num_lanes = csi_cfg.num_lanes;
- }
-
- return 0;
-
-error_power:
- gb_camera_set_power_mode(gcam, false);
-error_conn_disable:
- gb_connection_disable(gcam->data_connection);
-error_conn_destroy:
- gb_connection_destroy(gcam->data_connection);
- gcam->data_connection = NULL;
- return ret;
-}
-
-static void gb_camera_teardown_data_connection(struct gb_camera *gcam)
-{
- struct ap_csi_config_request csi_cfg;
- int ret;
-
- /* Stop the APB1 CSI transmitter. */
- memset(&csi_cfg, 0, sizeof(csi_cfg));
- csi_cfg.csi_id = 1;
-
- ret = gb_hd_output(gcam->connection->hd, &csi_cfg,
- sizeof(csi_cfg),
- GB_APB_REQUEST_CSI_TX_CONTROL, false);
-
- if (ret < 0)
- dev_err(&gcam->bundle->dev, "failed to stop the CSI transmitter\n");
-
- /* Set the UniPro link to low speed mode. */
- gb_camera_set_power_mode(gcam, false);
-
- /* Destroy the data connection. */
- gb_connection_disable(gcam->data_connection);
- gb_connection_destroy(gcam->data_connection);
- gcam->data_connection = NULL;
-}
-
-/* -----------------------------------------------------------------------------
- * Camera Protocol Operations
- */
-
-static int gb_camera_capabilities(struct gb_camera *gcam,
- u8 *capabilities, size_t *size)
-{
- int ret;
-
- ret = gb_pm_runtime_get_sync(gcam->bundle);
- if (ret)
- return ret;
-
- mutex_lock(&gcam->mutex);
-
- if (!gcam->connection) {
- ret = -EINVAL;
- goto done;
- }
-
- ret = gb_camera_operation_sync_flags(gcam->connection,
- GB_CAMERA_TYPE_CAPABILITIES,
- GB_OPERATION_FLAG_SHORT_RESPONSE,
- NULL, 0,
- (void *)capabilities, size);
- if (ret)
- dev_err(&gcam->bundle->dev, "failed to retrieve capabilities: %d\n", ret);
-
-done:
- mutex_unlock(&gcam->mutex);
-
- gb_pm_runtime_put_autosuspend(gcam->bundle);
-
- return ret;
-}
-
-static int gb_camera_configure_streams(struct gb_camera *gcam,
- unsigned int *num_streams,
- unsigned int *flags,
- struct gb_camera_stream_config *streams,
- struct gb_camera_csi_params *csi_params)
-{
- struct gb_camera_configure_streams_request *req;
- struct gb_camera_configure_streams_response *resp;
- unsigned int nstreams = *num_streams;
- unsigned int i;
- size_t req_size;
- size_t resp_size;
- int ret;
-
- if (nstreams > GB_CAMERA_MAX_STREAMS)
- return -EINVAL;
-
- req_size = sizeof(*req) + nstreams * sizeof(req->config[0]);
- resp_size = sizeof(*resp) + nstreams * sizeof(resp->config[0]);
-
- req = kmalloc(req_size, GFP_KERNEL);
- resp = kmalloc(resp_size, GFP_KERNEL);
- if (!req || !resp) {
- kfree(req);
- kfree(resp);
- return -ENOMEM;
- }
-
- req->num_streams = nstreams;
- req->flags = *flags;
- req->padding = 0;
-
- for (i = 0; i < nstreams; ++i) {
- struct gb_camera_stream_config_request *cfg = &req->config[i];
-
- cfg->width = cpu_to_le16(streams[i].width);
- cfg->height = cpu_to_le16(streams[i].height);
- cfg->format = cpu_to_le16(streams[i].format);
- cfg->padding = 0;
- }
-
- mutex_lock(&gcam->mutex);
-
- ret = gb_pm_runtime_get_sync(gcam->bundle);
- if (ret)
- goto done_skip_pm_put;
-
- if (!gcam->connection) {
- ret = -EINVAL;
- goto done;
- }
-
- ret = gb_camera_operation_sync_flags(gcam->connection,
- GB_CAMERA_TYPE_CONFIGURE_STREAMS,
- GB_OPERATION_FLAG_SHORT_RESPONSE,
- req, req_size,
- resp, &resp_size);
- if (ret < 0)
- goto done;
-
- ret = gb_camera_configure_streams_validate_response(gcam, resp,
- nstreams);
- if (ret < 0)
- goto done;
-
- *flags = resp->flags;
- *num_streams = resp->num_streams;
-
- for (i = 0; i < resp->num_streams; ++i) {
- struct gb_camera_stream_config_response *cfg = &resp->config[i];
-
- streams[i].width = le16_to_cpu(cfg->width);
- streams[i].height = le16_to_cpu(cfg->height);
- streams[i].format = le16_to_cpu(cfg->format);
- streams[i].vc = cfg->virtual_channel;
- streams[i].dt[0] = cfg->data_type[0];
- streams[i].dt[1] = cfg->data_type[1];
- streams[i].max_size = le32_to_cpu(cfg->max_size);
- }
-
- if ((resp->flags & GB_CAMERA_CONFIGURE_STREAMS_ADJUSTED) ||
- (req->flags & GB_CAMERA_CONFIGURE_STREAMS_TEST_ONLY))
- goto done;
-
- if (gcam->state == GB_CAMERA_STATE_CONFIGURED) {
- gb_camera_teardown_data_connection(gcam);
- gcam->state = GB_CAMERA_STATE_UNCONFIGURED;
-
- /*
- * When unconfiguring streams release the PM runtime reference
- * that was acquired when streams were configured. The bundle
- * won't be suspended until the PM runtime reference acquired at
- * the beginning of this function gets released right before
- * returning.
- */
- gb_pm_runtime_put_noidle(gcam->bundle);
- }
-
- if (resp->num_streams == 0)
- goto done;
-
- /*
- * Make sure the bundle won't be suspended until streams get
- * unconfigured after the stream is configured successfully
- */
- gb_pm_runtime_get_noresume(gcam->bundle);
-
- /* Setup CSI-2 connection from APB-A to AP */
- ret = gb_camera_setup_data_connection(gcam, resp, csi_params);
- if (ret < 0) {
- memset(req, 0, sizeof(*req));
- gb_operation_sync(gcam->connection,
- GB_CAMERA_TYPE_CONFIGURE_STREAMS,
- req, sizeof(*req),
- resp, sizeof(*resp));
- *flags = 0;
- *num_streams = 0;
- gb_pm_runtime_put_noidle(gcam->bundle);
- goto done;
- }
-
- gcam->state = GB_CAMERA_STATE_CONFIGURED;
-
-done:
- gb_pm_runtime_put_autosuspend(gcam->bundle);
-
-done_skip_pm_put:
- mutex_unlock(&gcam->mutex);
- kfree(req);
- kfree(resp);
- return ret;
-}
-
-static int gb_camera_capture(struct gb_camera *gcam, u32 request_id,
- unsigned int streams, unsigned int num_frames,
- size_t settings_size, const void *settings)
-{
- struct gb_camera_capture_request *req;
- size_t req_size;
- int ret;
-
- if (settings_size > GB_CAMERA_MAX_SETTINGS_SIZE)
- return -EINVAL;
-
- req_size = sizeof(*req) + settings_size;
- req = kmalloc(req_size, GFP_KERNEL);
- if (!req)
- return -ENOMEM;
-
- req->request_id = cpu_to_le32(request_id);
- req->streams = streams;
- req->padding = 0;
- req->num_frames = cpu_to_le16(num_frames);
- memcpy(req->settings, settings, settings_size);
-
- mutex_lock(&gcam->mutex);
-
- if (!gcam->connection) {
- ret = -EINVAL;
- goto done;
- }
-
- ret = gb_operation_sync(gcam->connection, GB_CAMERA_TYPE_CAPTURE,
- req, req_size, NULL, 0);
-done:
- mutex_unlock(&gcam->mutex);
-
- kfree(req);
-
- return ret;
-}
-
-static int gb_camera_flush(struct gb_camera *gcam, u32 *request_id)
-{
- struct gb_camera_flush_response resp;
- int ret;
-
- mutex_lock(&gcam->mutex);
-
- if (!gcam->connection) {
- ret = -EINVAL;
- goto done;
- }
-
- ret = gb_operation_sync(gcam->connection, GB_CAMERA_TYPE_FLUSH, NULL, 0,
- &resp, sizeof(resp));
-
- if (ret < 0)
- goto done;
-
- if (request_id)
- *request_id = le32_to_cpu(resp.request_id);
-
-done:
- mutex_unlock(&gcam->mutex);
-
- return ret;
-}
-
-static int gb_camera_request_handler(struct gb_operation *op)
-{
- struct gb_camera *gcam = gb_connection_get_data(op->connection);
- struct gb_camera_metadata_request *payload;
- struct gb_message *request;
-
- if (op->type != GB_CAMERA_TYPE_METADATA) {
- dev_err(&gcam->bundle->dev, "Unsupported unsolicited event: %u\n", op->type);
- return -EINVAL;
- }
-
- request = op->request;
-
- if (request->payload_size < sizeof(*payload)) {
- dev_err(&gcam->bundle->dev, "Wrong event size received (%zu < %zu)\n",
- request->payload_size, sizeof(*payload));
- return -EINVAL;
- }
-
- payload = request->payload;
-
- dev_dbg(&gcam->bundle->dev, "received metadata for request %u, frame %u, stream %u\n",
- payload->request_id, payload->frame_number, payload->stream);
-
- return 0;
-}
-
-/* -----------------------------------------------------------------------------
- * Interface with HOST gmp camera.
- */
-static unsigned int gb_camera_mbus_to_gb(enum v4l2_mbus_pixelcode mbus_code)
-{
- unsigned int i;
-
- for (i = 0; i < ARRAY_SIZE(gb_fmt_info); i++) {
- if (gb_fmt_info[i].mbus_code == mbus_code)
- return gb_fmt_info[i].gb_format;
- }
- return gb_fmt_info[0].gb_format;
-}
-
-static enum v4l2_mbus_pixelcode gb_camera_gb_to_mbus(u16 gb_fmt)
-{
- unsigned int i;
-
- for (i = 0; i < ARRAY_SIZE(gb_fmt_info); i++) {
- if (gb_fmt_info[i].gb_format == gb_fmt)
- return gb_fmt_info[i].mbus_code;
- }
- return gb_fmt_info[0].mbus_code;
-}
-
-static ssize_t gb_camera_op_capabilities(void *priv, char *data, size_t len)
-{
- struct gb_camera *gcam = priv;
- size_t capabilities_len = len;
- int ret;
-
- ret = gb_camera_capabilities(gcam, data, &capabilities_len);
- if (ret)
- return ret;
-
- return capabilities_len;
-}
-
-static int gb_camera_op_configure_streams(void *priv, unsigned int *nstreams,
- unsigned int *flags, struct gb_camera_stream *streams,
- struct gb_camera_csi_params *csi_params)
-{
- struct gb_camera *gcam = priv;
- struct gb_camera_stream_config *gb_streams;
- unsigned int gb_flags = 0;
- unsigned int gb_nstreams = *nstreams;
- unsigned int i;
- int ret;
-
- if (gb_nstreams > GB_CAMERA_MAX_STREAMS)
- return -EINVAL;
-
- gb_streams = kzalloc_objs(*gb_streams, gb_nstreams);
- if (!gb_streams)
- return -ENOMEM;
-
- for (i = 0; i < gb_nstreams; i++) {
- gb_streams[i].width = streams[i].width;
- gb_streams[i].height = streams[i].height;
- gb_streams[i].format =
- gb_camera_mbus_to_gb(streams[i].pixel_code);
- }
-
- if (*flags & GB_CAMERA_IN_FLAG_TEST)
- gb_flags |= GB_CAMERA_CONFIGURE_STREAMS_TEST_ONLY;
-
- ret = gb_camera_configure_streams(gcam, &gb_nstreams,
- &gb_flags, gb_streams, csi_params);
- if (ret < 0)
- goto done;
- if (gb_nstreams > *nstreams) {
- ret = -EINVAL;
- goto done;
- }
-
- *flags = 0;
- if (gb_flags & GB_CAMERA_CONFIGURE_STREAMS_ADJUSTED)
- *flags |= GB_CAMERA_OUT_FLAG_ADJUSTED;
-
- for (i = 0; i < gb_nstreams; i++) {
- streams[i].width = gb_streams[i].width;
- streams[i].height = gb_streams[i].height;
- streams[i].vc = gb_streams[i].vc;
- streams[i].dt[0] = gb_streams[i].dt[0];
- streams[i].dt[1] = gb_streams[i].dt[1];
- streams[i].max_size = gb_streams[i].max_size;
- streams[i].pixel_code =
- gb_camera_gb_to_mbus(gb_streams[i].format);
- }
- *nstreams = gb_nstreams;
-
-done:
- kfree(gb_streams);
- return ret;
-}
-
-static int gb_camera_op_capture(void *priv, u32 request_id,
- unsigned int streams, unsigned int num_frames,
- size_t settings_size, const void *settings)
-{
- struct gb_camera *gcam = priv;
-
- return gb_camera_capture(gcam, request_id, streams, num_frames,
- settings_size, settings);
-}
-
-static int gb_camera_op_flush(void *priv, u32 *request_id)
-{
- struct gb_camera *gcam = priv;
-
- return gb_camera_flush(gcam, request_id);
-}
-
-static const struct gb_camera_ops gb_cam_ops = {
- .capabilities = gb_camera_op_capabilities,
- .configure_streams = gb_camera_op_configure_streams,
- .capture = gb_camera_op_capture,
- .flush = gb_camera_op_flush,
-};
-
-/* -----------------------------------------------------------------------------
- * DebugFS
- */
-
-static ssize_t gb_camera_debugfs_capabilities(struct gb_camera *gcam,
- char *buf, size_t len)
-{
- struct gb_camera_debugfs_buffer *buffer =
- &gcam->debugfs.buffers[GB_CAMERA_DEBUGFS_BUFFER_CAPABILITIES];
- size_t size = 1024;
- unsigned int i;
- u8 *caps;
- int ret;
-
- caps = kmalloc(size, GFP_KERNEL);
- if (!caps)
- return -ENOMEM;
-
- ret = gb_camera_capabilities(gcam, caps, &size);
- if (ret < 0)
- goto done;
-
- /*
- * hex_dump_to_buffer() doesn't return the number of bytes dumped prior
- * to v4.0, we need our own implementation :-(
- */
- buffer->length = 0;
-
- for (i = 0; i < size; i += 16) {
- unsigned int nbytes = min_t(unsigned int, size - i, 16);
-
- buffer->length += sprintf(buffer->data + buffer->length,
- "%*ph\n", nbytes, caps + i);
- }
-
-done:
- kfree(caps);
- return ret;
-}
-
-static ssize_t gb_camera_debugfs_configure_streams(struct gb_camera *gcam,
- char *buf, size_t len)
-{
- struct gb_camera_debugfs_buffer *buffer =
- &gcam->debugfs.buffers[GB_CAMERA_DEBUGFS_BUFFER_STREAMS];
- struct gb_camera_stream_config *streams;
- unsigned int nstreams;
- unsigned int flags;
- unsigned int i;
- char *token;
- int ret;
-
- /* Retrieve number of streams to configure */
- token = strsep(&buf, ";");
- if (!token)
- return -EINVAL;
-
- ret = kstrtouint(token, 10, &nstreams);
- if (ret < 0)
- return ret;
-
- if (nstreams > GB_CAMERA_MAX_STREAMS)
- return -EINVAL;
-
- token = strsep(&buf, ";");
- if (!token)
- return -EINVAL;
-
- ret = kstrtouint(token, 10, &flags);
- if (ret < 0)
- return ret;
-
- /* For each stream to configure parse width, height and format */
- streams = kzalloc_objs(*streams, nstreams);
- if (!streams)
- return -ENOMEM;
-
- for (i = 0; i < nstreams; ++i) {
- struct gb_camera_stream_config *stream = &streams[i];
-
- /* width */
- token = strsep(&buf, ";");
- if (!token) {
- ret = -EINVAL;
- goto done;
- }
- ret = kstrtouint(token, 10, &stream->width);
- if (ret < 0)
- goto done;
-
- /* height */
- token = strsep(&buf, ";");
- if (!token)
- goto done;
-
- ret = kstrtouint(token, 10, &stream->height);
- if (ret < 0)
- goto done;
-
- /* Image format code */
- token = strsep(&buf, ";");
- if (!token)
- goto done;
-
- ret = kstrtouint(token, 16, &stream->format);
- if (ret < 0)
- goto done;
- }
-
- ret = gb_camera_configure_streams(gcam, &nstreams, &flags, streams,
- NULL);
- if (ret < 0)
- goto done;
-
- buffer->length = sprintf(buffer->data, "%u;%u;", nstreams, flags);
-
- for (i = 0; i < nstreams; ++i) {
- struct gb_camera_stream_config *stream = &streams[i];
-
- buffer->length += sprintf(buffer->data + buffer->length,
- "%u;%u;%u;%u;%u;%u;%u;",
- stream->width, stream->height,
- stream->format, stream->vc,
- stream->dt[0], stream->dt[1],
- stream->max_size);
- }
-
- ret = len;
-
-done:
- kfree(streams);
- return ret;
-};
-
-static ssize_t gb_camera_debugfs_capture(struct gb_camera *gcam,
- char *buf, size_t len)
-{
- unsigned int request_id;
- unsigned int streams_mask;
- unsigned int num_frames;
- char *token;
- int ret;
-
- /* Request id */
- token = strsep(&buf, ";");
- if (!token)
- return -EINVAL;
- ret = kstrtouint(token, 10, &request_id);
- if (ret < 0)
- return ret;
-
- /* Stream mask */
- token = strsep(&buf, ";");
- if (!token)
- return -EINVAL;
- ret = kstrtouint(token, 16, &streams_mask);
- if (ret < 0)
- return ret;
-
- /* number of frames */
- token = strsep(&buf, ";");
- if (!token)
- return -EINVAL;
- ret = kstrtouint(token, 10, &num_frames);
- if (ret < 0)
- return ret;
-
- ret = gb_camera_capture(gcam, request_id, streams_mask, num_frames, 0,
- NULL);
- if (ret < 0)
- return ret;
-
- return len;
-}
-
-static ssize_t gb_camera_debugfs_flush(struct gb_camera *gcam,
- char *buf, size_t len)
-{
- struct gb_camera_debugfs_buffer *buffer =
- &gcam->debugfs.buffers[GB_CAMERA_DEBUGFS_BUFFER_FLUSH];
- unsigned int req_id;
- int ret;
-
- ret = gb_camera_flush(gcam, &req_id);
- if (ret < 0)
- return ret;
-
- buffer->length = sprintf(buffer->data, "%u", req_id);
-
- return len;
-}
-
-struct gb_camera_debugfs_entry {
- const char *name;
- unsigned int mask;
- unsigned int buffer;
- ssize_t (*execute)(struct gb_camera *gcam, char *buf, size_t len);
-};
-
-static const struct gb_camera_debugfs_entry gb_camera_debugfs_entries[] = {
- {
- .name = "capabilities",
- .mask = S_IFREG | 0444,
- .buffer = GB_CAMERA_DEBUGFS_BUFFER_CAPABILITIES,
- .execute = gb_camera_debugfs_capabilities,
- }, {
- .name = "configure_streams",
- .mask = S_IFREG | 0666,
- .buffer = GB_CAMERA_DEBUGFS_BUFFER_STREAMS,
- .execute = gb_camera_debugfs_configure_streams,
- }, {
- .name = "capture",
- .mask = S_IFREG | 0666,
- .buffer = GB_CAMERA_DEBUGFS_BUFFER_CAPTURE,
- .execute = gb_camera_debugfs_capture,
- }, {
- .name = "flush",
- .mask = S_IFREG | 0666,
- .buffer = GB_CAMERA_DEBUGFS_BUFFER_FLUSH,
- .execute = gb_camera_debugfs_flush,
- },
-};
-
-static ssize_t gb_camera_debugfs_read(struct file *file, char __user *buf,
- size_t len, loff_t *offset)
-{
- const struct gb_camera_debugfs_entry *op = file->private_data;
- struct gb_camera *gcam = file_inode(file)->i_private;
- struct gb_camera_debugfs_buffer *buffer;
- ssize_t ret;
-
- /* For read-only entries the operation is triggered by a read. */
- if (!(op->mask & 0222)) {
- ret = op->execute(gcam, NULL, 0);
- if (ret < 0)
- return ret;
- }
-
- buffer = &gcam->debugfs.buffers[op->buffer];
-
- return simple_read_from_buffer(buf, len, offset, buffer->data,
- buffer->length);
-}
-
-static ssize_t gb_camera_debugfs_write(struct file *file,
- const char __user *buf, size_t len,
- loff_t *offset)
-{
- const struct gb_camera_debugfs_entry *op = file->private_data;
- struct gb_camera *gcam = file_inode(file)->i_private;
- ssize_t ret;
- char *kbuf;
-
- if (len > 1024)
- return -EINVAL;
-
- kbuf = memdup_user_nul(buf, len);
- if (IS_ERR(kbuf))
- return PTR_ERR(kbuf);
-
- ret = op->execute(gcam, kbuf, len);
-
-done:
- kfree(kbuf);
- return ret;
-}
-
-static int gb_camera_debugfs_open(struct inode *inode, struct file *file)
-{
- file->private_data = debugfs_get_aux(file);
- return 0;
-}
-
-static const struct file_operations gb_camera_debugfs_ops = {
- .open = gb_camera_debugfs_open,
- .read = gb_camera_debugfs_read,
- .write = gb_camera_debugfs_write,
-};
-
-static int gb_camera_debugfs_init(struct gb_camera *gcam)
-{
- struct gb_connection *connection = gcam->connection;
- char dirname[27];
- unsigned int i;
-
- /*
- * Create root debugfs entry and a file entry for each camera operation.
- */
- snprintf(dirname, 27, "camera-%u.%u", connection->intf->interface_id,
- gcam->bundle->id);
-
- gcam->debugfs.root = debugfs_create_dir(dirname, gb_debugfs_get());
-
- gcam->debugfs.buffers =
- vmalloc(array_size(GB_CAMERA_DEBUGFS_BUFFER_MAX,
- sizeof(*gcam->debugfs.buffers)));
- if (!gcam->debugfs.buffers)
- return -ENOMEM;
-
- for (i = 0; i < ARRAY_SIZE(gb_camera_debugfs_entries); ++i) {
- const struct gb_camera_debugfs_entry *entry =
- &gb_camera_debugfs_entries[i];
-
- gcam->debugfs.buffers[i].length = 0;
-
- debugfs_create_file_aux(entry->name, entry->mask,
- gcam->debugfs.root, gcam, entry,
- &gb_camera_debugfs_ops);
- }
-
- return 0;
-}
-
-static void gb_camera_debugfs_cleanup(struct gb_camera *gcam)
-{
- debugfs_remove_recursive(gcam->debugfs.root);
-
- vfree(gcam->debugfs.buffers);
-}
-
-/* -----------------------------------------------------------------------------
- * Init & Cleanup
- */
-
-static void gb_camera_cleanup(struct gb_camera *gcam)
-{
- gb_camera_debugfs_cleanup(gcam);
-
- mutex_lock(&gcam->mutex);
- if (gcam->data_connection) {
- gb_connection_disable(gcam->data_connection);
- gb_connection_destroy(gcam->data_connection);
- gcam->data_connection = NULL;
- }
-
- if (gcam->connection) {
- gb_connection_disable(gcam->connection);
- gb_connection_destroy(gcam->connection);
- gcam->connection = NULL;
- }
- mutex_unlock(&gcam->mutex);
-}
-
-static void gb_camera_release_module(struct kref *ref)
-{
- struct gb_camera_module *cam_mod =
- container_of(ref, struct gb_camera_module, refcount);
- kfree(cam_mod->priv);
-}
-
-static int gb_camera_probe(struct gb_bundle *bundle,
- const struct greybus_bundle_id *id)
-{
- struct gb_connection *conn;
- struct gb_camera *gcam;
- u16 mgmt_cport_id = 0;
- u16 data_cport_id = 0;
- unsigned int i;
- int ret;
-
- /*
- * The camera bundle must contain exactly two CPorts, one for the
- * camera management protocol and one for the camera data protocol.
- */
- if (bundle->num_cports != 2)
- return -ENODEV;
-
- for (i = 0; i < bundle->num_cports; ++i) {
- struct greybus_descriptor_cport *desc = &bundle->cport_desc[i];
-
- switch (desc->protocol_id) {
- case GREYBUS_PROTOCOL_CAMERA_MGMT:
- mgmt_cport_id = le16_to_cpu(desc->id);
- break;
- case GREYBUS_PROTOCOL_CAMERA_DATA:
- data_cport_id = le16_to_cpu(desc->id);
- break;
- default:
- return -ENODEV;
- }
- }
-
- if (!mgmt_cport_id || !data_cport_id)
- return -ENODEV;
-
- gcam = kzalloc_obj(*gcam);
- if (!gcam)
- return -ENOMEM;
-
- mutex_init(&gcam->mutex);
-
- gcam->bundle = bundle;
- gcam->state = GB_CAMERA_STATE_UNCONFIGURED;
- gcam->data_cport_id = data_cport_id;
-
- conn = gb_connection_create(bundle, mgmt_cport_id,
- gb_camera_request_handler);
- if (IS_ERR(conn)) {
- ret = PTR_ERR(conn);
- goto error;
- }
-
- gcam->connection = conn;
- gb_connection_set_data(conn, gcam);
-
- ret = gb_connection_enable(conn);
- if (ret)
- goto error;
-
- ret = gb_camera_debugfs_init(gcam);
- if (ret < 0)
- goto error;
-
- gcam->module.priv = gcam;
- gcam->module.ops = &gb_cam_ops;
- gcam->module.interface_id = gcam->connection->intf->interface_id;
- gcam->module.release = gb_camera_release_module;
- ret = gb_camera_register(&gcam->module);
- if (ret < 0)
- goto error;
-
- greybus_set_drvdata(bundle, gcam);
-
- gb_pm_runtime_put_autosuspend(gcam->bundle);
-
- return 0;
-
-error:
- gb_camera_cleanup(gcam);
- kfree(gcam);
- return ret;
-}
-
-static void gb_camera_disconnect(struct gb_bundle *bundle)
-{
- struct gb_camera *gcam = greybus_get_drvdata(bundle);
- int ret;
-
- ret = gb_pm_runtime_get_sync(bundle);
- if (ret)
- gb_pm_runtime_get_noresume(bundle);
-
- gb_camera_cleanup(gcam);
- gb_camera_unregister(&gcam->module);
-}
-
-static const struct greybus_bundle_id gb_camera_id_table[] = {
- { GREYBUS_DEVICE_CLASS(GREYBUS_CLASS_CAMERA) },
- { },
-};
-
-#ifdef CONFIG_PM
-static int gb_camera_suspend(struct device *dev)
-{
- struct gb_bundle *bundle = to_gb_bundle(dev);
- struct gb_camera *gcam = greybus_get_drvdata(bundle);
-
- if (gcam->data_connection)
- gb_connection_disable(gcam->data_connection);
-
- gb_connection_disable(gcam->connection);
-
- return 0;
-}
-
-static int gb_camera_resume(struct device *dev)
-{
- struct gb_bundle *bundle = to_gb_bundle(dev);
- struct gb_camera *gcam = greybus_get_drvdata(bundle);
- int ret;
-
- ret = gb_connection_enable(gcam->connection);
- if (ret) {
- dev_err(&gcam->bundle->dev, "failed to enable connection: %d\n", ret);
- return ret;
- }
-
- if (gcam->data_connection) {
- ret = gb_connection_enable(gcam->data_connection);
- if (ret) {
- dev_err(&gcam->bundle->dev,
- "failed to enable data connection: %d\n", ret);
- return ret;
- }
- }
-
- return 0;
-}
-#endif
-
-static const struct dev_pm_ops gb_camera_pm_ops = {
- SET_RUNTIME_PM_OPS(gb_camera_suspend, gb_camera_resume, NULL)
-};
-
-static struct greybus_driver gb_camera_driver = {
- .name = "camera",
- .probe = gb_camera_probe,
- .disconnect = gb_camera_disconnect,
- .id_table = gb_camera_id_table,
- .driver.pm = &gb_camera_pm_ops,
-};
-
-module_greybus_driver(gb_camera_driver);
-
-MODULE_DESCRIPTION("Greybus Camera protocol driver.");
-MODULE_LICENSE("GPL v2");
diff --git a/drivers/staging/greybus/gb-camera.h b/drivers/staging/greybus/gb-camera.h
deleted file mode 100644
index d5a33a13f2a4..000000000000
--- a/drivers/staging/greybus/gb-camera.h
+++ /dev/null
@@ -1,127 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/*
- * Greybus Camera protocol driver.
- *
- * Copyright 2015 Google Inc.
- */
-#ifndef __GB_CAMERA_H
-#define __GB_CAMERA_H
-
-#include <linux/v4l2-mediabus.h>
-
-/* Input flags need to be set from the caller */
-#define GB_CAMERA_IN_FLAG_TEST BIT(0)
-/* Output flags returned */
-#define GB_CAMERA_OUT_FLAG_ADJUSTED BIT(0)
-
-/**
- * struct gb_camera_stream - Represents greybus camera stream.
- * @width: Stream width in pixels.
- * @height: Stream height in pixels.
- * @pixel_code: Media bus pixel code.
- * @vc: MIPI CSI virtual channel.
- * @dt: MIPI CSI data types. Most formats use a single data type, in which case
- * the second element will be ignored.
- * @max_size: Maximum size of a frame in bytes. The camera module guarantees
- * that all data between the Frame Start and Frame End packet for
- * the associated virtual channel and data type(s) will not exceed
- * this size.
- */
-struct gb_camera_stream {
- unsigned int width;
- unsigned int height;
- enum v4l2_mbus_pixelcode pixel_code;
- unsigned int vc;
- unsigned int dt[2];
- unsigned int max_size;
-};
-
-/**
- * struct gb_camera_csi_params - CSI configuration parameters
- * @num_lanes: number of CSI data lanes
- * @clk_freq: CSI clock frequency in Hz
- */
-struct gb_camera_csi_params {
- unsigned int num_lanes;
- unsigned int clk_freq;
-};
-
-/**
- * struct gb_camera_ops - Greybus camera operations, used by the Greybus camera
- * driver to expose operations to the host camera driver.
- * @capabilities: Retrieve camera capabilities and store them in the buffer
- * 'buf' capabilities. The buffer maximum size is specified by
- * the caller in the 'size' parameter, and the effective
- * capabilities size is returned from the function. If the buffer
- * size is too small to hold the capabilities an error is
- * returned and the buffer is left untouched.
- *
- * @configure_streams: Negotiate configuration and prepare the module for video
- * capture. The caller specifies the number of streams it
- * requests in the 'nstreams' argument and the associated
- * streams configurations in the 'streams' argument. The
- * GB_CAMERA_IN_FLAG_TEST 'flag' can be set to test a
- * configuration without applying it, otherwise the
- * configuration is applied by the module. The module can
- * decide to modify the requested configuration, including
- * using a different number of streams. In that case the
- * modified configuration won't be applied, the
- * GB_CAMERA_OUT_FLAG_ADJUSTED 'flag' will be set upon
- * return, and the modified configuration and number of
- * streams stored in 'streams' and 'array'. The module
- * returns its CSI-2 bus parameters in the 'csi_params'
- * structure in all cases.
- *
- * @capture: Submit a capture request. The supplied 'request_id' must be unique
- * and higher than the IDs of all the previously submitted requests.
- * The 'streams' argument specifies which streams are affected by the
- * request in the form of a bitmask, with bits corresponding to the
- * configured streams indexes. If the request contains settings, the
- * 'settings' argument points to the settings buffer and its size is
- * specified by the 'settings_size' argument. Otherwise the 'settings'
- * argument should be set to NULL and 'settings_size' to 0.
- *
- * @flush: Flush the capture requests queue. Return the ID of the last request
- * that will processed by the device before it stops transmitting video
- * frames. All queued capture requests with IDs higher than the returned
- * ID will be dropped without being processed.
- */
-struct gb_camera_ops {
- ssize_t (*capabilities)(void *priv, char *buf, size_t len);
- int (*configure_streams)(void *priv, unsigned int *nstreams,
- unsigned int *flags,
- struct gb_camera_stream *streams,
- struct gb_camera_csi_params *csi_params);
- int (*capture)(void *priv, u32 request_id,
- unsigned int streams, unsigned int num_frames,
- size_t settings_size, const void *settings);
- int (*flush)(void *priv, u32 *request_id);
-};
-
-/**
- * struct gb_camera_module - Represents greybus camera module.
- * @priv: Module private data, passed to all camera operations.
- * @ops: Greybus camera operation callbacks.
- * @interface_id: Interface id of the module.
- * @refcount: Reference counting object.
- * @release: Module release function.
- * @list: List entry in the camera modules list.
- */
-struct gb_camera_module {
- void *priv;
- const struct gb_camera_ops *ops;
-
- unsigned int interface_id;
- struct kref refcount;
- void (*release)(struct kref *kref);
- struct list_head list; /* Global list */
-};
-
-#define gb_camera_call(f, op, args...) \
- (!(f) ? -ENODEV : (((f)->ops->op) ? \
- (f)->ops->op((f)->priv, ##args) : -ENOIOCTLCMD))
-
-int gb_camera_register(struct gb_camera_module *module);
-int gb_camera_unregister(struct gb_camera_module *module);
-
-#endif /* __GB_CAMERA_H */
diff --git a/drivers/staging/greybus/gbphy.c b/drivers/staging/greybus/gbphy.c
index bdb0f5164a6f..bb9a5b538e6e 100644
--- a/drivers/staging/greybus/gbphy.c
+++ b/drivers/staging/greybus/gbphy.c
@@ -31,7 +31,7 @@ static ssize_t protocol_id_show(struct device *dev,
{
struct gbphy_device *gbphy_dev = to_gbphy_dev(dev);
- return sprintf(buf, "0x%02x\n", gbphy_dev->cport_desc->protocol_id);
+ return sysfs_emit(buf, "0x%02x\n", gbphy_dev->cport_desc->protocol_id);
}
static DEVICE_ATTR_RO(protocol_id);
diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c
index 2a623fc2e99b..fe48a687377a 100644
--- a/drivers/staging/greybus/loopback.c
+++ b/drivers/staging/greybus/loopback.c
@@ -562,8 +562,7 @@ static int gb_loopback_async_sink(struct gb_loopback *gb, u32 len)
return retval;
}
-static int gb_loopback_async_transfer_complete(
- struct gb_loopback_async_operation *op_async)
+static int gb_loopback_async_transfer_complete(struct gb_loopback_async_operation *op_async)
{
struct gb_loopback *gb;
struct gb_operation *operation;
@@ -653,7 +652,7 @@ static int gb_loopback_request_handler(struct gb_operation *operation)
}
if (!gb_operation_response_alloc(operation,
- len + sizeof(*response), GFP_KERNEL)) {
+ len + sizeof(*response), GFP_KERNEL)) {
dev_err(dev, "error allocating response\n");
return -ENOMEM;
}
diff --git a/drivers/staging/greybus/uart.c b/drivers/staging/greybus/uart.c
index 172cf900eaf0..2c47418a11ef 100644
--- a/drivers/staging/greybus/uart.c
+++ b/drivers/staging/greybus/uart.c
@@ -53,7 +53,6 @@ struct gb_tty {
spinlock_t read_lock;
spinlock_t write_lock;
struct async_icount iocount;
- struct async_icount oldcount;
wait_queue_head_t wioctl;
struct mutex mutex;
u8 ctrlin; /* input control lines */
@@ -643,11 +642,16 @@ static int wait_serial_change(struct gb_tty *gb_tty, unsigned long arg)
if (!(arg & (TIOCM_DSR | TIOCM_RI | TIOCM_CD)))
return -EINVAL;
- do {
+ spin_lock_irq(&gb_tty->read_lock);
+ old = gb_tty->iocount;
+ spin_unlock_irq(&gb_tty->read_lock);
+
+ add_wait_queue(&gb_tty->wioctl, &wait);
+ for (;;) {
+ set_current_state(TASK_INTERRUPTIBLE);
+
spin_lock_irq(&gb_tty->read_lock);
- old = gb_tty->oldcount;
new = gb_tty->iocount;
- gb_tty->oldcount = new;
spin_unlock_irq(&gb_tty->read_lock);
if ((arg & TIOCM_DSR) && (old.dsr != new.dsr))
@@ -657,18 +661,20 @@ static int wait_serial_change(struct gb_tty *gb_tty, unsigned long arg)
if ((arg & TIOCM_RI) && (old.rng != new.rng))
break;
- add_wait_queue(&gb_tty->wioctl, &wait);
- set_current_state(TASK_INTERRUPTIBLE);
- schedule();
- remove_wait_queue(&gb_tty->wioctl, &wait);
if (gb_tty->disconnected) {
- if (arg & TIOCM_CD)
- break;
retval = -ENODEV;
- } else if (signal_pending(current)) {
+ break;
+ }
+
+ schedule();
+
+ if (signal_pending(current)) {
retval = -ERESTARTSYS;
+ break;
}
- } while (!retval);
+ }
+ __set_current_state(TASK_RUNNING);
+ remove_wait_queue(&gb_tty->wioctl, &wait);
return retval;
}
diff --git a/drivers/staging/most/video/video.c b/drivers/staging/most/video/video.c
index 88892b5db28b..3a0445ff62f4 100644
--- a/drivers/staging/most/video/video.c
+++ b/drivers/staging/most/video/video.c
@@ -439,7 +439,6 @@ static int comp_register_videodev(struct most_video_dev *mdev)
mdev->vdev->release = video_device_release;
return 0;
-
}
static void comp_unregister_videodev(struct most_video_dev *mdev)
diff --git a/drivers/staging/octeon/ethernet-tx.c b/drivers/staging/octeon/ethernet-tx.c
index cc20c1e6791f..5e536827f87a 100644
--- a/drivers/staging/octeon/ethernet-tx.c
+++ b/drivers/staging/octeon/ethernet-tx.c
@@ -481,7 +481,7 @@ skip_xmit:
cvmx_fau_fetch_and_add32(FAU_TOTAL_TX_TO_CLEAN, 1);
}
- if (total_to_clean & 0x3ff) {
+ if ((total_to_clean & 0x3ff) == 0) {
/*
* Schedule the cleanup tasklet every 1024 packets for
* the pathological case of high traffic on one port
diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c
index 4728f62a1557..f98360b59737 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -598,9 +598,7 @@ static void update_hw_ht_param(struct adapter *padapter)
rtw_hal_set_hwreg(padapter, HW_VAR_AMPDU_FACTOR, (u8 *)(&max_AMPDU_len));
- /* */
/* Config SM Power Save setting */
- /* */
pmlmeinfo->SM_PS =
(le16_to_cpu(pmlmeinfo->HT_caps.u.HT_cap_element.HT_caps_info) &
0x0C) >> 2;
@@ -1068,7 +1066,7 @@ int rtw_acl_add_sta(struct adapter *padapter, u8 *addr)
struct __queue *pacl_node_q = &pacl_list->acl_node_q;
if ((NUM_ACL - 1) < pacl_list->num)
- return (-1);
+ return -1;
spin_lock_bh(&pacl_node_q->lock);
@@ -1165,7 +1163,7 @@ u8 rtw_ap_set_pairwise_key(struct adapter *padapter, struct sta_info *psta)
init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, SET_STA_KEY_CMD);
- psetstakey_para->algorithm = (u8)psta->dot118021XPrivacy;
+ psetstakey_para->algorithm = (u8)psta->dot118021_x_privacy;
memcpy(psetstakey_para->addr, psta->hwaddr, ETH_ALEN);
diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl8723bs/core/rtw_cmd.c
index ce3dfa1fee26..1b95ef6996c6 100644
--- a/drivers/staging/rtl8723bs/core/rtw_cmd.c
+++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c
@@ -252,12 +252,10 @@ static int _rtw_enqueue_cmd(struct __queue *queue, struct cmd_obj *obj)
if (!obj)
return 0;
- /* spin_lock_bh(&queue->lock); */
spin_lock_irqsave(&queue->lock, irqL);
list_add_tail(&obj->list, &queue->queue);
- /* spin_unlock_bh(&queue->lock); */
spin_unlock_irqrestore(&queue->lock, irqL);
return 0;
@@ -268,7 +266,6 @@ struct cmd_obj *_rtw_dequeue_cmd(struct __queue *queue)
unsigned long irqL;
struct cmd_obj *obj;
- /* spin_lock_bh(&(queue->lock)); */
spin_lock_irqsave(&queue->lock, irqL);
if (list_empty(&queue->queue)) {
obj = NULL;
@@ -277,7 +274,6 @@ struct cmd_obj *_rtw_dequeue_cmd(struct __queue *queue)
list_del_init(&obj->list);
}
- /* spin_unlock_bh(&(queue->lock)); */
spin_unlock_irqrestore(&queue->lock, irqL);
return obj;
@@ -546,7 +542,6 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid,
init_h2fwcmd_w_parm_no_rsp(ph2c, survey_para, SITE_SURVEY_CMD);
- /* psurveyPara->bsslimit = 48; */
survey_para->scan_mode = pmlmepriv->scan_mode;
/* prepare ssid list */
@@ -588,7 +583,6 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid,
void rtw_getbbrfreg_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd)
{
- /* rtw_free_cmd_obj(pcmd); */
kfree(pcmd->parmbuf);
kfree(pcmd);
}
@@ -1000,7 +994,6 @@ u8 rtw_addbareq_cmd(struct adapter *padapter, u8 tid, u8 *addr)
init_h2fwcmd_w_parm_no_rsp(ph2c, paddbareq_parm, ADD_BA_REQ_CMD);
- /* rtw_enqueue_cmd(pcmdpriv, ph2c); */
res = rtw_enqueue_cmd(pcmdpriv, ph2c);
exit:
@@ -1034,7 +1027,6 @@ u8 rtw_reset_securitypriv_cmd(struct adapter *padapter)
init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, SET_DRV_EXTRA_CMD);
- /* rtw_enqueue_cmd(pcmdpriv, ph2c); */
res = rtw_enqueue_cmd(pcmdpriv, ph2c);
exit:
return res;
@@ -1067,7 +1059,6 @@ u8 rtw_free_assoc_resources_cmd(struct adapter *padapter)
init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, SET_DRV_EXTRA_CMD);
- /* rtw_enqueue_cmd(pcmdpriv, ph2c); */
res = rtw_enqueue_cmd(pcmdpriv, ph2c);
exit:
return res;
@@ -1100,7 +1091,6 @@ u8 rtw_dynamic_chk_wk_cmd(struct adapter *padapter)
pdrvextra_cmd_parm->pbuf = NULL;
init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, SET_DRV_EXTRA_CMD);
- /* rtw_enqueue_cmd(pcmdpriv, ph2c); */
res = rtw_enqueue_cmd(pcmdpriv, ph2c);
exit:
return res;
@@ -1109,25 +1099,26 @@ exit:
static void collect_traffic_statistics(struct adapter *padapter)
{
struct dvobj_priv *pdvobjpriv = adapter_to_dvobj(padapter);
+ struct rtw_traffic_statistics *ts = &pdvobjpriv->traffic_stat;
/* Tx */
- pdvobjpriv->traffic_stat.tx_bytes = padapter->xmitpriv.tx_bytes;
- pdvobjpriv->traffic_stat.tx_pkts = padapter->xmitpriv.tx_pkts;
- pdvobjpriv->traffic_stat.tx_drop = padapter->xmitpriv.tx_drop;
+ ts->tx_bytes = padapter->xmitpriv.tx_bytes;
+ ts->tx_pkts = padapter->xmitpriv.tx_pkts;
+ ts->tx_drop = padapter->xmitpriv.tx_drop;
/* Rx */
- pdvobjpriv->traffic_stat.rx_bytes = padapter->recvpriv.rx_bytes;
- pdvobjpriv->traffic_stat.rx_pkts = padapter->recvpriv.rx_pkts;
- pdvobjpriv->traffic_stat.rx_drop = padapter->recvpriv.rx_drop;
+ ts->rx_bytes = padapter->recvpriv.rx_bytes;
+ ts->rx_pkts = padapter->recvpriv.rx_pkts;
+ ts->rx_drop = padapter->recvpriv.rx_drop;
/* Calculate throughput in last interval */
- pdvobjpriv->traffic_stat.cur_tx_bytes = pdvobjpriv->traffic_stat.tx_bytes - pdvobjpriv->traffic_stat.last_tx_bytes;
- pdvobjpriv->traffic_stat.cur_rx_bytes = pdvobjpriv->traffic_stat.rx_bytes - pdvobjpriv->traffic_stat.last_rx_bytes;
- pdvobjpriv->traffic_stat.last_tx_bytes = pdvobjpriv->traffic_stat.tx_bytes;
- pdvobjpriv->traffic_stat.last_rx_bytes = pdvobjpriv->traffic_stat.rx_bytes;
+ ts->cur_tx_bytes = ts->tx_bytes - ts->last_tx_bytes;
+ ts->cur_rx_bytes = ts->rx_bytes - ts->last_rx_bytes;
+ ts->last_tx_bytes = ts->tx_bytes;
+ ts->last_rx_bytes = ts->rx_bytes;
- pdvobjpriv->traffic_stat.cur_tx_tp = (u32)(pdvobjpriv->traffic_stat.cur_tx_bytes * 8 / 2 / 1024 / 1024);
- pdvobjpriv->traffic_stat.cur_rx_tp = (u32)(pdvobjpriv->traffic_stat.cur_rx_bytes * 8 / 2 / 1024 / 1024);
+ ts->cur_tx_tp = (u32)(ts->cur_tx_bytes * 8 / 2 / 1024 / 1024);
+ ts->cur_rx_tp = (u32)(ts->cur_rx_bytes * 8 / 2 / 1024 / 1024);
}
bool traffic_status_watchdog(struct adapter *padapter, bool from_timer)
@@ -1146,9 +1137,7 @@ bool traffic_status_watchdog(struct adapter *padapter, bool from_timer)
collect_traffic_statistics(padapter);
- /* */
/* Determine if our traffic is busy now */
- /* */
if ((check_fwstate(pmlmepriv, _FW_LINKED))
/*&& !MgntInitAdapterInProgress(pMgntInfo)*/) {
/* if we raise busy_traffic in last watchdog, using lower threshold. */
@@ -1248,18 +1237,13 @@ static void dynamic_chk_wk_hdl(struct adapter *padapter)
/* for debug purpose */
_linked_info_dump(padapter);
- /* if (check_fwstate(pmlmepriv, _FW_UNDER_LINKING|_FW_UNDER_SURVEY) ==false) */
{
linked_status_chk(padapter);
traffic_status_watchdog(padapter, false);
}
rtw_hal_dm_watchdog(padapter);
- /* check_hw_pbc(padapter, pdrvextra_cmd->pbuf, pdrvextra_cmd->type); */
-
- /* */
/* BT-Coexist */
- /* */
hal_btcoex_Handler(padapter);
/* always call rtw_ps_processor() at last one. */
@@ -1324,7 +1308,6 @@ u8 rtw_lps_ctrl_wk_cmd(struct adapter *padapter, u8 lps_ctrl_type, u8 enqueue)
struct cmd_obj *ph2c;
struct drvextra_cmd_parm *pdrvextra_cmd_parm;
struct cmd_priv *pcmdpriv = &padapter->cmdpriv;
- /* struct pwrctrl_priv *pwrctrlpriv = adapter_to_pwrctl(padapter); */
u8 res = _SUCCESS;
if (enqueue) {
@@ -1876,9 +1859,6 @@ void rtw_createbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd)
pnetwork->length = get_wlan_bssid_ex_sz(pnetwork);
memcpy(&pwlan->network, pnetwork, pnetwork->length);
- /* pwlan->fixed = true; */
-
- /* list_add_tail(&(pwlan->list), &pmlmepriv->scanned_queue.queue); */
/* copy pdev_network information to pmlmepriv->cur_network */
memcpy(&tgt_network->network, pnetwork, (get_wlan_bssid_ex_sz(pnetwork)));
diff --git a/drivers/staging/rtl8723bs/core/rtw_efuse.c b/drivers/staging/rtl8723bs/core/rtw_efuse.c
index 168ecb7a998f..4bf69c742009 100644
--- a/drivers/staging/rtl8723bs/core/rtw_efuse.c
+++ b/drivers/staging/rtl8723bs/core/rtw_efuse.c
@@ -41,53 +41,52 @@ rtw_efuse_calculate_word_counts(u8 word_en)
* 09/23/2008 MHC Copy from WMAC.
*
*/
-u8 rtw_efuse_read_1_byte(struct adapter *Adapter, u16 Address)
+u8 rtw_efuse_read_1_byte(struct adapter *adapter, u16 address)
{
- u8 Bytetemp = {0x00};
+ u8 byte_temp = {0x00};
u8 temp = {0x00};
u32 k = 0;
- u16 contentLen = 0;
+ u16 content_len = 0;
- Hal_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, &contentLen);
+ Hal_GetEfuseDefinition(adapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, &content_len);
- if (Address < contentLen) {/* E-fuse 512Byte */
+ if (address < content_len) {/* E-fuse 512Byte */
/* Write E-fuse Register address bit0~7 */
- temp = Address & 0xFF;
- rtw_write8(Adapter, EFUSE_CTRL + 1, temp);
- Bytetemp = rtw_read8(Adapter, EFUSE_CTRL + 2);
+ temp = address & 0xFF;
+ rtw_write8(adapter, EFUSE_CTRL + 1, temp);
+ byte_temp = rtw_read8(adapter, EFUSE_CTRL + 2);
/* Write E-fuse Register address bit8~9 */
- temp = ((Address >> 8) & 0x03) | (Bytetemp & 0xFC);
- rtw_write8(Adapter, EFUSE_CTRL + 2, temp);
+ temp = ((address >> 8) & 0x03) | (byte_temp & 0xFC);
+ rtw_write8(adapter, EFUSE_CTRL + 2, temp);
/* Write 0x30[31]= 0 */
- Bytetemp = rtw_read8(Adapter, EFUSE_CTRL + 3);
- temp = Bytetemp & 0x7F;
- rtw_write8(Adapter, EFUSE_CTRL + 3, temp);
+ byte_temp = rtw_read8(adapter, EFUSE_CTRL + 3);
+ temp = byte_temp & 0x7F;
+ rtw_write8(adapter, EFUSE_CTRL + 3, temp);
/* Wait Write-ready (0x30[31]= 1) */
- Bytetemp = rtw_read8(Adapter, EFUSE_CTRL + 3);
- while (!(Bytetemp & 0x80)) {
- Bytetemp = rtw_read8(Adapter, EFUSE_CTRL + 3);
+ byte_temp = rtw_read8(adapter, EFUSE_CTRL + 3);
+ while (!(byte_temp & 0x80)) {
+ byte_temp = rtw_read8(adapter, EFUSE_CTRL + 3);
k++;
if (k == 1000)
break;
}
- return rtw_read8(Adapter, EFUSE_CTRL);
+ return rtw_read8(adapter, EFUSE_CTRL);
} else {
return 0xFF;
}
-} /* rtw_efuse_read_1_byte */
+}
-/* 11/16/2008 MH Read one byte from real Efuse. */
+/* 11/16/2008 MH Read one byte from real efuse. */
u8 rtw_efuse_one_byte_read(struct adapter *padapter, u16 addr, u8 *data)
{
u32 tmpidx = 0;
- u8 bResult;
+ u8 b_result;
u8 readbyte;
/* <20130121, Kordan> For SMIC EFUSE specificatoin. */
/* 0x34[11]: SW force PGMEN input of efuse to high. (for the bank selected by 0x34[9:8]) */
- /* PHY_SetMacReg(padapter, 0x34, BIT11, 0); */
rtw_write16(padapter, 0x34, rtw_read16(padapter, 0x34) & (~BIT(11)));
/* -----------------e-fuse reg ctrl --------------------------------- */
@@ -107,19 +106,19 @@ u8 rtw_efuse_one_byte_read(struct adapter *padapter, u16 addr, u8 *data)
}
if (tmpidx < 100) {
*data = rtw_read8(padapter, EFUSE_CTRL);
- bResult = true;
+ b_result = true;
} else {
*data = 0xff;
- bResult = false;
+ b_result = false;
}
- return bResult;
+ return b_result;
}
/*-----------------------------------------------------------------------------
- * Function: Efuse_ReadAllMap
+ * Function: efuse_read_all_map
*
- * Overview: Read All Efuse content
+ * Overview: Read All efuse content
*
* Input: NONE
*
@@ -132,68 +131,20 @@ u8 rtw_efuse_one_byte_read(struct adapter *padapter, u16 addr, u8 *data)
* 11/11/2008 MHC Create Version 0.
*
*/
-static void Efuse_ReadAllMap(struct adapter *padapter, u8 efuseType, u8 *Efuse)
+static void efuse_read_all_map(struct adapter *padapter, u8 efuse_type, u8 *efuse)
{
- u16 mapLen = 0;
+ u16 map_len = 0;
Hal_EfusePowerSwitch(padapter, true);
- Hal_GetEfuseDefinition(padapter, efuseType, TYPE_EFUSE_MAP_LEN, &mapLen);
+ Hal_GetEfuseDefinition(padapter, efuse_type, TYPE_EFUSE_MAP_LEN, &map_len);
- Hal_ReadEFuse(padapter, efuseType, 0, mapLen, Efuse);
+ Hal_ReadEFuse(padapter, efuse_type, 0, map_len, efuse);
Hal_EfusePowerSwitch(padapter, false);
}
/*-----------------------------------------------------------------------------
- * Function: efuse_ShadowRead1Byte
- * efuse_ShadowRead2Byte
- * efuse_ShadowRead4Byte
- *
- * Overview: Read from efuse init map by one/two/four bytes !!!!!
- *
- * Input: NONE
- *
- * Output: NONE
- *
- * Return: NONE
- *
- * Revised History:
- * When Who Remark
- * 11/12/2008 MHC Create Version 0.
- *
- */
-static void efuse_ShadowRead1Byte(struct adapter *padapter, u16 Offset, u8 *Value)
-{
- struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
-
- *Value = pEEPROM->efuse_eeprom_data[Offset];
-
-} /* EFUSE_ShadowRead1Byte */
-
-/* Read Two Bytes */
-static void efuse_ShadowRead2Byte(struct adapter *padapter, u16 Offset, u16 *Value)
-{
- struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
-
- *Value = pEEPROM->efuse_eeprom_data[Offset];
- *Value |= pEEPROM->efuse_eeprom_data[Offset + 1] << 8;
-
-} /* EFUSE_ShadowRead2Byte */
-
-/* Read Four Bytes */
-static void efuse_ShadowRead4Byte(struct adapter *padapter, u16 Offset, u32 *Value)
-{
- struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
-
- *Value = pEEPROM->efuse_eeprom_data[Offset];
- *Value |= pEEPROM->efuse_eeprom_data[Offset + 1] << 8;
- *Value |= pEEPROM->efuse_eeprom_data[Offset + 2] << 16;
- *Value |= pEEPROM->efuse_eeprom_data[Offset + 3] << 24;
-
-} /* efuse_ShadowRead4Byte */
-
-/*-----------------------------------------------------------------------------
* Function: rtw_efuse_shadow_map_update
*
* Overview: Transfer current EFUSE content to shadow init and modify map.
@@ -209,45 +160,16 @@ static void efuse_ShadowRead4Byte(struct adapter *padapter, u16 Offset, u32 *Val
* 11/13/2008 MHC Create Version 0.
*
*/
-void rtw_efuse_shadow_map_update(struct adapter *padapter, u8 efuseType)
+void rtw_efuse_shadow_map_update(struct adapter *padapter, u8 efuse_type)
{
- struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
- u16 mapLen = 0;
+ struct eeprom_priv *eeprom = GET_EEPROM_EFUSE_PRIV(padapter);
+ u16 map_len = 0;
- Hal_GetEfuseDefinition(padapter, efuseType, TYPE_EFUSE_MAP_LEN, &mapLen);
+ Hal_GetEfuseDefinition(padapter, efuse_type, TYPE_EFUSE_MAP_LEN, &map_len);
- if (pEEPROM->bautoload_fail_flag)
- memset(pEEPROM->efuse_eeprom_data, 0xFF, mapLen);
+ if (eeprom->bautoload_fail_flag)
+ memset(eeprom->efuse_eeprom_data, 0xFF, map_len);
else
- Efuse_ReadAllMap(padapter, efuseType, pEEPROM->efuse_eeprom_data);
+ efuse_read_all_map(padapter, efuse_type, eeprom->efuse_eeprom_data);
- /* PlatformMoveMemory((void *)&pHalData->EfuseMap[EFUSE_MODIFY_MAP][0], */
- /* void *)&pHalData->EfuseMap[EFUSE_INIT_MAP][0], mapLen); */
} /* rtw_efuse_shadow_map_update */
-
-/*-----------------------------------------------------------------------------
- * Function: rtw_efuse_shadow_read
- *
- * Overview: Read from efuse init map !!!!!
- *
- * Input: NONE
- *
- * Output: NONE
- *
- * Return: NONE
- *
- * Revised History:
- * When Who Remark
- * 11/12/2008 MHC Create Version 0.
- *
- */
-void rtw_efuse_shadow_read(struct adapter *padapter, u8 Type, u16 Offset, u32 *Value)
-{
- if (Type == 1)
- efuse_ShadowRead1Byte(padapter, Offset, (u8 *)Value);
- else if (Type == 2)
- efuse_ShadowRead2Byte(padapter, Offset, (u16 *)Value);
- else if (Type == 4)
- efuse_ShadowRead4Byte(padapter, Offset, (u32 *)Value);
-
-} /* rtw_efuse_shadow_read*/
diff --git a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
index 4d211711f2ba..2b2383021b9c 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
@@ -31,9 +31,7 @@ u8 RSN_CIPHER_SUITE_TKIP[] = { 0x00, 0x0f, 0xac, 2 };
u8 RSN_CIPHER_SUITE_WRAP[] = { 0x00, 0x0f, 0xac, 3 };
u8 RSN_CIPHER_SUITE_CCMP[] = { 0x00, 0x0f, 0xac, 4 };
u8 RSN_CIPHER_SUITE_WEP104[] = { 0x00, 0x0f, 0xac, 5 };
-/* */
/* for adhoc-master to generate ie and provide supported-rate to fw */
-/* */
static u8 WIFI_CCKRATES[] = {
(IEEE80211_CCK_RATE_1MB | IEEE80211_BASIC_RATE_MASK),
@@ -330,7 +328,6 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv)
if (rate_len > 8) {
ie = rtw_set_ie(ie, WLAN_EID_SUPP_RATES, 8, pdev_network->supported_rates, &sz);
- /* ie = rtw_set_ie(ie, WLAN_EID_EXT_SUPP_RATES, (rate_len - 8), (pdev_network->supported_rates + 8), &sz); */
} else {
ie = rtw_set_ie(ie, WLAN_EID_SUPP_RATES, rate_len, pdev_network->supported_rates, &sz);
}
@@ -351,10 +348,6 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv)
/* todo: */
}
- /* pdev_network->ie_length = sz; update ie_length */
-
- /* return _SUCCESS; */
-
return sz;
}
@@ -481,7 +474,6 @@ int rtw_parse_wpa_ie(u8 *wpa_ie, int wpa_ie_len, int *group_cipher, int *pairwis
/* pairwise_cipher */
if (left >= 2) {
- /* count = le16_to_cpu(*(u16*)pos); */
count = get_unaligned_le16(pos);
pos += 2;
left -= 2;
@@ -543,7 +535,6 @@ int rtw_parse_wpa2_ie(u8 *rsn_ie, int rsn_ie_len, int *group_cipher, int *pairwi
/* pairwise_cipher */
if (left >= 2) {
- /* count = le16_to_cpu(*(u16*)pos); */
count = get_unaligned_le16(pos);
pos += 2;
left -= 2;
@@ -1074,7 +1065,6 @@ void rtw_get_bcn_info(struct wlan_network *pnetwork)
{
unsigned short cap = 0;
u8 bencrypt = 0;
- /* u8 wpa_ie[255], rsn_ie[255]; */
u16 wpa_len = 0, rsn_len = 0;
struct HT_info_element *pht_info = NULL;
struct ieee80211_ht_cap *pht_cap = NULL;
diff --git a/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c b/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c
index 2739d0e99098..b82c1e3572c0 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c
@@ -322,7 +322,6 @@ u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter,
case NL80211_IFTYPE_AP:
set_fwstate(pmlmepriv, WIFI_AP_STATE);
start_ap_mode(padapter);
- /* rtw_indicate_connect(padapter); */
break;
@@ -330,8 +329,6 @@ u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter,
break;
}
- /* SecClearAllKeys(adapter); */
-
spin_unlock_bh(&pmlmepriv->lock);
}
return true;
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rtl8723bs/core/rtw_mlme.c
index d18768a51b19..0d0602eb4808 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c
@@ -27,77 +27,77 @@ static void _rtw_set_scan_deny_timer_hdl(struct timer_list *t)
rtw_clear_scan_deny(adapter);
}
-static void rtw_init_mlme_timer(struct adapter *padapter)
+static void rtw_init_mlme_timer(struct adapter *adapter)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- timer_setup(&pmlmepriv->assoc_timer, _rtw_join_timeout_handler, 0);
- timer_setup(&pmlmepriv->scan_to_timer, rtw_scan_timeout_handler, 0);
- timer_setup(&pmlmepriv->dynamic_chk_timer,
+ timer_setup(&mlme_priv->assoc_timer, _rtw_join_timeout_handler, 0);
+ timer_setup(&mlme_priv->scan_to_timer, rtw_scan_timeout_handler, 0);
+ timer_setup(&mlme_priv->dynamic_chk_timer,
_dynamic_check_timer_handler, 0);
- timer_setup(&pmlmepriv->set_scan_deny_timer,
+ timer_setup(&mlme_priv->set_scan_deny_timer,
_rtw_set_scan_deny_timer_hdl, 0);
}
-int rtw_init_mlme_priv(struct adapter *padapter)
+int rtw_init_mlme_priv(struct adapter *adapter)
{
int i;
- u8 *pbuf;
+ u8 *buf;
struct wlan_network *pnetwork;
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
int res = _SUCCESS;
- pmlmepriv->nic_hdl = (u8 *)padapter;
+ mlme_priv->nic_hdl = (u8 *)adapter;
- pmlmepriv->pscanned = NULL;
- pmlmepriv->fw_state = WIFI_STATION_STATE; /* Must sync with rtw_wdev_alloc() */
- pmlmepriv->cur_network.network.infrastructure_mode = NL80211_IFTYPE_UNSPECIFIED;
- pmlmepriv->scan_mode = SCAN_ACTIVE;/* 1: active, 0: passive. Maybe someday we should rename this variable to "active_mode" (Jeff) */
+ mlme_priv->pscanned = NULL;
+ mlme_priv->fw_state = WIFI_STATION_STATE; /* Must sync with rtw_wdev_alloc() */
+ mlme_priv->cur_network.network.infrastructure_mode = NL80211_IFTYPE_UNSPECIFIED;
+ mlme_priv->scan_mode = SCAN_ACTIVE;/* 1: active, 0: passive. Maybe someday we should rename this variable to "active_mode" (Jeff) */
- spin_lock_init(&pmlmepriv->lock);
- INIT_LIST_HEAD(&pmlmepriv->free_bss_pool.queue);
- spin_lock_init(&pmlmepriv->free_bss_pool.lock);
- INIT_LIST_HEAD(&pmlmepriv->scanned_queue.queue);
- spin_lock_init(&pmlmepriv->scanned_queue.lock);
+ spin_lock_init(&mlme_priv->lock);
+ INIT_LIST_HEAD(&mlme_priv->free_bss_pool.queue);
+ spin_lock_init(&mlme_priv->free_bss_pool.lock);
+ INIT_LIST_HEAD(&mlme_priv->scanned_queue.queue);
+ spin_lock_init(&mlme_priv->scanned_queue.lock);
- memset(&pmlmepriv->assoc_ssid, 0, sizeof(struct ndis_802_11_ssid));
+ memset(&mlme_priv->assoc_ssid, 0, sizeof(struct ndis_802_11_ssid));
- pbuf = vzalloc(array_size(MAX_BSS_CNT, sizeof(struct wlan_network)));
+ buf = vzalloc(array_size(MAX_BSS_CNT, sizeof(struct wlan_network)));
- if (!pbuf) {
+ if (!buf) {
res = _FAIL;
goto exit;
}
- pmlmepriv->free_bss_buf = pbuf;
+ mlme_priv->free_bss_buf = buf;
- pnetwork = (struct wlan_network *)pbuf;
+ pnetwork = (struct wlan_network *)buf;
for (i = 0; i < MAX_BSS_CNT; i++) {
INIT_LIST_HEAD(&pnetwork->list);
- list_add_tail(&pnetwork->list, &pmlmepriv->free_bss_pool.queue);
+ list_add_tail(&pnetwork->list, &mlme_priv->free_bss_pool.queue);
pnetwork++;
}
/* allocate DMA-able/Non-Page memory for cmd_buf and rsp_buf */
- rtw_clear_scan_deny(padapter);
+ rtw_clear_scan_deny(adapter);
#define RTW_ROAM_SCAN_RESULT_EXP_MS 5000
#define RTW_ROAM_RSSI_DIFF_TH 10
#define RTW_ROAM_SCAN_INTERVAL_MS 10000
- pmlmepriv->roam_flags = 0
+ mlme_priv->roam_flags = 0
| RTW_ROAM_ON_EXPIRED
| RTW_ROAM_ON_RESUME
;
- pmlmepriv->roam_scanr_exp_ms = RTW_ROAM_SCAN_RESULT_EXP_MS;
- pmlmepriv->roam_rssi_diff_th = RTW_ROAM_RSSI_DIFF_TH;
- pmlmepriv->roam_scan_int_ms = RTW_ROAM_SCAN_INTERVAL_MS;
+ mlme_priv->roam_scanr_exp_ms = RTW_ROAM_SCAN_RESULT_EXP_MS;
+ mlme_priv->roam_rssi_diff_th = RTW_ROAM_RSSI_DIFF_TH;
+ mlme_priv->roam_scan_int_ms = RTW_ROAM_SCAN_INTERVAL_MS;
- rtw_init_mlme_timer(padapter);
+ rtw_init_mlme_timer(adapter);
exit:
@@ -113,34 +113,34 @@ static void rtw_free_mlme_ie_data(u8 **ppie, u32 *plen)
}
}
-void rtw_free_mlme_priv_ie_data(struct mlme_priv *pmlmepriv)
+void rtw_free_mlme_priv_ie_data(struct mlme_priv *mlme_priv)
{
- rtw_buf_free(&pmlmepriv->assoc_req, &pmlmepriv->assoc_req_len);
- rtw_buf_free(&pmlmepriv->assoc_rsp, &pmlmepriv->assoc_rsp_len);
- rtw_free_mlme_ie_data(&pmlmepriv->wps_beacon_ie, &pmlmepriv->wps_beacon_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->wps_probe_req_ie, &pmlmepriv->wps_probe_req_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->wps_probe_resp_ie, &pmlmepriv->wps_probe_resp_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->wps_assoc_resp_ie, &pmlmepriv->wps_assoc_resp_ie_len);
+ rtw_buf_free(&mlme_priv->assoc_req, &mlme_priv->assoc_req_len);
+ rtw_buf_free(&mlme_priv->assoc_rsp, &mlme_priv->assoc_rsp_len);
+ rtw_free_mlme_ie_data(&mlme_priv->wps_beacon_ie, &mlme_priv->wps_beacon_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->wps_probe_req_ie, &mlme_priv->wps_probe_req_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->wps_probe_resp_ie, &mlme_priv->wps_probe_resp_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->wps_assoc_resp_ie, &mlme_priv->wps_assoc_resp_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->p2p_beacon_ie, &pmlmepriv->p2p_beacon_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->p2p_probe_req_ie, &pmlmepriv->p2p_probe_req_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->p2p_probe_resp_ie, &pmlmepriv->p2p_probe_resp_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->p2p_go_probe_resp_ie, &pmlmepriv->p2p_go_probe_resp_ie_len);
- rtw_free_mlme_ie_data(&pmlmepriv->p2p_assoc_req_ie, &pmlmepriv->p2p_assoc_req_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->p2p_beacon_ie, &mlme_priv->p2p_beacon_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->p2p_probe_req_ie, &mlme_priv->p2p_probe_req_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->p2p_probe_resp_ie, &mlme_priv->p2p_probe_resp_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->p2p_go_probe_resp_ie, &mlme_priv->p2p_go_probe_resp_ie_len);
+ rtw_free_mlme_ie_data(&mlme_priv->p2p_assoc_req_ie, &mlme_priv->p2p_assoc_req_ie_len);
}
-void _rtw_free_mlme_priv(struct mlme_priv *pmlmepriv)
+void _rtw_free_mlme_priv(struct mlme_priv *mlme_priv)
{
- if (pmlmepriv) {
- rtw_free_mlme_priv_ie_data(pmlmepriv);
- vfree(pmlmepriv->free_bss_buf);
+ if (mlme_priv) {
+ rtw_free_mlme_priv_ie_data(mlme_priv);
+ vfree(mlme_priv->free_bss_buf);
}
}
-struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv)
+struct wlan_network *rtw_alloc_network(struct mlme_priv *mlme_priv)
{
struct wlan_network *pnetwork;
- struct __queue *free_queue = &pmlmepriv->free_bss_pool;
+ struct __queue *free_queue = &mlme_priv->free_bss_pool;
struct list_head *plist = NULL;
spin_lock_bh(&free_queue->lock);
@@ -167,11 +167,11 @@ exit:
return pnetwork;
}
-void _rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork, u8 isfreeall)
+void _rtw_free_network(struct mlme_priv *mlme_priv, struct wlan_network *pnetwork, u8 isfreeall)
{
unsigned int delta_time;
u32 lifetime = SCANQUEUE_LIFETIME;
- struct __queue *free_queue = &pmlmepriv->free_bss_pool;
+ struct __queue *free_queue = &mlme_priv->free_bss_pool;
if (!pnetwork)
return;
@@ -179,8 +179,8 @@ void _rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwor
if (pnetwork->fixed)
return;
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) ||
- check_fwstate(pmlmepriv, WIFI_ADHOC_STATE))
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE) ||
+ check_fwstate(mlme_priv, WIFI_ADHOC_STATE))
lifetime = 1;
if (!isfreeall) {
@@ -198,9 +198,9 @@ void _rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwor
spin_unlock_bh(&free_queue->lock);
}
-void _rtw_free_network_nolock(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork)
+void _rtw_free_network_nolock(struct mlme_priv *mlme_priv, struct wlan_network *pnetwork)
{
- struct __queue *free_queue = &pmlmepriv->free_bss_pool;
+ struct __queue *free_queue = &mlme_priv->free_bss_pool;
if (!pnetwork)
return;
@@ -243,12 +243,12 @@ exit:
return pnetwork;
}
-void rtw_free_network_queue(struct adapter *padapter, u8 isfreeall)
+void rtw_free_network_queue(struct adapter *adapter, u8 isfreeall)
{
struct list_head *phead, *plist, *tmp;
struct wlan_network *pnetwork;
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct __queue *scanned_queue = &pmlmepriv->scanned_queue;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct __queue *scanned_queue = &mlme_priv->scanned_queue;
spin_lock_bh(&scanned_queue->lock);
@@ -256,31 +256,31 @@ void rtw_free_network_queue(struct adapter *padapter, u8 isfreeall)
list_for_each_safe(plist, tmp, phead) {
pnetwork = list_entry(plist, struct wlan_network, list);
- _rtw_free_network(pmlmepriv, pnetwork, isfreeall);
+ _rtw_free_network(mlme_priv, pnetwork, isfreeall);
}
spin_unlock_bh(&scanned_queue->lock);
}
-bool rtw_if_up(struct adapter *padapter)
+bool rtw_if_up(struct adapter *adapter)
{
- if (padapter->driver_stopped || padapter->bSurpriseRemoved ||
- !check_fwstate(&padapter->mlmepriv, _FW_LINKED))
+ if (adapter->driver_stopped || adapter->bSurpriseRemoved ||
+ !check_fwstate(&adapter->mlmepriv, _FW_LINKED))
return false;
return true;
}
-void rtw_generate_random_ibss(u8 *pibss)
+void rtw_generate_random_ibss(u8 *ibss)
{
unsigned long curtime = jiffies;
- pibss[0] = 0x02; /* in ad-hoc mode bit1 must set to 1 */
- pibss[1] = 0x11;
- pibss[2] = 0x87;
- pibss[3] = (u8)(curtime & 0xff) ;/* p[0]; */
- pibss[4] = (u8)((curtime >> 8) & 0xff) ;/* p[1]; */
- pibss[5] = (u8)((curtime >> 16) & 0xff) ;/* p[2]; */
+ ibss[0] = 0x02; /* in ad-hoc mode bit1 must set to 1 */
+ ibss[1] = 0x11;
+ ibss[2] = 0x87;
+ ibss[3] = (u8)(curtime & 0xff) ;/* p[0]; */
+ ibss[4] = (u8)((curtime >> 8) & 0xff) ;/* p[1]; */
+ ibss[5] = (u8)((curtime >> 16) & 0xff) ;/* p[2]; */
}
u8 *rtw_get_capability_from_ie(u8 *ie)
@@ -302,16 +302,16 @@ u8 *rtw_get_beacon_interval_from_ie(u8 *ie)
return ie + 8;
}
-void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv)
+void rtw_free_mlme_priv(struct mlme_priv *mlme_priv)
{
- _rtw_free_mlme_priv(pmlmepriv);
+ _rtw_free_mlme_priv(mlme_priv);
}
-void rtw_free_network_nolock(struct adapter *padapter, struct wlan_network *pnetwork);
-void rtw_free_network_nolock(struct adapter *padapter, struct wlan_network *pnetwork)
+void rtw_free_network_nolock(struct adapter *adapter, struct wlan_network *pnetwork);
+void rtw_free_network_nolock(struct adapter *adapter, struct wlan_network *pnetwork)
{
- _rtw_free_network_nolock(&padapter->mlmepriv, pnetwork);
- rtw_cfg80211_unlink_bss(padapter, pnetwork);
+ _rtw_free_network_nolock(&adapter->mlmepriv, pnetwork);
+ rtw_cfg80211_unlink_bss(adapter, pnetwork);
}
/*
@@ -406,7 +406,7 @@ struct wlan_network *rtw_get_oldest_wlan_network(struct __queue *scanned_queue)
}
void update_network(struct wlan_bssid_ex *dst, struct wlan_bssid_ex *src,
- struct adapter *padapter, bool update_ie)
+ struct adapter *adapter, bool update_ie)
{
long rssi_ori = dst->rssi;
@@ -417,10 +417,10 @@ void update_network(struct wlan_bssid_ex *dst, struct wlan_bssid_ex *src,
long rssi_final;
/* The rule below is 1/5 for sample value, 4/5 for history value */
- if (check_fwstate(&padapter->mlmepriv, _FW_LINKED) && is_same_network(&padapter->mlmepriv.cur_network.network, src, 0)) {
+ if (check_fwstate(&adapter->mlmepriv, _FW_LINKED) && is_same_network(&adapter->mlmepriv.cur_network.network, src, 0)) {
/* Take the recvpriv's value for the connected AP*/
- ss_final = padapter->recvpriv.signal_strength;
- sq_final = padapter->recvpriv.signal_qual;
+ ss_final = adapter->recvpriv.signal_strength;
+ sq_final = adapter->recvpriv.signal_qual;
/* the rssi value here is undecorated, and will be used for antenna diversity */
if (sq_smp != 101) /* from the right channel */
rssi_final = (src->rssi + dst->rssi * 4) / 5;
@@ -428,8 +428,10 @@ void update_network(struct wlan_bssid_ex *dst, struct wlan_bssid_ex *src,
rssi_final = rssi_ori;
} else {
if (sq_smp != 101) { /* from the right channel */
- ss_final = ((u32)(src->phy_info.signal_strength) + (u32)(dst->phy_info.signal_strength) * 4) / 5;
- sq_final = ((u32)(src->phy_info.signal_quality) + (u32)(dst->phy_info.signal_quality) * 4) / 5;
+ ss_final = ((u32)(src->phy_info.signal_strength) +
+ (u32)(dst->phy_info.signal_strength) * 4) / 5;
+ sq_final = ((u32)(src->phy_info.signal_quality) +
+ (u32)(dst->phy_info.signal_quality) * 4) / 5;
rssi_final = (src->rssi + dst->rssi * 4) / 5;
} else {
/* bss info not receiving from the right channel, use the original RX signal infos */
@@ -452,25 +454,25 @@ void update_network(struct wlan_bssid_ex *dst, struct wlan_bssid_ex *src,
static void update_current_network(struct adapter *adapter, struct wlan_bssid_ex *pnetwork)
{
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- if (check_fwstate(pmlmepriv, _FW_LINKED) && (is_same_network(&pmlmepriv->cur_network.network, pnetwork, 0))) {
- update_network(&pmlmepriv->cur_network.network, pnetwork, adapter, true);
- if (pmlmepriv->cur_network.network.ie_length < sizeof(struct ndis_802_11_fix_ie))
+ if (check_fwstate(mlme_priv, _FW_LINKED) && (is_same_network(&mlme_priv->cur_network.network, pnetwork, 0))) {
+ update_network(&mlme_priv->cur_network.network, pnetwork, adapter, true);
+ if (mlme_priv->cur_network.network.ie_length < sizeof(struct ndis_802_11_fix_ie))
return;
- rtw_update_protection(adapter, (pmlmepriv->cur_network.network.ies) + sizeof(struct ndis_802_11_fix_ie),
- pmlmepriv->cur_network.network.ie_length - sizeof(struct ndis_802_11_fix_ie));
+ rtw_update_protection(adapter, (mlme_priv->cur_network.network.ies) + sizeof(struct ndis_802_11_fix_ie),
+ mlme_priv->cur_network.network.ie_length - sizeof(struct ndis_802_11_fix_ie));
}
}
-/* Caller must hold pmlmepriv->lock first. */
+/* Caller must hold mlme_priv->lock first. */
void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *target)
{
struct list_head *plist, *phead;
u32 bssid_ex_sz;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct __queue *queue = &pmlmepriv->scanned_queue;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct __queue *queue = &mlme_priv->scanned_queue;
struct wlan_network *pnetwork = NULL;
struct wlan_network *oldest = NULL;
int target_find = 0;
@@ -499,7 +501,7 @@ void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *t
* with this beacon's information
*/
if (!target_find) {
- if (list_empty(&pmlmepriv->free_bss_pool.queue)) {
+ if (list_empty(&mlme_priv->free_bss_pool.queue)) {
/* If there are no more slots, expire the oldest */
/* list_del_init(&oldest->list); */
pnetwork = oldest;
@@ -521,7 +523,7 @@ void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *t
} else {
/* Otherwise just pull from the free list */
- pnetwork = rtw_alloc_network(pmlmepriv); /* will update scan_time */
+ pnetwork = rtw_alloc_network(mlme_priv); /* will update scan_time */
if (!pnetwork)
goto exit;
@@ -583,7 +585,7 @@ static void rtw_add_network(struct adapter *adapter, struct wlan_bssid_ex *pnetw
static bool rtw_is_desired_network(struct adapter *adapter, struct wlan_network *pnetwork)
{
struct security_priv *psecuritypriv = &adapter->securitypriv;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
u32 desired_encmode;
u32 privacy;
uint wps_ielen;
@@ -592,7 +594,7 @@ static bool rtw_is_desired_network(struct adapter *adapter, struct wlan_network
desired_encmode = psecuritypriv->ndisencryptstatus;
privacy = pnetwork->network.privacy;
- if (check_fwstate(pmlmepriv, WIFI_UNDER_WPS)) {
+ if (check_fwstate(mlme_priv, WIFI_UNDER_WPS)) {
if (pnetwork->network.ie_length < _FIXED_IE_LENGTH_)
return false;
if (rtw_get_wps_ie(pnetwork->network.ies + _FIXED_IE_LENGTH_, pnetwork->network.ie_length - _FIXED_IE_LENGTH_, NULL, &wps_ielen))
@@ -624,47 +626,47 @@ static bool rtw_is_desired_network(struct adapter *adapter, struct wlan_network
if ((desired_encmode != Ndis802_11EncryptionDisabled) && (privacy == 0))
bselected = false;
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
- if (pnetwork->network.infrastructure_mode != pmlmepriv->cur_network.network.infrastructure_mode)
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_STATE)) {
+ if (pnetwork->network.infrastructure_mode != mlme_priv->cur_network.network.infrastructure_mode)
bselected = false;
}
return bselected;
}
-void rtw_survey_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_survey_event_callback(struct adapter *adapter, u8 *buf)
{
u32 len;
struct wlan_bssid_ex *pnetwork;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- pnetwork = (struct wlan_bssid_ex *)pbuf;
+ pnetwork = (struct wlan_bssid_ex *)buf;
len = get_wlan_bssid_ex_sz(pnetwork);
if (len > (sizeof(struct wlan_bssid_ex)))
return;
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
/* update IBSS_network 's timestamp */
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE)) {
- if (!memcmp(&pmlmepriv->cur_network.network.mac_address, pnetwork->mac_address, ETH_ALEN)) {
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE)) {
+ if (!memcmp(&mlme_priv->cur_network.network.mac_address, pnetwork->mac_address, ETH_ALEN)) {
struct wlan_network *ibss_wlan = NULL;
- memcpy(pmlmepriv->cur_network.network.ies, pnetwork->ies, 8);
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
- ibss_wlan = rtw_find_network(&pmlmepriv->scanned_queue, pnetwork->mac_address);
+ memcpy(mlme_priv->cur_network.network.ies, pnetwork->ies, 8);
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
+ ibss_wlan = rtw_find_network(&mlme_priv->scanned_queue, pnetwork->mac_address);
if (ibss_wlan) {
memcpy(ibss_wlan->network.ies, pnetwork->ies, 8);
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
goto exit;
}
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
}
}
- /* lock pmlmepriv->lock when you accessing network_q */
- if (!check_fwstate(pmlmepriv, _FW_UNDER_LINKING)) {
+ /* lock mlme_priv->lock when you accessing network_q */
+ if (!check_fwstate(mlme_priv, _FW_UNDER_LINKING)) {
if (pnetwork->ssid.ssid[0] == 0)
pnetwork->ssid.ssid_length = 0;
rtw_add_network(adapter, pnetwork);
@@ -672,55 +674,55 @@ void rtw_survey_event_callback(struct adapter *adapter, u8 *pbuf)
exit:
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
}
-void rtw_surveydone_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_surveydone_event_callback(struct adapter *adapter, u8 *buf)
{
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- spin_lock_bh(&pmlmepriv->lock);
- if (pmlmepriv->wps_probe_req_ie) {
- pmlmepriv->wps_probe_req_ie_len = 0;
- kfree(pmlmepriv->wps_probe_req_ie);
- pmlmepriv->wps_probe_req_ie = NULL;
+ spin_lock_bh(&mlme_priv->lock);
+ if (mlme_priv->wps_probe_req_ie) {
+ mlme_priv->wps_probe_req_ie_len = 0;
+ kfree(mlme_priv->wps_probe_req_ie);
+ mlme_priv->wps_probe_req_ie = NULL;
}
- if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY)) {
- spin_unlock_bh(&pmlmepriv->lock);
- timer_delete_sync(&pmlmepriv->scan_to_timer);
- spin_lock_bh(&pmlmepriv->lock);
- _clr_fwstate_(pmlmepriv, _FW_UNDER_SURVEY);
+ if (check_fwstate(mlme_priv, _FW_UNDER_SURVEY)) {
+ spin_unlock_bh(&mlme_priv->lock);
+ timer_delete_sync(&mlme_priv->scan_to_timer);
+ spin_lock_bh(&mlme_priv->lock);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_SURVEY);
}
rtw_set_signal_stat_timer(&adapter->recvpriv);
- if (pmlmepriv->to_join) {
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
- if (!check_fwstate(pmlmepriv, _FW_LINKED)) {
- set_fwstate(pmlmepriv, _FW_UNDER_LINKING);
+ if (mlme_priv->to_join) {
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_STATE)) {
+ if (!check_fwstate(mlme_priv, _FW_LINKED)) {
+ set_fwstate(mlme_priv, _FW_UNDER_LINKING);
- if (rtw_select_and_join_from_scanned_queue(pmlmepriv) == _SUCCESS) {
- _set_timer(&pmlmepriv->assoc_timer, MAX_JOIN_TIMEOUT);
+ if (rtw_select_and_join_from_scanned_queue(mlme_priv) == _SUCCESS) {
+ _set_timer(&mlme_priv->assoc_timer, MAX_JOIN_TIMEOUT);
} else {
u8 ret = _SUCCESS;
- struct wlan_bssid_ex *pdev_network =
+ struct wlan_bssid_ex *dev_network =
&adapter->registrypriv.dev_network;
- u8 *pibss = adapter->registrypriv.dev_network.mac_address;
+ u8 *ibss = adapter->registrypriv.dev_network.mac_address;
- /* pmlmepriv->fw_state ^= _FW_UNDER_SURVEY;because don't set assoc_timer */
- _clr_fwstate_(pmlmepriv, _FW_UNDER_SURVEY);
+ /* mlme_priv->fw_state ^= _FW_UNDER_SURVEY;because don't set assoc_timer */
+ _clr_fwstate_(mlme_priv, _FW_UNDER_SURVEY);
- memcpy(&pdev_network->ssid, &pmlmepriv->assoc_ssid,
+ memcpy(&dev_network->ssid, &mlme_priv->assoc_ssid,
sizeof(struct ndis_802_11_ssid));
rtw_update_registrypriv_dev_network(adapter);
- rtw_generate_random_ibss(pibss);
+ rtw_generate_random_ibss(ibss);
- pmlmepriv->fw_state = WIFI_ADHOC_MASTER_STATE;
+ mlme_priv->fw_state = WIFI_ADHOC_MASTER_STATE;
- pmlmepriv->to_join = false;
+ mlme_priv->to_join = false;
ret = rtw_createbss_cmd(adapter);
if (ret != _SUCCESS)
@@ -730,37 +732,37 @@ void rtw_surveydone_event_callback(struct adapter *adapter, u8 *pbuf)
} else {
int s_ret;
- set_fwstate(pmlmepriv, _FW_UNDER_LINKING);
- pmlmepriv->to_join = false;
- s_ret = rtw_select_and_join_from_scanned_queue(pmlmepriv);
+ set_fwstate(mlme_priv, _FW_UNDER_LINKING);
+ mlme_priv->to_join = false;
+ s_ret = rtw_select_and_join_from_scanned_queue(mlme_priv);
if (s_ret == _SUCCESS) {
- _set_timer(&pmlmepriv->assoc_timer, MAX_JOIN_TIMEOUT);
+ _set_timer(&mlme_priv->assoc_timer, MAX_JOIN_TIMEOUT);
} else if (s_ret == 2) {/* there is no need to wait for join */
- _clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_LINKING);
rtw_indicate_connect(adapter);
} else {
if (rtw_to_roam(adapter) != 0) {
if (rtw_dec_to_roam(adapter) == 0 ||
- rtw_sitesurvey_cmd(adapter, &pmlmepriv->assoc_ssid,
+ rtw_sitesurvey_cmd(adapter, &mlme_priv->assoc_ssid,
1, NULL, 0) != _SUCCESS) {
rtw_set_to_roam(adapter, 0);
rtw_free_assoc_resources(adapter, 1);
rtw_indicate_disconnect(adapter);
} else {
- pmlmepriv->to_join = true;
+ mlme_priv->to_join = true;
}
} else {
rtw_indicate_disconnect(adapter);
}
- _clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_LINKING);
}
}
} else {
if (rtw_chk_roam_flags(adapter, RTW_ROAM_ACTIVE)) {
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE) &&
- check_fwstate(pmlmepriv, _FW_LINKED)) {
- if (rtw_select_roaming_candidate(pmlmepriv) == _SUCCESS) {
- receive_disconnect(adapter, pmlmepriv->cur_network.network.mac_address
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE) &&
+ check_fwstate(mlme_priv, _FW_LINKED)) {
+ if (rtw_select_roaming_candidate(mlme_priv) == _SUCCESS) {
+ receive_disconnect(adapter, mlme_priv->cur_network.network.mac_address
, WLAN_REASON_ACTIVE_ROAM);
}
}
@@ -768,7 +770,7 @@ void rtw_surveydone_event_callback(struct adapter *adapter, u8 *pbuf)
}
unlock:
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
rtw_os_xmit_schedule(adapter);
@@ -777,18 +779,18 @@ unlock:
rtw_indicate_scan_done(adapter, false);
}
-void rtw_dummy_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_dummy_event_callback(struct adapter *adapter, u8 *buf)
{
}
-void rtw_fwdbg_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_fwdbg_event_callback(struct adapter *adapter, u8 *buf)
{
}
-static void free_scanqueue(struct mlme_priv *pmlmepriv)
+static void free_scanqueue(struct mlme_priv *mlme_priv)
{
- struct __queue *free_queue = &pmlmepriv->free_bss_pool;
- struct __queue *scan_queue = &pmlmepriv->scanned_queue;
+ struct __queue *free_queue = &mlme_priv->free_bss_pool;
+ struct __queue *scan_queue = &mlme_priv->scanned_queue;
struct list_head *plist, *phead, *ptemp;
spin_lock_bh(&scan_queue->lock);
@@ -811,34 +813,34 @@ static void free_scanqueue(struct mlme_priv *pmlmepriv)
static void find_network(struct adapter *adapter)
{
struct wlan_network *pwlan = NULL;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct wlan_network *tgt_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct wlan_network *tgt_network = &mlme_priv->cur_network;
- pwlan = rtw_find_network(&pmlmepriv->scanned_queue, tgt_network->network.mac_address);
+ pwlan = rtw_find_network(&mlme_priv->scanned_queue, tgt_network->network.mac_address);
if (!pwlan)
return;
pwlan->fixed = false;
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) &&
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE) &&
(adapter->stapriv.asoc_sta_count == 1))
rtw_free_network_nolock(adapter, pwlan);
}
-/* rtw_free_assoc_resources: the caller has to lock pmlmepriv->lock */
+/* rtw_free_assoc_resources: the caller has to lock mlme_priv->lock */
void rtw_free_assoc_resources(struct adapter *adapter, int lock_scanned_queue)
{
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct wlan_network *tgt_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct wlan_network *tgt_network = &mlme_priv->cur_network;
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE | WIFI_AP_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE | WIFI_AP_STATE)) {
struct sta_info *psta;
psta = rtw_get_stainfo(&adapter->stapriv, tgt_network->network.mac_address);
rtw_free_stainfo(adapter, psta);
}
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE | WIFI_ADHOC_MASTER_STATE | WIFI_AP_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_STATE | WIFI_ADHOC_MASTER_STATE | WIFI_AP_STATE)) {
struct sta_info *psta;
rtw_free_all_stainfo(adapter);
@@ -855,82 +857,82 @@ void rtw_free_assoc_resources(struct adapter *adapter, int lock_scanned_queue)
adapter->securitypriv.key_mask = 0;
}
-/* rtw_indicate_connect: the caller has to lock pmlmepriv->lock */
-void rtw_indicate_connect(struct adapter *padapter)
+/* rtw_indicate_connect: the caller has to lock mlme_priv->lock */
+void rtw_indicate_connect(struct adapter *adapter)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- pmlmepriv->to_join = false;
+ mlme_priv->to_join = false;
- if (!check_fwstate(&padapter->mlmepriv, _FW_LINKED)) {
- set_fwstate(pmlmepriv, _FW_LINKED);
+ if (!check_fwstate(&adapter->mlmepriv, _FW_LINKED)) {
+ set_fwstate(mlme_priv, _FW_LINKED);
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) ||
- check_fwstate(pmlmepriv, WIFI_ADHOC_STATE))
- rtw_cfg80211_ibss_indicate_connect(padapter);
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE) ||
+ check_fwstate(mlme_priv, WIFI_ADHOC_STATE))
+ rtw_cfg80211_ibss_indicate_connect(adapter);
else
- rtw_cfg80211_indicate_connect(padapter);
+ rtw_cfg80211_indicate_connect(adapter);
- netif_carrier_on(padapter->pnetdev);
+ netif_carrier_on(adapter->pnetdev);
- if (padapter->pid[2] != 0)
- rtw_signal_process(padapter->pid[2], SIGALRM);
+ if (adapter->pid[2] != 0)
+ rtw_signal_process(adapter->pid[2], SIGALRM);
}
- rtw_set_to_roam(padapter, 0);
- rtw_set_scan_deny(padapter, 3000);
+ rtw_set_to_roam(adapter, 0);
+ rtw_set_scan_deny(adapter, 3000);
}
-/* rtw_indicate_disconnect: the caller has to lock pmlmepriv->lock */
-void rtw_indicate_disconnect(struct adapter *padapter)
+/* rtw_indicate_disconnect: the caller has to lock mlme_priv->lock */
+void rtw_indicate_disconnect(struct adapter *adapter)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- _clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING | WIFI_UNDER_WPS);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_LINKING | WIFI_UNDER_WPS);
- if (rtw_to_roam(padapter) > 0)
- _clr_fwstate_(pmlmepriv, _FW_LINKED);
+ if (rtw_to_roam(adapter) > 0)
+ _clr_fwstate_(mlme_priv, _FW_LINKED);
- if (check_fwstate(&padapter->mlmepriv, _FW_LINKED) || rtw_to_roam(padapter) <= 0) {
+ if (check_fwstate(&adapter->mlmepriv, _FW_LINKED) || rtw_to_roam(adapter) <= 0) {
/* Do it first for tx broadcast pkt after disconnection issue! */
- netif_carrier_off(padapter->pnetdev);
+ netif_carrier_off(adapter->pnetdev);
- rtw_cfg80211_indicate_disconnect(padapter);
+ rtw_cfg80211_indicate_disconnect(adapter);
- rtw_reset_securitypriv_cmd(padapter);
+ rtw_reset_securitypriv_cmd(adapter);
/* set ips_deny_time to avoid enter IPS before LPS leave */
- rtw_set_ips_deny(padapter, 3000);
+ rtw_set_ips_deny(adapter, 3000);
- _clr_fwstate_(pmlmepriv, _FW_LINKED);
+ _clr_fwstate_(mlme_priv, _FW_LINKED);
- rtw_clear_scan_deny(padapter);
+ rtw_clear_scan_deny(adapter);
}
- rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_DISCONNECT, 1);
+ rtw_lps_ctrl_wk_cmd(adapter, LPS_CTRL_DISCONNECT, 1);
}
-inline void rtw_indicate_scan_done(struct adapter *padapter, bool aborted)
+inline void rtw_indicate_scan_done(struct adapter *adapter, bool aborted)
{
- rtw_cfg80211_indicate_scan_done(padapter, aborted);
+ rtw_cfg80211_indicate_scan_done(adapter, aborted);
- if ((!adapter_to_pwrctl(padapter)->bInSuspend) &&
- (!check_fwstate(&padapter->mlmepriv,
+ if ((!adapter_to_pwrctl(adapter)->bInSuspend) &&
+ (!check_fwstate(&adapter->mlmepriv,
WIFI_ASOC_STATE | WIFI_UNDER_LINKING))) {
- rtw_set_ips_deny(padapter, 0);
- _set_timer(&padapter->mlmepriv.dynamic_chk_timer, 1);
+ rtw_set_ips_deny(adapter, 0);
+ _set_timer(&adapter->mlmepriv.dynamic_chk_timer, 1);
}
}
void rtw_scan_abort(struct adapter *adapter)
{
unsigned long start;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
start = jiffies;
pmlmeext->scan_abort = true;
- while (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY)
+ while (check_fwstate(mlme_priv, _FW_UNDER_SURVEY)
&& jiffies_to_msecs(start) <= 200) {
if (adapter->driver_stopped || adapter->bSurpriseRemoved)
break;
@@ -938,19 +940,19 @@ void rtw_scan_abort(struct adapter *adapter)
msleep(20);
}
- if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY))
+ if (check_fwstate(mlme_priv, _FW_UNDER_SURVEY))
rtw_indicate_scan_done(adapter, true);
pmlmeext->scan_abort = false;
}
-static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *padapter, struct wlan_network *pnetwork)
+static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *adapter, struct wlan_network *pnetwork)
{
int i;
struct sta_info *bmc_sta, *psta = NULL;
struct recv_reorder_ctrl *preorder_ctrl;
- struct sta_priv *pstapriv = &padapter->stapriv;
- struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
+ struct sta_priv *pstapriv = &adapter->stapriv;
+ struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
psta = rtw_get_stainfo(pstapriv, pnetwork->network.mac_address);
if (!psta)
@@ -960,27 +962,27 @@ static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *padapter, str
psta->aid = pnetwork->join_res;
- update_sta_info(padapter, psta);
+ update_sta_info(adapter, psta);
/* update station supportRate */
psta->bssratelen = rtw_get_rateset_len(pnetwork->network.supported_rates);
memcpy(psta->bssrateset, pnetwork->network.supported_rates, psta->bssratelen);
- rtw_hal_update_sta_rate_mask(padapter, psta);
+ rtw_hal_update_sta_rate_mask(adapter, psta);
psta->wireless_mode = pmlmeext->cur_wireless_mode;
- psta->raid = networktype_to_raid_ex(padapter, psta);
+ psta->raid = networktype_to_raid_ex(adapter, psta);
/* sta mode */
- rtw_hal_set_odm_var(padapter, HAL_ODM_STA_INFO, psta, true);
+ rtw_hal_set_odm_var(adapter, HAL_ODM_STA_INFO, psta, true);
/* security related */
- if (padapter->securitypriv.dot11_auth_algrthm == dot11_auth_algrthm_8021x) {
- padapter->securitypriv.binstallGrpkey = false;
- padapter->securitypriv.busetkipkey = false;
- padapter->securitypriv.bgrpkey_handshake = false;
+ if (adapter->securitypriv.dot11_auth_algrthm == dot11_auth_algrthm_8021x) {
+ adapter->securitypriv.binstallGrpkey = false;
+ adapter->securitypriv.busetkipkey = false;
+ adapter->securitypriv.bgrpkey_handshake = false;
psta->ieee8021x_blocked = true;
- psta->dot118021XPrivacy = padapter->securitypriv.dot11_privacy_algrthm;
+ psta->dot118021_x_privacy = adapter->securitypriv.dot11_privacy_algrthm;
memset((u8 *)&psta->dot118021x_UncstKey, 0, sizeof(union Keytype));
@@ -995,9 +997,9 @@ static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *padapter, str
/* When doing the WPS, the wps_ie_len won't equal to 0 */
/* And the Wi-Fi driver shouldn't allow the data packet to be transmitted. */
- if (padapter->securitypriv.wps_ie_len != 0) {
+ if (adapter->securitypriv.wps_ie_len != 0) {
psta->ieee8021x_blocked = true;
- padapter->securitypriv.wps_ie_len = 0;
+ adapter->securitypriv.wps_ie_len = 0;
}
/* for A-MPDU Rx reordering buffer control for bmc_sta & sta_info */
@@ -1011,7 +1013,7 @@ static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *padapter, str
preorder_ctrl->wsize_b = 64;/* max_ampdu_sz;ex. 32(kbytes) -> wsize_b =32 */
}
- bmc_sta = rtw_get_bcmc_stainfo(padapter);
+ bmc_sta = rtw_get_bcmc_stainfo(adapter);
if (bmc_sta) {
for (i = 0; i < 16 ; i++) {
preorder_ctrl = &bmc_sta->recvreorder_ctrl[i];
@@ -1028,11 +1030,11 @@ static struct sta_info *rtw_joinbss_update_stainfo(struct adapter *padapter, str
/* pnetwork : returns from rtw_joinbss_event_callback */
/* ptarget_wlan: found from scanned_queue */
-static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_network *ptarget_wlan,
+static void rtw_joinbss_update_network(struct adapter *adapter, struct wlan_network *ptarget_wlan,
struct wlan_network *pnetwork)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct wlan_network *cur_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct wlan_network *cur_network = &mlme_priv->cur_network;
/* why not use ptarget_wlan?? */
memcpy(&cur_network->network, &pnetwork->network, pnetwork->network.length);
@@ -1042,48 +1044,48 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net
cur_network->aid = pnetwork->join_res;
- rtw_set_signal_stat_timer(&padapter->recvpriv);
+ rtw_set_signal_stat_timer(&adapter->recvpriv);
- padapter->recvpriv.signal_strength = ptarget_wlan->network.phy_info.signal_strength;
- padapter->recvpriv.signal_qual = ptarget_wlan->network.phy_info.signal_quality;
+ adapter->recvpriv.signal_strength = ptarget_wlan->network.phy_info.signal_strength;
+ adapter->recvpriv.signal_qual = ptarget_wlan->network.phy_info.signal_quality;
/* the ptarget_wlan->network.rssi is raw data, we use ptarget_wlan->network.phy_info.signal_strength instead (has scaled) */
- padapter->recvpriv.rssi = translate_percentage_to_dbm(ptarget_wlan->network.phy_info.signal_strength);
+ adapter->recvpriv.rssi = translate_percentage_to_dbm(ptarget_wlan->network.phy_info.signal_strength);
- rtw_set_signal_stat_timer(&padapter->recvpriv);
+ rtw_set_signal_stat_timer(&adapter->recvpriv);
/* update fw_state will clr _FW_UNDER_LINKING here indirectly */
switch (pnetwork->network.infrastructure_mode) {
case NL80211_IFTYPE_STATION:
- if (pmlmepriv->fw_state & WIFI_UNDER_WPS)
- pmlmepriv->fw_state = WIFI_STATION_STATE | WIFI_UNDER_WPS;
+ if (mlme_priv->fw_state & WIFI_UNDER_WPS)
+ mlme_priv->fw_state = WIFI_STATION_STATE | WIFI_UNDER_WPS;
else
- pmlmepriv->fw_state = WIFI_STATION_STATE;
+ mlme_priv->fw_state = WIFI_STATION_STATE;
break;
case NL80211_IFTYPE_ADHOC:
- pmlmepriv->fw_state = WIFI_ADHOC_STATE;
+ mlme_priv->fw_state = WIFI_ADHOC_STATE;
break;
default:
- pmlmepriv->fw_state = WIFI_NULL_STATE;
+ mlme_priv->fw_state = WIFI_NULL_STATE;
break;
}
if (cur_network->network.ie_length < sizeof(struct ndis_802_11_fix_ie))
return;
- rtw_update_protection(padapter, (cur_network->network.ies) + sizeof(struct ndis_802_11_fix_ie),
+ rtw_update_protection(adapter, (cur_network->network.ies) + sizeof(struct ndis_802_11_fix_ie),
(cur_network->network.ie_length - sizeof(struct ndis_802_11_fix_ie)));
- rtw_update_ht_cap(padapter, cur_network->network.ies, cur_network->network.ie_length, (u8) cur_network->network.configuration.ds_config);
+ rtw_update_ht_cap(adapter, cur_network->network.ies, cur_network->network.ie_length, (u8) cur_network->network.configuration.ds_config);
}
-static struct rt_pmkid_list backupPMKIDList[NUM_PMKID_CACHE];
+static struct rt_pmkid_list backup_pmkid_list[NUM_PMKID_CACHE];
void rtw_reset_securitypriv(struct adapter *adapter)
{
- u8 backupPMKIDIndex = 0;
- u8 backupTKIPCountermeasure = 0x00;
- u32 backupTKIPcountermeasure_time = 0;
+ u8 backup_pmkid_index = 0;
+ u8 backup_tkip_countermeasure = 0x00;
+ u32 backup_tkip_countermeasure_time = 0;
struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
spin_lock_bh(&adapter->security_key_mutex);
@@ -1092,14 +1094,13 @@ void rtw_reset_securitypriv(struct adapter *adapter)
/* 802.1x */
/* Added by Albert 2009/02/18 */
/* We have to backup the PMK information for WiFi PMK Caching test item. */
- /* */
/* Backup the btkip_countermeasure information. */
/* When the countermeasure is trigger, the driver have to disconnect with AP for 60 seconds. */
- memcpy(&backupPMKIDList[0], &adapter->securitypriv.PMKIDList[0], sizeof(struct rt_pmkid_list) * NUM_PMKID_CACHE);
- backupPMKIDIndex = adapter->securitypriv.PMKIDIndex;
- backupTKIPCountermeasure = adapter->securitypriv.btkip_countermeasure;
- backupTKIPcountermeasure_time = adapter->securitypriv.btkip_countermeasure_time;
+ memcpy(&backup_pmkid_list[0], &adapter->securitypriv.PMKIDList[0], sizeof(struct rt_pmkid_list) * NUM_PMKID_CACHE);
+ backup_pmkid_index = adapter->securitypriv.PMKIDIndex;
+ backup_tkip_countermeasure = adapter->securitypriv.btkip_countermeasure;
+ backup_tkip_countermeasure_time = adapter->securitypriv.btkip_countermeasure_time;
/* reset RX BIP packet number */
pmlmeext->mgnt_80211w_IPN_rx = 0;
@@ -1108,10 +1109,10 @@ void rtw_reset_securitypriv(struct adapter *adapter)
/* Added by Albert 2009/02/18 */
/* Restore the PMK information to securitypriv structure for the following connection. */
- memcpy(&adapter->securitypriv.PMKIDList[0], &backupPMKIDList[0], sizeof(struct rt_pmkid_list) * NUM_PMKID_CACHE);
- adapter->securitypriv.PMKIDIndex = backupPMKIDIndex;
- adapter->securitypriv.btkip_countermeasure = backupTKIPCountermeasure;
- adapter->securitypriv.btkip_countermeasure_time = backupTKIPcountermeasure_time;
+ memcpy(&adapter->securitypriv.PMKIDList[0], &backup_pmkid_list[0], sizeof(struct rt_pmkid_list) * NUM_PMKID_CACHE);
+ adapter->securitypriv.PMKIDIndex = backup_pmkid_index;
+ adapter->securitypriv.btkip_countermeasure = backup_tkip_countermeasure;
+ adapter->securitypriv.btkip_countermeasure_time = backup_tkip_countermeasure_time;
adapter->securitypriv.ndisauthtype = Ndis802_11AuthModeOpen;
adapter->securitypriv.ndisencryptstatus = Ndis802_11WEPDisabled;
@@ -1119,7 +1120,6 @@ void rtw_reset_securitypriv(struct adapter *adapter)
} else {
/* reset values in securitypriv */
/* if (adapter->mlmepriv.fw_state & WIFI_STATION_STATE) */
- /* */
struct security_priv *psec_priv = &adapter->securitypriv;
psec_priv->dot11_auth_algrthm = dot11_auth_algrthm_open; /* open system */
@@ -1131,7 +1131,6 @@ void rtw_reset_securitypriv(struct adapter *adapter)
psec_priv->ndisauthtype = Ndis802_11AuthModeOpen;
psec_priv->ndisencryptstatus = Ndis802_11WEPDisabled;
- /* */
}
spin_unlock_bh(&adapter->security_key_mutex);
}
@@ -1142,14 +1141,13 @@ void rtw_reset_securitypriv(struct adapter *adapter)
/* if join_res > 0, for (fw_state ==WIFI_STATION_STATE), we check if "ptarget_sta" & "ptarget_wlan" exist. */
/* if join_res > 0, for (fw_state ==WIFI_ADHOC_STATE), we only check if "ptarget_wlan" exist. */
/* if join_res > 0, update "cur_network->network" from "pnetwork->network" if (ptarget_wlan != NULL). */
-/* */
-void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf)
+void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *buf)
{
struct sta_info *ptarget_sta = NULL, *pcur_sta = NULL;
struct sta_priv *pstapriv = &adapter->stapriv;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct wlan_network *pnetwork = (struct wlan_network *)pbuf;
- struct wlan_network *cur_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct wlan_network *pnetwork = (struct wlan_network *)buf;
+ struct wlan_network *cur_network = &mlme_priv->cur_network;
struct wlan_network *pcur_wlan = NULL, *ptarget_wlan = NULL;
unsigned int the_same_macaddr = false;
@@ -1159,43 +1157,43 @@ void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf)
if (pnetwork->network.length > sizeof(struct wlan_bssid_ex))
return;
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
- pmlmepriv->link_detect_info.traffic_transition_count = 0;
- pmlmepriv->link_detect_info.low_power_transition_count = 0;
+ mlme_priv->link_detect_info.traffic_transition_count = 0;
+ mlme_priv->link_detect_info.low_power_transition_count = 0;
if (pnetwork->join_res == -4) {
rtw_reset_securitypriv(adapter);
- _set_timer(&pmlmepriv->assoc_timer, 1);
+ _set_timer(&mlme_priv->assoc_timer, 1);
- if (check_fwstate(pmlmepriv, _FW_UNDER_LINKING))
- _clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
+ if (check_fwstate(mlme_priv, _FW_UNDER_LINKING))
+ _clr_fwstate_(mlme_priv, _FW_UNDER_LINKING);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
return;
}
if (pnetwork->join_res <= 0) { /* if join_res < 0 (join fails), then try again */
- _set_timer(&pmlmepriv->assoc_timer, 1);
- _clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
- spin_unlock_bh(&pmlmepriv->lock);
+ _set_timer(&mlme_priv->assoc_timer, 1);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_LINKING);
+ spin_unlock_bh(&mlme_priv->lock);
return;
}
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
- if (!check_fwstate(pmlmepriv, _FW_UNDER_LINKING)) {
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
- spin_unlock_bh(&pmlmepriv->lock);
+ if (!check_fwstate(mlme_priv, _FW_UNDER_LINKING)) {
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->lock);
return;
}
/* s1. find ptarget_wlan */
- if (check_fwstate(pmlmepriv, _FW_LINKED)) {
+ if (check_fwstate(mlme_priv, _FW_LINKED)) {
if (the_same_macaddr) {
- ptarget_wlan = rtw_find_network(&pmlmepriv->scanned_queue, cur_network->network.mac_address);
+ ptarget_wlan = rtw_find_network(&mlme_priv->scanned_queue, cur_network->network.mac_address);
} else {
- pcur_wlan = rtw_find_network(&pmlmepriv->scanned_queue, cur_network->network.mac_address);
+ pcur_wlan = rtw_find_network(&mlme_priv->scanned_queue, cur_network->network.mac_address);
if (pcur_wlan)
pcur_wlan->fixed = false;
@@ -1203,15 +1201,15 @@ void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf)
if (pcur_sta)
rtw_free_stainfo(adapter, pcur_sta);
- ptarget_wlan = rtw_find_network(&pmlmepriv->scanned_queue, pnetwork->network.mac_address);
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
+ ptarget_wlan = rtw_find_network(&mlme_priv->scanned_queue, pnetwork->network.mac_address);
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
if (ptarget_wlan)
ptarget_wlan->fixed = true;
}
}
} else {
- ptarget_wlan = _rtw_find_same_network(&pmlmepriv->scanned_queue, pnetwork);
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
+ ptarget_wlan = _rtw_find_same_network(&mlme_priv->scanned_queue, pnetwork);
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
if (ptarget_wlan)
ptarget_wlan->fixed = true;
}
@@ -1221,39 +1219,39 @@ void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf)
if (!ptarget_wlan) {
netdev_dbg(adapter->pnetdev,
"Can't find ptarget_wlan when joinbss_event callback\n");
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->lock);
return;
}
rtw_joinbss_update_network(adapter, ptarget_wlan, pnetwork);
/* s3. find ptarget_sta & update ptarget_sta after update cur_network only for station mode */
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
ptarget_sta = rtw_joinbss_update_stainfo(adapter, pnetwork);
if (!ptarget_sta) {
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->lock);
return;
}
}
/* s4. indicate connect */
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
- pmlmepriv->cur_network_scanned = ptarget_wlan;
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
+ mlme_priv->cur_network_scanned = ptarget_wlan;
rtw_indicate_connect(adapter);
}
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
/* s5. Cancel assoc_timer */
- timer_delete_sync(&pmlmepriv->assoc_timer);
+ timer_delete_sync(&mlme_priv->assoc_timer);
}
-void rtw_joinbss_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_joinbss_event_callback(struct adapter *adapter, u8 *buf)
{
- struct wlan_network *pnetwork = (struct wlan_network *)pbuf;
+ struct wlan_network *pnetwork = (struct wlan_network *)buf;
mlmeext_joinbss_event_callback(adapter, pnetwork->join_res);
@@ -1272,18 +1270,18 @@ void rtw_sta_media_status_rpt(struct adapter *adapter, struct sta_info *psta, u3
rtw_hal_set_hwreg(adapter, HW_VAR_H2C_MEDIA_STATUS_RPT, (u8 *)&media_status_rpt);
}
-void rtw_stassoc_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_stassoc_event_callback(struct adapter *adapter, u8 *buf)
{
struct sta_info *psta;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct stassoc_event *pstassoc = (struct stassoc_event *)pbuf;
- struct wlan_network *cur_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct stassoc_event *pstassoc = (struct stassoc_event *)buf;
+ struct wlan_network *cur_network = &mlme_priv->cur_network;
struct wlan_network *ptarget_wlan = NULL;
if (!rtw_access_ctrl(adapter, pstassoc->macaddr))
return;
- if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_AP_STATE)) {
psta = rtw_get_stainfo(&adapter->stapriv, pstassoc->macaddr);
if (psta) {
u8 *passoc_req = NULL;
@@ -1338,41 +1336,41 @@ void rtw_stassoc_event_callback(struct adapter *adapter, u8 *pbuf)
rtw_sta_media_status_rpt(adapter, psta, 1);
if (adapter->securitypriv.dot11_auth_algrthm == dot11_auth_algrthm_8021x)
- psta->dot118021XPrivacy = adapter->securitypriv.dot11_privacy_algrthm;
+ psta->dot118021_x_privacy = adapter->securitypriv.dot11_privacy_algrthm;
psta->ieee8021x_blocked = false;
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) ||
- check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE) ||
+ check_fwstate(mlme_priv, WIFI_ADHOC_STATE)) {
if (adapter->stapriv.asoc_sta_count == 2) {
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
- ptarget_wlan = rtw_find_network(&pmlmepriv->scanned_queue, cur_network->network.mac_address);
- pmlmepriv->cur_network_scanned = ptarget_wlan;
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
+ ptarget_wlan = rtw_find_network(&mlme_priv->scanned_queue, cur_network->network.mac_address);
+ mlme_priv->cur_network_scanned = ptarget_wlan;
if (ptarget_wlan)
ptarget_wlan->fixed = true;
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
/* a sta + bc/mc_stainfo (not Ibss_stainfo) */
rtw_indicate_connect(adapter);
}
}
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
mlmeext_sta_add_event_callback(adapter, psta);
}
-void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf)
+void rtw_stadel_event_callback(struct adapter *adapter, u8 *buf)
{
int mac_id = (-1);
struct sta_info *psta;
struct wlan_network *pwlan = NULL;
- struct wlan_bssid_ex *pdev_network = NULL;
- u8 *pibss = NULL;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
- struct stadel_event *pstadel = (struct stadel_event *)pbuf;
- struct wlan_network *tgt_network = &pmlmepriv->cur_network;
+ struct wlan_bssid_ex *dev_network = NULL;
+ u8 *ibss = NULL;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct stadel_event *pstadel = (struct stadel_event *)buf;
+ struct wlan_network *tgt_network = &mlme_priv->cur_network;
struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -1390,15 +1388,15 @@ void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf)
rtw_hal_set_hwreg(adapter, HW_VAR_H2C_MEDIA_STATUS_RPT, (u8 *)&media_status);
}
- /* if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) */
+ /* if (check_fwstate(mlme_priv, WIFI_AP_STATE)) */
if ((pmlmeinfo->state & 0x03) == WIFI_FW_AP_STATE)
return;
mlmeext_sta_del_event_callback(adapter);
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
u16 reason = *((unsigned short *)(pstadel->rsvd));
bool roam = false;
struct wlan_network *roam_target = NULL;
@@ -1409,7 +1407,7 @@ void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf)
roam = true;
} else if (reason == WLAN_REASON_ACTIVE_ROAM && rtw_chk_roam_flags(adapter, RTW_ROAM_ACTIVE)) {
roam = true;
- roam_target = pmlmepriv->roam_network;
+ roam_target = mlme_priv->roam_network;
}
if (roam) {
@@ -1426,48 +1424,48 @@ void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf)
rtw_free_assoc_resources(adapter, 1);
rtw_indicate_disconnect(adapter);
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
/* remove the network entry in scanned_queue */
- pwlan = rtw_find_network(&pmlmepriv->scanned_queue, tgt_network->network.mac_address);
+ pwlan = rtw_find_network(&mlme_priv->scanned_queue, tgt_network->network.mac_address);
if (pwlan) {
pwlan->fixed = false;
rtw_free_network_nolock(adapter, pwlan);
}
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
_rtw_roaming(adapter, roam_target);
}
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) ||
- check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE) ||
+ check_fwstate(mlme_priv, WIFI_ADHOC_STATE)) {
rtw_free_stainfo(adapter, psta);
if (adapter->stapriv.asoc_sta_count == 1) {/* a sta + bc/mc_stainfo (not Ibss_stainfo) */
u8 ret = _SUCCESS;
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
/* free old ibss network */
- pwlan = rtw_find_network(&pmlmepriv->scanned_queue, tgt_network->network.mac_address);
+ pwlan = rtw_find_network(&mlme_priv->scanned_queue, tgt_network->network.mac_address);
if (pwlan) {
pwlan->fixed = false;
rtw_free_network_nolock(adapter, pwlan);
}
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
/* re-create ibss */
- pdev_network = &adapter->registrypriv.dev_network;
- pibss = adapter->registrypriv.dev_network.mac_address;
+ dev_network = &adapter->registrypriv.dev_network;
+ ibss = adapter->registrypriv.dev_network.mac_address;
- memcpy(pdev_network, &tgt_network->network, get_wlan_bssid_ex_sz(&tgt_network->network));
+ memcpy(dev_network, &tgt_network->network, get_wlan_bssid_ex_sz(&tgt_network->network));
- memcpy(&pdev_network->ssid, &pmlmepriv->assoc_ssid, sizeof(struct ndis_802_11_ssid));
+ memcpy(&dev_network->ssid, &mlme_priv->assoc_ssid, sizeof(struct ndis_802_11_ssid));
rtw_update_registrypriv_dev_network(adapter);
- rtw_generate_random_ibss(pibss);
+ rtw_generate_random_ibss(ibss);
- if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) {
- set_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE);
- _clr_fwstate_(pmlmepriv, WIFI_ADHOC_STATE);
+ if (check_fwstate(mlme_priv, WIFI_ADHOC_STATE)) {
+ set_fwstate(mlme_priv, WIFI_ADHOC_MASTER_STATE);
+ _clr_fwstate_(mlme_priv, WIFI_ADHOC_STATE);
}
ret = rtw_createbss_cmd(adapter);
@@ -1477,21 +1475,21 @@ void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf)
}
unlock:
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
}
-void rtw_cpwm_event_callback(struct adapter *padapter, u8 *pbuf)
+void rtw_cpwm_event_callback(struct adapter *adapter, u8 *buf)
{
struct reportpwrstate_parm *preportpwrstate;
- preportpwrstate = (struct reportpwrstate_parm *)pbuf;
- preportpwrstate->state |= (u8)(adapter_to_pwrctl(padapter)->cpwm_tog + 0x80);
- cpwm_int_hdl(padapter, preportpwrstate);
+ preportpwrstate = (struct reportpwrstate_parm *)buf;
+ preportpwrstate->state |= (u8)(adapter_to_pwrctl(adapter)->cpwm_tog + 0x80);
+ cpwm_int_hdl(adapter, preportpwrstate);
}
-void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf)
+void rtw_wmm_event_callback(struct adapter *adapter, u8 *buf)
{
- WMMOnAssocRsp(padapter);
+ WMMOnAssocRsp(adapter);
}
/*
@@ -1502,12 +1500,12 @@ void _rtw_join_timeout_handler(struct timer_list *t)
{
struct adapter *adapter = timer_container_of(adapter, t,
mlmepriv.assoc_timer);
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
if (adapter->driver_stopped || adapter->bSurpriseRemoved)
return;
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
if (rtw_to_roam(adapter) > 0) { /* join timeout caused by roaming */
while (1) {
@@ -1528,13 +1526,13 @@ void _rtw_join_timeout_handler(struct timer_list *t)
} else {
rtw_indicate_disconnect(adapter);
- free_scanqueue(pmlmepriv);/* */
+ free_scanqueue(mlme_priv);
/* indicate disconnect for the case that join_timeout and check_fwstate != FW_LINKED */
rtw_cfg80211_indicate_disconnect(adapter);
}
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
}
/*
@@ -1545,13 +1543,13 @@ void rtw_scan_timeout_handler(struct timer_list *t)
{
struct adapter *adapter = timer_container_of(adapter, t,
mlmepriv.scan_to_timer);
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- spin_lock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
- _clr_fwstate_(pmlmepriv, _FW_UNDER_SURVEY);
+ _clr_fwstate_(mlme_priv, _FW_UNDER_SURVEY);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_unlock_bh(&mlme_priv->lock);
rtw_indicate_scan_done(adapter, true);
}
@@ -1575,23 +1573,23 @@ void rtw_mlme_reset_auto_scan_int(struct adapter *adapter)
}
}
-static void rtw_auto_scan_handler(struct adapter *padapter)
+static void rtw_auto_scan_handler(struct adapter *adapter)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- rtw_mlme_reset_auto_scan_int(padapter);
+ rtw_mlme_reset_auto_scan_int(adapter);
- if (pmlmepriv->auto_scan_int_ms != 0 &&
- jiffies_to_msecs(jiffies - pmlmepriv->scan_start_time) > pmlmepriv->auto_scan_int_ms) {
- if (!padapter->registrypriv.wifi_spec) {
- if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY | _FW_UNDER_LINKING))
+ if (mlme_priv->auto_scan_int_ms != 0 &&
+ jiffies_to_msecs(jiffies - mlme_priv->scan_start_time) > mlme_priv->auto_scan_int_ms) {
+ if (!adapter->registrypriv.wifi_spec) {
+ if (check_fwstate(mlme_priv, _FW_UNDER_SURVEY | _FW_UNDER_LINKING))
goto exit;
- if (pmlmepriv->link_detect_info.busy_traffic)
+ if (mlme_priv->link_detect_info.busy_traffic)
goto exit;
}
- rtw_set_802_11_bssid_list_scan(padapter, NULL, 0);
+ rtw_set_802_11_bssid_list_scan(adapter, NULL, 0);
}
exit:
@@ -1624,7 +1622,7 @@ void rtw_dynamic_check_timer_handler(struct adapter *adapter)
/* rtw_lps_ctrl_wk_cmd(adapter, LPS_CTRL_ENTER, 1); */
rtw_hal_dm_watchdog_in_lps(adapter);
} else {
- /* call rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_LEAVE, 1) in traffic_status_watchdog() */
+ /* call rtw_lps_ctrl_wk_cmd(adapter, LPS_CTRL_LEAVE, 1) in traffic_status_watchdog() */
}
} else {
@@ -1786,34 +1784,34 @@ exit:
* Calling context:
* The caller of the sub-routine will be in critical section...
* The caller must hold the following spinlock
- * pmlmepriv->lock
+ * mlme_priv->lock
*/
-int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv)
+int rtw_select_and_join_from_scanned_queue(struct mlme_priv *mlme_priv)
{
int ret;
struct list_head *phead;
struct adapter *adapter;
- struct __queue *queue = &pmlmepriv->scanned_queue;
+ struct __queue *queue = &mlme_priv->scanned_queue;
struct wlan_network *pnetwork = NULL;
struct wlan_network *candidate = NULL;
- adapter = (struct adapter *)pmlmepriv->nic_hdl;
+ adapter = (struct adapter *)mlme_priv->nic_hdl;
- spin_lock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_lock_bh(&mlme_priv->scanned_queue.lock);
- if (pmlmepriv->roam_network) {
- candidate = pmlmepriv->roam_network;
- pmlmepriv->roam_network = NULL;
+ if (mlme_priv->roam_network) {
+ candidate = mlme_priv->roam_network;
+ mlme_priv->roam_network = NULL;
goto candidate_exist;
}
phead = get_list_head(queue);
- list_for_each(pmlmepriv->pscanned, phead) {
- pnetwork = list_entry(pmlmepriv->pscanned,
+ list_for_each(mlme_priv->pscanned, phead) {
+ pnetwork = list_entry(mlme_priv->pscanned,
struct wlan_network, list);
- rtw_check_join_candidate(pmlmepriv, &candidate, pnetwork);
+ rtw_check_join_candidate(mlme_priv, &candidate, pnetwork);
}
if (!candidate) {
@@ -1826,17 +1824,17 @@ int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv)
candidate_exist:
/* check for situation of _FW_LINKED */
- if (check_fwstate(pmlmepriv, _FW_LINKED)) {
+ if (check_fwstate(mlme_priv, _FW_LINKED)) {
rtw_disassoc_cmd(adapter, 0, true);
rtw_indicate_disconnect(adapter);
rtw_free_assoc_resources(adapter, 0);
}
- set_fwstate(pmlmepriv, _FW_UNDER_LINKING);
+ set_fwstate(mlme_priv, _FW_UNDER_LINKING);
ret = rtw_joinbss_cmd(adapter, candidate);
exit:
- spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
+ spin_unlock_bh(&mlme_priv->scanned_queue.lock);
return ret;
}
@@ -1921,14 +1919,14 @@ signed int rtw_set_key(struct adapter *adapter, struct security_priv *psecurityp
break;
default:
res = _FAIL;
- kfree(psetkeyparm);
+ kfree_sensitive(psetkeyparm);
goto exit;
}
if (enqueue) {
pcmd = kzalloc_obj(*pcmd);
if (!pcmd) {
- kfree(psetkeyparm);
+ kfree_sensitive(psetkeyparm);
res = _FAIL; /* try again */
goto exit;
}
@@ -1944,7 +1942,7 @@ signed int rtw_set_key(struct adapter *adapter, struct security_priv *psecurityp
res = rtw_enqueue_cmd(pcmdpriv, pcmd);
} else {
setkey_hdl(adapter, (u8 *)psetkeyparm);
- kfree(psetkeyparm);
+ kfree_sensitive(psetkeyparm);
}
exit:
return res;
@@ -2006,15 +2004,13 @@ static int SecIsInPMKIDList(struct adapter *Adapter, u8 *bssid)
return -1;
}
-/* */
/* Check the RSN IE length */
/* If the RSN IE length <= 20, the RSN IE didn't include the PMKID information */
/* 0-11th element in the array are the fixed IE */
/* 12th element in the array is the IE */
/* 13th element in the array is the IE length */
-/* */
-static int rtw_append_pmkid(struct adapter *Adapter, int iEntry, u8 *ie, uint ie_len)
+static int rtw_append_pmkid(struct adapter *Adapter, int pmkid_idx, u8 *ie, uint ie_len)
{
struct security_priv *psecuritypriv = &Adapter->securitypriv;
@@ -2024,7 +2020,7 @@ static int rtw_append_pmkid(struct adapter *Adapter, int iEntry, u8 *ie, uint ie
ie_len++;
ie[ie_len] = 0; /* PMKID count = 0x0100 */
ie_len++;
- memcpy(&ie[ie_len], &psecuritypriv->PMKIDList[iEntry].PMKID, 16);
+ memcpy(&ie[ie_len], &psecuritypriv->PMKIDList[pmkid_idx].PMKID, 16);
ie_len += 16;
ie[13] += 18;/* PMKID length = 2+16 */
}
@@ -2068,9 +2064,9 @@ signed int rtw_restruct_sec_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, u
{
u8 authmode = 0x0;
uint ielength;
- int iEntry;
+ int pmkid_idx;
- struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
struct security_priv *psecuritypriv = &adapter->securitypriv;
uint ndisauthmode = psecuritypriv->ndisauthtype;
@@ -2082,7 +2078,7 @@ signed int rtw_restruct_sec_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, u
if ((ndisauthmode == Ndis802_11AuthModeWPA2) || (ndisauthmode == Ndis802_11AuthModeWPA2PSK))
authmode = WLAN_EID_RSN;
- if (check_fwstate(pmlmepriv, WIFI_UNDER_WPS)) {
+ if (check_fwstate(mlme_priv, WIFI_UNDER_WPS)) {
memcpy(out_ie + ielength, psecuritypriv->wps_ie, psecuritypriv->wps_ie_len);
ielength += psecuritypriv->wps_ie_len;
@@ -2093,175 +2089,175 @@ signed int rtw_restruct_sec_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, u
rtw_report_sec_ie(adapter, authmode, psecuritypriv->supplicant_ie);
}
- iEntry = SecIsInPMKIDList(adapter, pmlmepriv->assoc_bssid);
- if (iEntry < 0)
+ pmkid_idx = SecIsInPMKIDList(adapter, mlme_priv->assoc_bssid);
+ if (pmkid_idx < 0)
return ielength;
if (authmode == WLAN_EID_RSN)
- ielength = rtw_append_pmkid(adapter, iEntry, out_ie, ielength);
+ ielength = rtw_append_pmkid(adapter, pmkid_idx, out_ie, ielength);
return ielength;
}
void rtw_init_registrypriv_dev_network(struct adapter *adapter)
{
- struct registry_priv *pregistrypriv = &adapter->registrypriv;
+ struct registry_priv *registry_priv = &adapter->registrypriv;
struct eeprom_priv *peepriv = &adapter->eeprompriv;
- struct wlan_bssid_ex *pdev_network = &pregistrypriv->dev_network;
+ struct wlan_bssid_ex *dev_network = &registry_priv->dev_network;
u8 *myhwaddr = myid(peepriv);
- memcpy(pdev_network->mac_address, myhwaddr, ETH_ALEN);
+ memcpy(dev_network->mac_address, myhwaddr, ETH_ALEN);
- memcpy(&pdev_network->ssid, &pregistrypriv->ssid, sizeof(struct ndis_802_11_ssid));
+ memcpy(&dev_network->ssid, &registry_priv->ssid, sizeof(struct ndis_802_11_ssid));
- pdev_network->configuration.length = sizeof(struct ndis_802_11_conf);
- pdev_network->configuration.beacon_period = 100;
+ dev_network->configuration.length = sizeof(struct ndis_802_11_conf);
+ dev_network->configuration.beacon_period = 100;
}
void rtw_update_registrypriv_dev_network(struct adapter *adapter)
{
int sz = 0;
- struct registry_priv *pregistrypriv = &adapter->registrypriv;
- struct wlan_bssid_ex *pdev_network = &pregistrypriv->dev_network;
+ struct registry_priv *registry_priv = &adapter->registrypriv;
+ struct wlan_bssid_ex *dev_network = &registry_priv->dev_network;
struct security_priv *psecuritypriv = &adapter->securitypriv;
struct wlan_network *cur_network = &adapter->mlmepriv.cur_network;
- pdev_network->privacy = (psecuritypriv->dot11_privacy_algrthm > 0 ? 1 : 0) ; /* adhoc no 802.1x */
+ dev_network->privacy = (psecuritypriv->dot11_privacy_algrthm > 0 ? 1 : 0) ; /* adhoc no 802.1x */
- pdev_network->rssi = 0;
+ dev_network->rssi = 0;
- pdev_network->configuration.ds_config = (pregistrypriv->channel);
+ dev_network->configuration.ds_config = (registry_priv->channel);
if (cur_network->network.infrastructure_mode == NL80211_IFTYPE_ADHOC)
- pdev_network->configuration.atim_window = (0);
+ dev_network->configuration.atim_window = (0);
- pdev_network->infrastructure_mode = (cur_network->network.infrastructure_mode);
+ dev_network->infrastructure_mode = (cur_network->network.infrastructure_mode);
/* 1. Supported rates */
/* 2. IE */
- /* rtw_set_supported_rate(pdev_network->supported_rates, pregistrypriv->wireless_mode) ; will be called in rtw_generate_ie */
- sz = rtw_generate_ie(pregistrypriv);
+ /* rtw_set_supported_rate(dev_network->supported_rates, registry_priv->wireless_mode) ; will be called in rtw_generate_ie */
+ sz = rtw_generate_ie(registry_priv);
- pdev_network->ie_length = sz;
+ dev_network->ie_length = sz;
- pdev_network->length = get_wlan_bssid_ex_sz((struct wlan_bssid_ex *)pdev_network);
+ dev_network->length = get_wlan_bssid_ex_sz((struct wlan_bssid_ex *)dev_network);
/* notes: translate ie_length & length after assign the length to cmdsz in createbss_cmd(); */
- /* pdev_network->ie_length = cpu_to_le32(sz); */
+ /* dev_network->ie_length = cpu_to_le32(sz); */
}
/* the function is at passive_level */
-void rtw_joinbss_reset(struct adapter *padapter)
+void rtw_joinbss_reset(struct adapter *adapter)
{
u8 threshold;
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- struct ht_priv *phtpriv = &pmlmepriv->htpriv;
+ struct ht_priv *ht_priv = &mlme_priv->htpriv;
/* todo: if you want to do something io/reg/hw setting before join_bss, please add code here */
- pmlmepriv->num_FortyMHzIntolerant = 0;
+ mlme_priv->num_FortyMHzIntolerant = 0;
- pmlmepriv->num_sta_no_ht = 0;
+ mlme_priv->num_sta_no_ht = 0;
- phtpriv->ampdu_enable = false;/* reset to disabled */
+ ht_priv->ampdu_enable = false;/* reset to disabled */
/* TH = 1 => means that invalidate usb rx aggregation */
/* TH = 0 => means that validate usb rx aggregation, use init value. */
- if (phtpriv->ht_option) {
- if (padapter->registrypriv.wifi_spec == 1)
+ if (ht_priv->ht_option) {
+ if (adapter->registrypriv.wifi_spec == 1)
threshold = 1;
else
threshold = 0;
- rtw_hal_set_hwreg(padapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
+ rtw_hal_set_hwreg(adapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
} else {
threshold = 1;
- rtw_hal_set_hwreg(padapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
+ rtw_hal_set_hwreg(adapter, HW_VAR_RXDMA_AGG_PG_TH, (u8 *)(&threshold));
}
}
-void rtw_ht_use_default_setting(struct adapter *padapter)
+void rtw_ht_use_default_setting(struct adapter *adapter)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct ht_priv *phtpriv = &pmlmepriv->htpriv;
- struct registry_priv *pregistrypriv = &padapter->registrypriv;
- bool bHwLDPCSupport = false, bHwSTBCSupport = false;
- bool bHwSupportBeamformer = false, bHwSupportBeamformee = false;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct ht_priv *ht_priv = &mlme_priv->htpriv;
+ struct registry_priv *registry_priv = &adapter->registrypriv;
+ bool hw_ldpc_support = false, hw_stbc_support = false;
+ bool hw_support_beamformer = false, hw_support_beamformee = false;
- if (pregistrypriv->wifi_spec)
- phtpriv->bss_coexist = 1;
+ if (registry_priv->wifi_spec)
+ ht_priv->bss_coexist = 1;
else
- phtpriv->bss_coexist = 0;
+ ht_priv->bss_coexist = 0;
- phtpriv->sgi_40m = TEST_FLAG(pregistrypriv->short_gi, BIT(1)) ? true : false;
- phtpriv->sgi_20m = TEST_FLAG(pregistrypriv->short_gi, BIT(0)) ? true : false;
+ ht_priv->sgi_40m = TEST_FLAG(registry_priv->short_gi, BIT(1)) ? true : false;
+ ht_priv->sgi_20m = TEST_FLAG(registry_priv->short_gi, BIT(0)) ? true : false;
/* LDPC support */
- rtw_hal_get_def_var(padapter, HAL_DEF_RX_LDPC, (u8 *)&bHwLDPCSupport);
- CLEAR_FLAGS(phtpriv->ldpc_cap);
- if (bHwLDPCSupport) {
- if (TEST_FLAG(pregistrypriv->ldpc_cap, BIT(4)))
- SET_FLAG(phtpriv->ldpc_cap, LDPC_HT_ENABLE_RX);
+ rtw_hal_get_def_var(adapter, HAL_DEF_RX_LDPC, (u8 *)&hw_ldpc_support);
+ CLEAR_FLAGS(ht_priv->ldpc_cap);
+ if (hw_ldpc_support) {
+ if (TEST_FLAG(registry_priv->ldpc_cap, BIT(4)))
+ SET_FLAG(ht_priv->ldpc_cap, LDPC_HT_ENABLE_RX);
}
- rtw_hal_get_def_var(padapter, HAL_DEF_TX_LDPC, (u8 *)&bHwLDPCSupport);
- if (bHwLDPCSupport) {
- if (TEST_FLAG(pregistrypriv->ldpc_cap, BIT(5)))
- SET_FLAG(phtpriv->ldpc_cap, LDPC_HT_ENABLE_TX);
+ rtw_hal_get_def_var(adapter, HAL_DEF_TX_LDPC, (u8 *)&hw_ldpc_support);
+ if (hw_ldpc_support) {
+ if (TEST_FLAG(registry_priv->ldpc_cap, BIT(5)))
+ SET_FLAG(ht_priv->ldpc_cap, LDPC_HT_ENABLE_TX);
}
/* STBC */
- rtw_hal_get_def_var(padapter, HAL_DEF_TX_STBC, (u8 *)&bHwSTBCSupport);
- CLEAR_FLAGS(phtpriv->stbc_cap);
- if (bHwSTBCSupport) {
- if (TEST_FLAG(pregistrypriv->stbc_cap, BIT(5)))
- SET_FLAG(phtpriv->stbc_cap, STBC_HT_ENABLE_TX);
+ rtw_hal_get_def_var(adapter, HAL_DEF_TX_STBC, (u8 *)&hw_stbc_support);
+ CLEAR_FLAGS(ht_priv->stbc_cap);
+ if (hw_stbc_support) {
+ if (TEST_FLAG(registry_priv->stbc_cap, BIT(5)))
+ SET_FLAG(ht_priv->stbc_cap, STBC_HT_ENABLE_TX);
}
- rtw_hal_get_def_var(padapter, HAL_DEF_RX_STBC, (u8 *)&bHwSTBCSupport);
- if (bHwSTBCSupport) {
- if (TEST_FLAG(pregistrypriv->stbc_cap, BIT(4)))
- SET_FLAG(phtpriv->stbc_cap, STBC_HT_ENABLE_RX);
+ rtw_hal_get_def_var(adapter, HAL_DEF_RX_STBC, (u8 *)&hw_stbc_support);
+ if (hw_stbc_support) {
+ if (TEST_FLAG(registry_priv->stbc_cap, BIT(4)))
+ SET_FLAG(ht_priv->stbc_cap, STBC_HT_ENABLE_RX);
}
/* Beamforming setting */
- rtw_hal_get_def_var(padapter, HAL_DEF_EXPLICIT_BEAMFORMER, (u8 *)&bHwSupportBeamformer);
- rtw_hal_get_def_var(padapter, HAL_DEF_EXPLICIT_BEAMFORMEE, (u8 *)&bHwSupportBeamformee);
- CLEAR_FLAGS(phtpriv->beamform_cap);
- if (TEST_FLAG(pregistrypriv->beamform_cap, BIT(4)) && bHwSupportBeamformer)
- SET_FLAG(phtpriv->beamform_cap, BEAMFORMING_HT_BEAMFORMER_ENABLE);
+ rtw_hal_get_def_var(adapter, HAL_DEF_EXPLICIT_BEAMFORMER, (u8 *)&hw_support_beamformer);
+ rtw_hal_get_def_var(adapter, HAL_DEF_EXPLICIT_BEAMFORMEE, (u8 *)&hw_support_beamformee);
+ CLEAR_FLAGS(ht_priv->beamform_cap);
+ if (TEST_FLAG(registry_priv->beamform_cap, BIT(4)) && hw_support_beamformer)
+ SET_FLAG(ht_priv->beamform_cap, BEAMFORMING_HT_BEAMFORMER_ENABLE);
- if (TEST_FLAG(pregistrypriv->beamform_cap, BIT(5)) && bHwSupportBeamformee)
- SET_FLAG(phtpriv->beamform_cap, BEAMFORMING_HT_BEAMFORMEE_ENABLE);
+ if (TEST_FLAG(registry_priv->beamform_cap, BIT(5)) && hw_support_beamformee)
+ SET_FLAG(ht_priv->beamform_cap, BEAMFORMING_HT_BEAMFORMEE_ENABLE);
}
-void rtw_build_wmm_ie_ht(struct adapter *padapter, u8 *out_ie, uint *pout_len)
+void rtw_build_wmm_ie_ht(struct adapter *adapter, u8 *out_ie, uint *pout_len)
{
unsigned char WMM_IE[] = {0x00, 0x50, 0xf2, 0x02, 0x00, 0x01, 0x00};
int out_len;
- if (padapter->mlmepriv.qospriv.qos_option == 0) {
+ if (adapter->mlmepriv.qospriv.qos_option == 0) {
out_len = *pout_len;
rtw_set_ie(out_ie + out_len, WLAN_EID_VENDOR_SPECIFIC,
_WMM_IE_Length_, WMM_IE, pout_len);
- padapter->mlmepriv.qospriv.qos_option = 1;
+ adapter->mlmepriv.qospriv.qos_option = 1;
}
}
/* the function is >= passive_level */
-unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len, u8 channel)
+unsigned int rtw_restructure_ht_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, uint in_len, uint *pout_len, u8 channel)
{
u32 ielen, out_len;
enum ieee80211_max_ampdu_length_exp max_rx_ampdu_factor;
unsigned char *p;
struct ieee80211_ht_cap ht_capie;
u8 cbw40_enable = 0, stbc_rx_enable = 0, operation_bw = 0;
- struct registry_priv *pregistrypriv = &padapter->registrypriv;
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct ht_priv *phtpriv = &pmlmepriv->htpriv;
- struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
+ struct registry_priv *registry_priv = &adapter->registrypriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct ht_priv *ht_priv = &mlme_priv->htpriv;
+ struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
- phtpriv->ht_option = false;
+ ht_priv->ht_option = false;
out_len = *pout_len;
@@ -2269,14 +2265,14 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_
ht_capie.cap_info = cpu_to_le16(IEEE80211_HT_CAP_DSSSCCK40);
- if (phtpriv->sgi_20m)
+ if (ht_priv->sgi_20m)
ht_capie.cap_info |= cpu_to_le16(IEEE80211_HT_CAP_SGI_20);
/* Get HT BW */
if (!in_ie) {
/* TDLS: TODO 20/40 issue */
- if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
- operation_bw = padapter->mlmeextpriv.cur_bwmode;
+ if (check_fwstate(mlme_priv, WIFI_STATION_STATE)) {
+ operation_bw = adapter->mlmeextpriv.cur_bwmode;
if (operation_bw > CHANNEL_WIDTH_40)
operation_bw = CHANNEL_WIDTH_40;
} else {
@@ -2305,24 +2301,24 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_
}
/* to disable 40M Hz support while gd_bw_40MHz_en = 0 */
- if ((pregistrypriv->bw_mode & 0x0f) > 0)
+ if ((registry_priv->bw_mode & 0x0f) > 0)
cbw40_enable = 1;
if ((cbw40_enable == 1) && (operation_bw == CHANNEL_WIDTH_40)) {
ht_capie.cap_info |= cpu_to_le16(IEEE80211_HT_CAP_SUP_WIDTH);
- if (phtpriv->sgi_40m)
+ if (ht_priv->sgi_40m)
ht_capie.cap_info |= cpu_to_le16(IEEE80211_HT_CAP_SGI_40);
}
- if (TEST_FLAG(phtpriv->stbc_cap, STBC_HT_ENABLE_TX))
+ if (TEST_FLAG(ht_priv->stbc_cap, STBC_HT_ENABLE_TX))
ht_capie.cap_info |= cpu_to_le16(IEEE80211_HT_CAP_TX_STBC);
/* todo: disable SM power save mode */
ht_capie.cap_info |= cpu_to_le16(IEEE80211_HT_CAP_SM_PS);
- if (TEST_FLAG(phtpriv->stbc_cap, STBC_HT_ENABLE_RX)) {
- if ((channel <= 14 && pregistrypriv->rx_stbc == 0x1) || /* enable for 2.4GHz */
- (pregistrypriv->wifi_spec == 1))
+ if (TEST_FLAG(ht_priv->stbc_cap, STBC_HT_ENABLE_RX)) {
+ if ((channel <= 14 && registry_priv->rx_stbc == 0x1) || /* enable for 2.4GHz */
+ (registry_priv->wifi_spec == 1))
stbc_rx_enable = 1;
}
@@ -2338,20 +2334,20 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_
{
u32 rx_packet_offset, max_recvbuf_sz;
- rtw_hal_get_def_var(padapter, HAL_DEF_RX_PACKET_OFFSET, &rx_packet_offset);
- rtw_hal_get_def_var(padapter, HAL_DEF_MAX_RECVBUF_SZ, &max_recvbuf_sz);
+ rtw_hal_get_def_var(adapter, HAL_DEF_RX_PACKET_OFFSET, &rx_packet_offset);
+ rtw_hal_get_def_var(adapter, HAL_DEF_MAX_RECVBUF_SZ, &max_recvbuf_sz);
}
- if (padapter->driver_rx_ampdu_factor != 0xFF)
+ if (adapter->driver_rx_ampdu_factor != 0xFF)
max_rx_ampdu_factor =
- (enum ieee80211_max_ampdu_length_exp)padapter->driver_rx_ampdu_factor;
+ (enum ieee80211_max_ampdu_length_exp)adapter->driver_rx_ampdu_factor;
else
- rtw_hal_get_def_var(padapter, HW_VAR_MAX_RX_AMPDU_FACTOR,
+ rtw_hal_get_def_var(adapter, HW_VAR_MAX_RX_AMPDU_FACTOR,
&max_rx_ampdu_factor);
ht_capie.ampdu_params_info = (max_rx_ampdu_factor & 0x03);
- if (padapter->securitypriv.dot11_privacy_algrthm == _AES_)
+ if (adapter->securitypriv.dot11_privacy_algrthm == _AES_)
ht_capie.ampdu_params_info |= (IEEE80211_HT_CAP_AMPDU_DENSITY & (0x07 << 2));
else
ht_capie.ampdu_params_info |= (IEEE80211_HT_CAP_AMPDU_DENSITY & 0x00);
@@ -2359,7 +2355,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_
rtw_set_ie(out_ie + out_len, WLAN_EID_HT_CAPABILITY,
sizeof(struct ieee80211_ht_cap), (unsigned char *)&ht_capie, pout_len);
- phtpriv->ht_option = true;
+ ht_priv->ht_option = true;
if (in_ie) {
p = rtw_get_ie(in_ie, WLAN_EID_HT_OPERATION, &ielen, in_len);
@@ -2369,31 +2365,31 @@ unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 *out_
}
}
- return phtpriv->ht_option;
+ return ht_priv->ht_option;
}
/* the function is > passive_level (in critical_section) */
-void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channel)
+void rtw_update_ht_cap(struct adapter *adapter, u8 *pie, uint ie_len, u8 channel)
{
u8 *p, max_ampdu_sz;
int len;
struct ieee80211_ht_cap *pht_capie;
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct ht_priv *phtpriv = &pmlmepriv->htpriv;
- struct registry_priv *pregistrypriv = &padapter->registrypriv;
- struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct ht_priv *ht_priv = &mlme_priv->htpriv;
+ struct registry_priv *registry_priv = &adapter->registrypriv;
+ struct mlme_ext_priv *pmlmeext = &adapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
u8 cbw40_enable = 0;
- if (!phtpriv->ht_option)
+ if (!ht_priv->ht_option)
return;
if ((!pmlmeinfo->HT_info_enable) || (!pmlmeinfo->HT_caps_enable))
return;
/* maybe needs check if ap supports rx ampdu. */
- if (!(phtpriv->ampdu_enable) && pregistrypriv->ampdu_enable == 1)
- phtpriv->ampdu_enable = true;
+ if (!(ht_priv->ampdu_enable) && registry_priv->ampdu_enable == 1)
+ ht_priv->ampdu_enable = true;
/* check Max Rx A-MPDU Size */
len = 0;
@@ -2403,7 +2399,7 @@ void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channe
max_ampdu_sz = (pht_capie->ampdu_params_info & IEEE80211_HT_CAP_AMPDU_FACTOR);
max_ampdu_sz = 1 << (max_ampdu_sz + 3); /* max_ampdu_sz (kbytes); */
- phtpriv->rx_ampdu_maxlen = max_ampdu_sz;
+ ht_priv->rx_ampdu_maxlen = max_ampdu_sz;
}
len = 0;
@@ -2412,7 +2408,7 @@ void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channe
/* todo: */
}
- if ((pregistrypriv->bw_mode & 0x0f) > 0)
+ if ((registry_priv->bw_mode & 0x0f) > 0)
cbw40_enable = 1;
/* update cur_bwmode & cur_ch_offset */
@@ -2445,34 +2441,30 @@ void rtw_update_ht_cap(struct adapter *padapter, u8 *pie, uint ie_len, u8 channe
}
}
- /* */
/* Config SM Power Save setting */
- /* */
pmlmeinfo->SM_PS =
(le16_to_cpu(pmlmeinfo->HT_caps.u.HT_cap_element.HT_caps_info) &
0x0C) >> 2;
- /* */
/* Config current HT Protection mode. */
- /* */
pmlmeinfo->HT_protection = pmlmeinfo->HT_info.infos[1] & 0x3;
}
-void rtw_issue_addbareq_cmd(struct adapter *padapter, struct xmit_frame *pxmitframe)
+void rtw_issue_addbareq_cmd(struct adapter *adapter, struct xmit_frame *pxmitframe)
{
u8 issued;
int priority;
struct sta_info *psta;
- struct ht_priv *phtpriv;
+ struct ht_priv *ht_priv;
struct pkt_attrib *pattrib = &pxmitframe->attrib;
s32 bmcst = is_multicast_ether_addr(pattrib->ra);
- if (bmcst || (padapter->mlmepriv.link_detect_info.num_tx_ok_in_period < 100))
+ if (bmcst || (adapter->mlmepriv.link_detect_info.num_tx_ok_in_period < 100))
return;
priority = pattrib->priority;
- psta = rtw_get_stainfo(&padapter->stapriv, pattrib->ra);
+ psta = rtw_get_stainfo(&adapter->stapriv, pattrib->ra);
if (pattrib->psta != psta)
return;
@@ -2482,26 +2474,26 @@ void rtw_issue_addbareq_cmd(struct adapter *padapter, struct xmit_frame *pxmitfr
if (!(psta->state & _FW_LINKED))
return;
- phtpriv = &psta->htpriv;
+ ht_priv = &psta->htpriv;
- if (phtpriv->ht_option && phtpriv->ampdu_enable) {
- issued = (phtpriv->agg_enable_bitmap >> priority) & 0x1;
- issued |= (phtpriv->candidate_tid_bitmap >> priority) & 0x1;
+ if (ht_priv->ht_option && ht_priv->ampdu_enable) {
+ issued = (ht_priv->agg_enable_bitmap >> priority) & 0x1;
+ issued |= (ht_priv->candidate_tid_bitmap >> priority) & 0x1;
if (issued == 0) {
psta->htpriv.candidate_tid_bitmap |= BIT((u8)priority);
- rtw_addbareq_cmd(padapter, (u8) priority, pattrib->ra);
+ rtw_addbareq_cmd(adapter, (u8) priority, pattrib->ra);
}
}
}
-void rtw_append_exented_cap(struct adapter *padapter, u8 *out_ie, uint *pout_len)
+void rtw_append_exented_cap(struct adapter *adapter, u8 *out_ie, uint *pout_len)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct ht_priv *phtpriv = &pmlmepriv->htpriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct ht_priv *ht_priv = &mlme_priv->htpriv;
u8 cap_content[8] = {0};
- if (phtpriv->bss_coexist)
+ if (ht_priv->bss_coexist)
SET_EXT_CAPABILITY_ELE_BSS_COEXIST(cap_content, 1);
rtw_set_ie(out_ie + *pout_len, WLAN_EID_EXT_CAPABILITY, 8, cap_content, pout_len);
@@ -2525,43 +2517,43 @@ inline u8 rtw_to_roam(struct adapter *adapter)
return adapter->mlmepriv.to_roam;
}
-void rtw_roaming(struct adapter *padapter, struct wlan_network *tgt_network)
+void rtw_roaming(struct adapter *adapter, struct wlan_network *tgt_network)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
- spin_lock_bh(&pmlmepriv->lock);
- _rtw_roaming(padapter, tgt_network);
- spin_unlock_bh(&pmlmepriv->lock);
+ spin_lock_bh(&mlme_priv->lock);
+ _rtw_roaming(adapter, tgt_network);
+ spin_unlock_bh(&mlme_priv->lock);
}
-void _rtw_roaming(struct adapter *padapter, struct wlan_network *tgt_network)
+void _rtw_roaming(struct adapter *adapter, struct wlan_network *tgt_network)
{
- struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct wlan_network *cur_network = &pmlmepriv->cur_network;
+ struct mlme_priv *mlme_priv = &adapter->mlmepriv;
+ struct wlan_network *cur_network = &mlme_priv->cur_network;
- if (rtw_to_roam(padapter) > 0) {
- memcpy(&pmlmepriv->assoc_ssid, &cur_network->network.ssid, sizeof(struct ndis_802_11_ssid));
+ if (rtw_to_roam(adapter) > 0) {
+ memcpy(&mlme_priv->assoc_ssid, &cur_network->network.ssid, sizeof(struct ndis_802_11_ssid));
- pmlmepriv->assoc_by_bssid = false;
+ mlme_priv->assoc_by_bssid = false;
- while (rtw_do_join(padapter) != _SUCCESS) {
- rtw_dec_to_roam(padapter);
- if (rtw_to_roam(padapter) <= 0) {
- rtw_indicate_disconnect(padapter);
+ while (rtw_do_join(adapter) != _SUCCESS) {
+ rtw_dec_to_roam(adapter);
+ if (rtw_to_roam(adapter) <= 0) {
+ rtw_indicate_disconnect(adapter);
break;
}
}
}
}
-bool rtw_linked_check(struct adapter *padapter)
+bool rtw_linked_check(struct adapter *adapter)
{
- if (check_fwstate(&padapter->mlmepriv, WIFI_AP_STATE) ||
- check_fwstate(&padapter->mlmepriv, WIFI_ADHOC_STATE | WIFI_ADHOC_MASTER_STATE)) {
- if (padapter->stapriv.asoc_sta_count > 2)
+ if (check_fwstate(&adapter->mlmepriv, WIFI_AP_STATE) ||
+ check_fwstate(&adapter->mlmepriv, WIFI_ADHOC_STATE | WIFI_ADHOC_MASTER_STATE)) {
+ if (adapter->stapriv.asoc_sta_count > 2)
return true;
} else { /* Station mode */
- if (check_fwstate(&padapter->mlmepriv, _FW_LINKED))
+ if (check_fwstate(&adapter->mlmepriv, _FW_LINKED))
return true;
}
return false;
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index e965133d94ab..80194796a9f7 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -356,9 +356,9 @@ static u8 init_channel_set(struct adapter *padapter, u8 ChannelPlan, struct rt_c
channel_set[chanset_size].scan_type = SCAN_ACTIVE;
else
channel_set[chanset_size].scan_type = SCAN_PASSIVE;
- } else
+ } else {
channel_set[chanset_size].scan_type = SCAN_ACTIVE;
-
+ }
chanset_size++;
}
}
@@ -384,8 +384,6 @@ void init_mlme_ext_priv(struct adapter *padapter)
pmlmeext->padapter = padapter;
- /* fill_fwpriv(padapter, &(pmlmeext->fwpriv)); */
-
init_mlme_ext_priv_value(padapter);
pmlmeinfo->accept_addba_req = pregistrypriv->accept_addba_req;
@@ -411,7 +409,6 @@ void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext)
if (padapter->driver_stopped) {
timer_delete_sync(&pmlmeext->survey_timer);
timer_delete_sync(&pmlmeext->link_timer);
- /* timer_delete_sync(&pmlmeext->ADDBA_timer); */
}
}
@@ -483,7 +480,6 @@ void mgt_dispatcher(struct adapter *padapter, union recv_frame *precv_frame)
_mgt_dispatcher(padapter, ptable, precv_frame);
break;
case WIFI_ACTION:
- /* if (check_fwstate(pmlmepriv, WIFI_AP_STATE) == true) */
_mgt_dispatcher(padapter, ptable, precv_frame);
break;
default:
@@ -743,9 +739,6 @@ unsigned int OnAuth(struct adapter *padapter, union recv_frame *precv_frame)
pstat->state = WIFI_FW_AUTH_NULL;
pstat->auth_seq = 0;
-
- /* pstat->flags = 0; */
- /* pstat->capability = 0; */
} else {
spin_lock_bh(&pstapriv->asoc_list_lock);
if (!list_empty(&pstat->asoc_list)) {
@@ -872,7 +865,6 @@ unsigned int OnAuthClient(struct adapter *padapter, union recv_frame *precv_fram
pmlmeinfo->auth_algo = dot11_auth_algrthm_open;
else
pmlmeinfo->auth_algo = dot11_auth_algrthm_shared;
- /* pmlmeinfo->reauth_count = 0; */
}
set_link_timer(pmlmeext, 1);
@@ -915,8 +907,6 @@ unsigned int OnAuthClient(struct adapter *padapter, union recv_frame *precv_fram
authclnt_fail:
- /* pmlmeinfo->state &= ~(WIFI_FW_AUTH_STATE); */
-
return _FAIL;
}
@@ -961,7 +951,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
}
capab_info = get_unaligned_le16(pframe + WLAN_HDR_A3_LEN);
- /* capab_info = le16_to_cpu(*(unsigned short *)(pframe + WLAN_HDR_A3_LEN)); */
left = pkt_len - (sizeof(struct ieee80211_hdr_3addr) + ie_offset);
pos = pframe + (sizeof(struct ieee80211_hdr_3addr) + ie_offset);
@@ -1013,10 +1002,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
/* check if the supported rate is ok */
p = rtw_get_ie(pframe + WLAN_HDR_A3_LEN + ie_offset, WLAN_EID_SUPP_RATES, &ie_len, pkt_len - WLAN_HDR_A3_LEN - ie_offset);
if (!p) {
- /* use our own rate set as statoin used */
- /* memcpy(supportRate, AP_BSSRATE, AP_BSSRATE_LEN); */
- /* support_rate_num = AP_BSSRATE_LEN; */
-
status = WLAN_STATUS_CHALLENGE_FAIL;
goto OnAssocReqFail;
} else {
@@ -1037,7 +1022,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
}
/* todo: mask supportRate between AP & STA -> move to update raid */
- /* get_matched_rate(pmlmeext, supportRate, &support_rate_num, 0); */
/* update station supportRate */
pstat->bssratelen = support_rate_num;
@@ -1221,8 +1205,9 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
memcpy(&pstat->htpriv.ht_cap, elems.ht_capabilities, sizeof(struct ieee80211_ht_cap));
- } else
+ } else {
pstat->flags &= ~WLAN_STA_HT;
+ }
if (!pmlmepriv->htpriv.ht_option && (pstat->flags & WLAN_STA_HT)) {
status = WLAN_STATUS_CHALLENGE_FAIL;
@@ -1232,8 +1217,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
if ((pstat->flags & WLAN_STA_HT) &&
((pstat->wpa2_pairwise_cipher & WPA_CIPHER_TKIP) ||
(pstat->wpa_pairwise_cipher & WPA_CIPHER_TKIP))) {
- /* status = WLAN_STATUS_CIPHER_SUITE_REJECTED; */
- /* goto OnAssocReqFail; */
}
pstat->flags |= WLAN_STA_NONERP;
for (i = 0; i < pstat->bssratelen; i++) {
@@ -1260,7 +1243,6 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
if (!pstapriv->sta_aid[pstat->aid - 1])
break;
- /* if (pstat->aid > NUM_STA) { */
if (pstat->aid > pstapriv->max_num_sta) {
pstat->aid = 0;
@@ -1344,7 +1326,6 @@ unsigned int OnAssocRsp(struct adapter *padapter, union recv_frame *precv_frame)
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
- /* struct wlan_bssid_ex *cur_network = &(pmlmeinfo->network); */
u8 *pframe = precv_frame->u.hdr.rx_data;
uint pkt_len = precv_frame->u.hdr.len;
@@ -1449,8 +1430,6 @@ unsigned int OnDeAuth(struct adapter *padapter, union recv_frame *precv_frame)
struct sta_info *psta;
struct sta_priv *pstapriv = &padapter->stapriv;
- /* rtw_free_stainfo(padapter, psta); */
-
netdev_dbg(padapter->pnetdev,
"ap recv deauth reason code(%d) sta:%pM\n", reason,
GetAddr2Ptr(pframe));
@@ -1519,8 +1498,6 @@ unsigned int OnDisassoc(struct adapter *padapter, union recv_frame *precv_frame)
struct sta_info *psta;
struct sta_priv *pstapriv = &padapter->stapriv;
- /* rtw_free_stainfo(padapter, psta); */
-
netdev_dbg(padapter->pnetdev,
"ap recv disassoc reason code(%d) sta:%pM\n",
reason, GetAddr2Ptr(pframe));
@@ -1630,7 +1607,6 @@ unsigned int OnAction_back(struct adapter *padapter, union recv_frame *precv_fra
case WLAN_ACTION_ADDBA_REQ: /* ADDBA request */
memcpy(&(pmlmeinfo->ADDBA_req), &(frame_body[2]), sizeof(struct ADDBA_request));
- /* process_addba_req(padapter, (u8 *)&(pmlmeinfo->ADDBA_req), GetAddr3Ptr(pframe)); */
process_addba_req(padapter, (u8 *)&(pmlmeinfo->ADDBA_req), addr);
if (pmlmeinfo->accept_addba_req)
@@ -1915,8 +1891,6 @@ void update_mgntframe_attrib(struct adapter *padapter, struct pkt_attrib *pattri
u8 wireless_mode;
struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
- /* memset((u8 *)(pattrib), 0, sizeof(struct pkt_attrib)); */
-
pattrib->hdrlen = 24;
pattrib->nr_frags = 1;
pattrib->priority = 7;
@@ -1971,9 +1945,8 @@ void dump_mgntframe(struct adapter *padapter, struct xmit_frame *pmgntframe)
rtw_hal_mgnt_xmit(padapter, pmgntframe);
}
-s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntframe, int timeout_ms)
+void dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntframe, int timeout_ms)
{
- s32 ret = _FAIL;
unsigned long irqL;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct xmit_buf *pxmitbuf = pmgntframe->pxmitbuf;
@@ -1983,22 +1956,18 @@ s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntfr
padapter->driver_stopped) {
rtw_free_xmitbuf(&padapter->xmitpriv, pmgntframe->pxmitbuf);
rtw_free_xmitframe(&padapter->xmitpriv, pmgntframe);
- return ret;
+ return;
}
rtw_sctx_init(&sctx, timeout_ms);
pxmitbuf->sctx = &sctx;
- ret = rtw_hal_mgnt_xmit(padapter, pmgntframe);
-
- if (ret == _SUCCESS)
- ret = rtw_sctx_wait(&sctx);
+ if (!rtw_hal_mgnt_xmit(padapter, pmgntframe))
+ rtw_sctx_wait(&sctx);
spin_lock_irqsave(&pxmitpriv->lock_sctx, irqL);
pxmitbuf->sctx = NULL;
spin_unlock_irqrestore(&pxmitpriv->lock_sctx, irqL);
-
- return ret;
}
s32 dump_mgntframe_and_wait_ack(struct adapter *padapter, struct xmit_frame *pmgntframe)
@@ -2101,7 +2070,6 @@ void issue_beacon(struct adapter *padapter, int timeout_ms)
memcpy(pwlanhdr->addr3, get_my_bssid(cur_network), ETH_ALEN);
SetSeqNum(pwlanhdr, 0/*pmlmeext->mgnt_seq*/);
- /* pmlmeext->mgnt_seq++; */
SetFrameSubType(pframe, WIFI_BEACON);
pframe += sizeof(struct ieee80211_hdr_3addr);
@@ -2176,7 +2144,6 @@ void issue_beacon(struct adapter *padapter, int timeout_ms)
u8 erpinfo = 0;
u32 ATIMWindow;
/* IBSS Parameter Set... */
- /* ATIMWindow = cur->configuration.ATIMWindow; */
ATIMWindow = 0;
pframe = rtw_set_ie(pframe, WLAN_EID_IBSS_PARAMS, 2, (unsigned char *)(&ATIMWindow), &pattrib->pktlen);
@@ -2386,7 +2353,6 @@ void issue_probersp(struct adapter *padapter, unsigned char *da, u8 is_valid_p2p
u8 erpinfo = 0;
u32 ATIMWindow;
/* IBSS Parameter Set... */
- /* ATIMWindow = cur->configuration.ATIMWindow; */
ATIMWindow = 0;
pframe = rtw_set_ie(pframe, WLAN_EID_IBSS_PARAMS, 2, (unsigned char *)(&ATIMWindow), &pattrib->pktlen);
@@ -2406,11 +2372,9 @@ void issue_probersp(struct adapter *padapter, unsigned char *da, u8 is_valid_p2p
dump_mgntframe(padapter, pmgntframe);
}
-static int _issue_probereq(struct adapter *padapter,
- struct ndis_802_11_ssid *pssid,
- u8 *da, u8 ch, bool append_wps, bool wait_ack)
+static void issue_probereq(struct adapter *padapter, struct ndis_802_11_ssid *pssid, u8 *da,
+ bool append_wps)
{
- int ret = _FAIL;
struct xmit_frame *pmgntframe;
struct pkt_attrib *pattrib;
unsigned char *pframe;
@@ -2425,7 +2389,7 @@ static int _issue_probereq(struct adapter *padapter,
pmgntframe = alloc_mgtxmitframe(pxmitpriv);
if (!pmgntframe)
- goto exit;
+ return;
/* update attribute */
pattrib = &pmgntframe->attrib;
@@ -2474,9 +2438,6 @@ static int _issue_probereq(struct adapter *padapter,
pframe = rtw_set_ie(pframe, WLAN_EID_SUPP_RATES, bssrate_len, bssrate, &(pattrib->pktlen));
}
- if (ch)
- pframe = rtw_set_ie(pframe, WLAN_EID_DS_PARAMS, 1, &ch, &pattrib->pktlen);
-
if (append_wps) {
/* add wps_ie for wps2.0 */
if (pmlmepriv->wps_probe_req_ie_len > 0 && pmlmepriv->wps_probe_req_ie) {
@@ -2488,51 +2449,7 @@ static int _issue_probereq(struct adapter *padapter,
pattrib->last_txcmdsz = pattrib->pktlen;
- if (wait_ack) {
- ret = dump_mgntframe_and_wait_ack(padapter, pmgntframe);
- } else {
- dump_mgntframe(padapter, pmgntframe);
- ret = _SUCCESS;
- }
-
-exit:
- return ret;
-}
-
-inline void issue_probereq(struct adapter *padapter, struct ndis_802_11_ssid *pssid, u8 *da)
-{
- _issue_probereq(padapter, pssid, da, 0, 1, false);
-}
-
-int issue_probereq_ex(struct adapter *padapter, struct ndis_802_11_ssid *pssid, u8 *da, u8 ch, bool append_wps,
- int try_cnt, int wait_ms)
-{
- int ret;
- int i = 0;
-
- do {
- ret = _issue_probereq(padapter, pssid, da, ch, append_wps,
- wait_ms > 0);
-
- i++;
-
- if (padapter->driver_stopped || padapter->bSurpriseRemoved)
- break;
-
- if (i < try_cnt && wait_ms > 0 && ret == _FAIL)
- msleep(wait_ms);
-
- } while ((i < try_cnt) && ((ret == _FAIL) || (wait_ms == 0)));
-
- if (ret != _FAIL) {
- ret = _SUCCESS;
- #ifndef DBG_XMIT_ACK
- goto exit;
- #endif
- }
-
-exit:
- return ret;
+ dump_mgntframe(padapter, pmgntframe);
}
/* if psta == NULL, indicate we are station(client) now... */
@@ -2733,7 +2650,6 @@ void issue_asocrsp(struct adapter *padapter, unsigned short status, struct sta_i
uint ie_len = 0;
/* FILL HT CAP INFO IE */
- /* p = hostapd_eid_ht_capabilities_info(hapd, p); */
pbuf = rtw_get_ie(ie + _BEACON_IE_OFFSET_, WLAN_EID_HT_CAPABILITY, &ie_len, (pnetwork->ie_length - _BEACON_IE_OFFSET_));
if (pbuf && ie_len > 0) {
memcpy(pframe, pbuf, ie_len + 2);
@@ -2742,7 +2658,6 @@ void issue_asocrsp(struct adapter *padapter, unsigned short status, struct sta_i
}
/* FILL HT ADD INFO IE */
- /* p = hostapd_eid_ht_operation(hapd, p); */
pbuf = rtw_get_ie(ie + _BEACON_IE_OFFSET_, WLAN_EID_HT_OPERATION, &ie_len, (pnetwork->ie_length - _BEACON_IE_OFFSET_));
if (pbuf && ie_len > 0) {
memcpy(pframe, pbuf, ie_len + 2);
@@ -2856,9 +2771,6 @@ void issue_assocreq(struct adapter *padapter)
if (pmlmeext->cur_channel == 14) /* for JAPAN, channel 14 can only uses B Mode(CCK) */
sta_bssrate_len = 4;
- /* for (i = 0; i < sta_bssrate_len; i++) { */
- /* */
-
for (i = 0; i < NDIS_802_11_LENGTH_RATES_EX; i++) {
if (pmlmeinfo->network.supported_rates[i] == 0)
break;
@@ -2892,9 +2804,9 @@ void issue_assocreq(struct adapter *padapter)
if (bssrate_len > 8) {
pframe = rtw_set_ie(pframe, WLAN_EID_SUPP_RATES, 8, bssrate, &(pattrib->pktlen));
pframe = rtw_set_ie(pframe, WLAN_EID_EXT_SUPP_RATES, (bssrate_len - 8), (bssrate + 8), &(pattrib->pktlen));
- } else
+ } else {
pframe = rtw_set_ie(pframe, WLAN_EID_SUPP_RATES, bssrate_len, bssrate, &(pattrib->pktlen));
-
+ }
/* vendor specific IE, such as WPA, WMM, WPS */
for (i = sizeof(struct ndis_802_11_fix_ie); i < pmlmeinfo->network.ie_length;) {
if (i + sizeof(*pIE) > pmlmeinfo->network.ie_length)
@@ -3413,7 +3325,6 @@ void issue_action_BA(struct adapter *padapter, unsigned char *raddr, unsigned ch
fctrl = &(pwlanhdr->frame_control);
*(fctrl) = 0;
- /* memcpy(pwlanhdr->addr1, get_my_bssid(&(pmlmeinfo->network)), ETH_ALEN); */
memcpy(pwlanhdr->addr1, raddr, ETH_ALEN);
memcpy(pwlanhdr->addr2, myid(&(padapter->eeprompriv)), ETH_ALEN);
memcpy(pwlanhdr->addr3, get_my_bssid(&(pmlmeinfo->network)), ETH_ALEN);
@@ -3455,7 +3366,6 @@ void issue_action_BA(struct adapter *padapter, unsigned char *raddr, unsigned ch
le_tmp = cpu_to_le16(BA_timeout_value);
pframe = rtw_set_fixed_ie(pframe, 2, (unsigned char *)(&(le_tmp)), &(pattrib->pktlen));
- /* if ((psta = rtw_get_stainfo(pstapriv, pmlmeinfo->network.mac_address)) != NULL) */
psta = rtw_get_stainfo(pstapriv, raddr);
if (psta) {
start_seq = (psta->sta_xmitpriv.txseq_tid[status & 0x07] % 4096u) + 1;
@@ -3583,7 +3493,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
pframe = rtw_set_fixed_ie(pframe, 1, &(category), &(pattrib->pktlen));
pframe = rtw_set_fixed_ie(pframe, 1, &(action), &(pattrib->pktlen));
- /* */
if (pmlmepriv->num_FortyMHzIntolerant > 0) {
u8 iedata = 0;
@@ -3592,7 +3501,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
pframe = rtw_set_ie(pframe, WLAN_EID_BSS_COEX_2040, 1, &iedata, &(pattrib->pktlen));
}
- /* */
memset(ICS, 0, sizeof(ICS));
if (pmlmepriv->num_sta_no_ht > 0) {
int i;
@@ -3638,7 +3546,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
continue;
InfoContent[k] = i;
- /* SET_BSS_INTOLERANT_ELE_REG_CLASS(InfoContent, i); */
k++;
for (j = 1; j <= 14; j++) {
@@ -3647,7 +3554,6 @@ static void issue_action_BSSCoexistPacket(struct adapter *padapter)
if (k < 16) {
InfoContent[k] = j; /* channel number */
- /* SET_BSS_INTOLERANT_ELE_CHANNEL(InfoContent+k, j); */
k++;
}
}
@@ -3665,7 +3571,6 @@ unsigned int send_delba(struct adapter *padapter, u8 initiator, u8 *addr)
{
struct sta_priv *pstapriv = &padapter->stapriv;
struct sta_info *psta = NULL;
- /* struct recv_reorder_ctrl *preorder_ctrl; */
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
u16 tid;
@@ -3771,20 +3676,25 @@ void site_survey(struct adapter *padapter)
/* IOT issue, When wifi_spec is not set, send one probe req without WPS IE. */
if (padapter->registrypriv.wifi_spec)
- issue_probereq(padapter, &(pmlmeext->sitesurvey_res.ssid[i]), NULL);
+ issue_probereq(padapter,
+ &pmlmeext->sitesurvey_res.ssid[i],
+ NULL, true);
else
- issue_probereq_ex(padapter, &(pmlmeext->sitesurvey_res.ssid[i]), NULL, 0, 0, 0, 0);
+ issue_probereq(padapter,
+ &pmlmeext->sitesurvey_res.ssid[i],
+ NULL, false);
- issue_probereq(padapter, &(pmlmeext->sitesurvey_res.ssid[i]), NULL);
+ issue_probereq(padapter, &pmlmeext->sitesurvey_res.ssid[i],
+ NULL, true);
}
if (pmlmeext->sitesurvey_res.scan_mode == SCAN_ACTIVE) {
/* IOT issue, When wifi_spec is not set, send one probe req without WPS IE. */
if (padapter->registrypriv.wifi_spec)
- issue_probereq(padapter, NULL, NULL);
+ issue_probereq(padapter, NULL, NULL, true);
else
- issue_probereq_ex(padapter, NULL, NULL, 0, 0, 0, 0);
- issue_probereq(padapter, NULL, NULL);
+ issue_probereq(padapter, NULL, NULL, false);
+ issue_probereq(padapter, NULL, NULL, true);
}
}
}
@@ -3798,15 +3708,8 @@ void site_survey(struct adapter *padapter)
{
pmlmeext->sitesurvey_res.state = SCAN_COMPLETE;
- /* switch back to the original channel */
- /* SelectChannel(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset); */
-
set_channel_bwmode(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset, pmlmeext->cur_bwmode);
- /* flush 4-AC Queue after site_survey */
- /* val8 = 0; */
- /* rtw_hal_set_hwreg(padapter, HW_VAR_TXPAUSE, (u8 *)(&val8)); */
-
/* config MSR */
set_msr(padapter, (pmlmeinfo->state & 0x3));
@@ -3814,7 +3717,6 @@ void site_survey(struct adapter *padapter)
rtw_hal_set_hwreg(padapter, HW_VAR_INITIAL_GAIN, (u8 *)(&initialgain));
/* turn on dynamic functions */
restore_dm_func_flag(padapter);
- /* switch_dm_func(padapter, DYNAMIC_ALL_FUNC_ENABLE, true); */
if (is_client_associated_to_ap(padapter))
issue_nulldata(padapter, NULL, 0, 3, 500);
@@ -3897,9 +3799,9 @@ u8 collect_bss_info(struct adapter *padapter, union recv_frame *precv_frame, str
memcpy(bssid->ssid.ssid, (p + 2), *(p + 1));
bssid->ssid.ssid_length = *(p + 1);
- } else
+ } else {
bssid->ssid.ssid_length = 0;
-
+ }
memset(bssid->supported_rates, 0, NDIS_802_11_LENGTH_RATES_EX);
/* checking rate info... */
@@ -3977,8 +3879,9 @@ u8 collect_bss_info(struct adapter *padapter, union recv_frame *precv_frame, str
if (le16_to_cpu(pHT_caps->u.HT_cap_element.HT_caps_info) & BIT(14))
pmlmepriv->num_FortyMHzIntolerant++;
- } else
+ } else {
pmlmepriv->num_sta_no_ht++;
+ }
}
/* mark bss info receiving from nearby channel as signal_quality 101 */
@@ -4011,7 +3914,6 @@ void start_create_ibss(struct adapter *padapter)
rtw_hal_set_hwreg(padapter, HW_VAR_SEC_CFG, (u8 *)(&val8));
/* switch channel */
- /* SelectChannel(padapter, pmlmeext->cur_channel, HAL_PRIME_CHNL_OFFSET_DONT_CARE); */
set_channel_bwmode(padapter, pmlmeext->cur_channel, HAL_PRIME_CHNL_OFFSET_DONT_CARE, CHANNEL_WIDTH_20);
beacon_timing_control(padapter);
@@ -4308,8 +4210,6 @@ void report_survey_event(struct adapter *padapter, union recv_frame *precv_frame
struct C2HEvent_Header *pc2h_evt_hdr;
struct mlme_ext_priv *pmlmeext;
struct cmd_priv *pcmdpriv;
- /* u8 *pframe = precv_frame->u.hdr.rx_data; */
- /* uint len = precv_frame->u.hdr.len; */
if (!padapter)
return;
@@ -4648,8 +4548,6 @@ static void rtw_mlmeext_disconnect(struct adapter *padapter)
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
struct wlan_bssid_ex *pnetwork = (struct wlan_bssid_ex *)(&(pmlmeinfo->network));
- /* set_opmode_cmd(padapter, infra_client_with_mlme); */
-
/* For safety, prevent from keeping macid sleep.
* If we can sure all power mode enter/leave are paired,
* this check can be removed.
@@ -4755,8 +4653,6 @@ void mlmeext_joinbss_event_callback(struct adapter *padapter, int join_res)
if ((pmlmeinfo->state & 0x03) == WIFI_FW_STATION_STATE) {
/* correcting TSF */
correct_TSF(padapter, pmlmeext);
-
- /* set_link_timer(pmlmeext, DISCONNECT_TO); */
}
rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_CONNECT, 0);
@@ -4774,9 +4670,6 @@ void mlmeext_sta_add_event_callback(struct adapter *padapter, struct sta_info *p
/* nothing to do */
} else { /* adhoc client */
- /* update TSF Value */
- /* update_TSF(pmlmeext, pframe, len); */
-
/* correcting TSF */
correct_TSF(padapter, pmlmeext);
@@ -4902,18 +4795,18 @@ void linked_status_chk(struct adapter *padapter)
{
if (rx_chk != _SUCCESS) {
if (pmlmeext->retry == 0) {
- issue_probereq_ex(padapter,
- &pmlmeinfo->network.ssid,
- pmlmeinfo->network.mac_address,
- 0, 0, 0, 0);
- issue_probereq_ex(padapter,
- &pmlmeinfo->network.ssid,
- pmlmeinfo->network.mac_address,
- 0, 0, 0, 0);
- issue_probereq_ex(padapter,
- &pmlmeinfo->network.ssid,
- pmlmeinfo->network.mac_address,
- 0, 0, 0, 0);
+ issue_probereq(padapter,
+ &pmlmeinfo->network.ssid,
+ pmlmeinfo->network.mac_address,
+ false);
+ issue_probereq(padapter,
+ &pmlmeinfo->network.ssid,
+ pmlmeinfo->network.mac_address,
+ false);
+ issue_probereq(padapter,
+ &pmlmeinfo->network.ssid,
+ pmlmeinfo->network.mac_address,
+ false);
}
}
@@ -4970,8 +4863,6 @@ void linked_status_chk(struct adapter *padapter)
}
}
}
-
- /* set_link_timer(pmlmeext, DISCONNECT_TO); */
}
}
@@ -5092,7 +4983,6 @@ u8 setopmode_hdl(struct adapter *padapter, u8 *pbuf)
if (psetop->mode == NL80211_IFTYPE_AP) {
pmlmeinfo->state = WIFI_FW_AP_STATE;
type = _HW_STATE_AP_;
- /* start_ap_mode(padapter); */
} else if (psetop->mode == NL80211_IFTYPE_STATION) {
pmlmeinfo->state &= ~(BIT(0) | BIT(1));/* clear state */
pmlmeinfo->state |= WIFI_FW_STATION_STATE;/* set to STATION_STATE */
@@ -5104,7 +4994,6 @@ u8 setopmode_hdl(struct adapter *padapter, u8 *pbuf)
}
rtw_hal_set_hwreg(padapter, HW_VAR_SET_OPMODE, (u8 *)(&type));
- /* set_msr(padapter, type); */
if (psetop->mode == NL80211_IFTYPE_AP) {
/* Do this after port switch to */
@@ -5121,7 +5010,6 @@ u8 createbss_hdl(struct adapter *padapter, u8 *pbuf)
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
struct wlan_bssid_ex *pnetwork = (struct wlan_bssid_ex *)(&(pmlmeinfo->network));
struct joinbss_parm *pparm = (struct joinbss_parm *)pbuf;
- /* u32 initialgain; */
if (pmlmeinfo->state == WIFI_FW_AP_STATE) {
start_bss_network(padapter);
@@ -5146,10 +5034,6 @@ u8 createbss_hdl(struct adapter *padapter, u8 *pbuf)
save_dm_func_flag(padapter);
switch_dm_func(padapter, DYNAMIC_FUNC_DISABLE, false);
- /* config the initial gain under linking, need to write the BB registers */
- /* initialgain = 0x1E; */
- /* rtw_hal_set_hwreg(padapter, HW_VAR_INITIAL_GAIN, (u8 *)(&initialgain)); */
-
/* cancel link timer */
timer_delete_sync(&pmlmeext->link_timer);
@@ -5180,8 +5064,6 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
struct wlan_bssid_ex *pnetwork = (struct wlan_bssid_ex *)(&(pmlmeinfo->network));
u32 i;
u8 cbw40_enable = 0;
- /* u32 initialgain; */
- /* u32 acparm; */
u8 ch, bw, offset;
/* check already connecting to AP or not */
@@ -5196,7 +5078,6 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
timer_delete_sync(&pmlmeext->link_timer);
/* set MSR to nolink -> infra. mode */
- /* set_msr(padapter, _HW_STATE_NOLINK_); */
set_msr(padapter, _HW_STATE_STATION_);
rtw_hal_set_hwreg(padapter, HW_VAR_MLME_DISCONNECT, NULL);
@@ -5214,7 +5095,6 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
pmlmeinfo->agg_enable_bitmap = 0;
pmlmeinfo->candidate_tid_bitmap = 0;
pmlmeinfo->bwmode_updated = false;
- /* pmlmeinfo->assoc_AP_vendor = HT_IOT_PEER_MAX; */
pmlmeinfo->VHT_enable = 0;
memcpy(pnetwork, pbuf, offsetof(struct wlan_bssid_ex, ie_length));
@@ -5228,10 +5108,7 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
pmlmeext->cur_channel = (u8)pnetwork->configuration.ds_config;
pmlmeinfo->bcn_interval = get_beacon_interval(pnetwork);
- /* Check AP vendor to move rtw_joinbss_cmd() */
- /* pmlmeinfo->assoc_AP_vendor = check_assoc_AP(pnetwork->ies, pnetwork->ie_length); */
- /* sizeof(struct ndis_802_11_fix_ie) */
for (i = _FIXED_IE_LENGTH_; i < pnetwork->ie_length;) {
if (i + sizeof(*pIE) > pnetwork->ie_length)
break;
@@ -5294,13 +5171,6 @@ u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf)
return H2C_SUCCESS;
}
- /* disable dynamic functions, such as high power, DIG */
- /* switch_dm_func(padapter, DYNAMIC_FUNC_DISABLE, false); */
-
- /* config the initial gain under linking, need to write the BB registers */
- /* initialgain = 0x1E; */
- /* rtw_hal_set_hwreg(padapter, HW_VAR_INITIAL_GAIN, (u8 *)(&initialgain)); */
-
rtw_hal_set_hwreg(padapter, HW_VAR_BSSID, pmlmeinfo->network.mac_address);
join_type = 0;
rtw_hal_set_hwreg(padapter, HW_VAR_MLME_JOIN, (u8 *)(&join_type));
@@ -5589,11 +5459,7 @@ u8 add_ba_hdl(struct adapter *padapter, unsigned char *pbuf)
if (((pmlmeinfo->state & WIFI_FW_ASSOC_SUCCESS) && (pmlmeinfo->HT_enable)) ||
((pmlmeinfo->state & 0x03) == WIFI_FW_AP_STATE)) {
- /* pmlmeinfo->ADDBA_retry_count = 0; */
- /* pmlmeinfo->candidate_tid_bitmap |= (0x1 << pparm->tid); */
- /* psta->htpriv.candidate_tid_bitmap |= BIT(pparm->tid); */
issue_action_BA(padapter, pparm->addr, WLAN_ACTION_ADDBA_REQ, (u16)pparm->tid);
- /* _set_timer(&pmlmeext->ADDBA_timer, ADDBA_TO); */
_set_timer(&psta->addba_retry_timer, ADDBA_TO);
} else {
psta->htpriv.candidate_tid_bitmap &= ~BIT(pparm->tid);
@@ -5751,7 +5617,6 @@ u8 chk_bmc_sleepq_hdl(struct adapter *padapter, unsigned char *pbuf)
if ((pstapriv->tim_bitmap & BIT(0)) && (psta_bmc->sleepq_len > 0)) {
msleep(10);/* 10ms, ATIM(HIQ) Windows */
- /* spin_lock_bh(&psta_bmc->sleep_q.lock); */
spin_lock_bh(&pxmitpriv->lock);
xmitframe_phead = get_list_head(&psta_bmc->sleep_q);
@@ -5775,7 +5640,6 @@ u8 chk_bmc_sleepq_hdl(struct adapter *padapter, unsigned char *pbuf)
rtw_hal_xmitframe_enqueue(padapter, pxmitframe);
}
- /* spin_unlock_bh(&psta_bmc->sleep_q.lock); */
spin_unlock_bh(&pxmitpriv->lock);
/* check hi queue and bmc_sleepq */
diff --git a/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c b/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c
index 448611ad8237..93a89712489e 100644
--- a/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c
+++ b/drivers/staging/rtl8723bs/core/rtw_pwrctrl.c
@@ -210,7 +210,6 @@ void traffic_check_for_leave_lps(struct adapter *padapter, u8 tx, u32 tx_packets
}
if (bLeaveLPS)
- /* rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_LEAVE, 1); */
rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_LEAVE, tx ? 0 : 1);
}
@@ -501,10 +500,8 @@ void LeaveAllPowerSaveModeDirect(struct adapter *Adapter)
}
}
-/* */
/* Description: Leave all power save mode: LPS, FwLPS, IPS if needed. */
/* Move code to function by tynli. 2010.03.26. */
-/* */
void LeaveAllPowerSaveMode(struct adapter *Adapter)
{
struct dvobj_priv *dvobj = adapter_to_dvobj(Adapter);
diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c b/drivers/staging/rtl8723bs/core/rtw_recv.c
index 7568fc514d7c..381b3e29afaf 100644
--- a/drivers/staging/rtl8723bs/core/rtw_recv.c
+++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
@@ -9,6 +9,7 @@
#include <rtw_recv.h>
#include <net/cfg80211.h>
#include <linux/unaligned.h>
+#include <linux/align.h>
static u8 SNAP_ETH_TYPE_IPX[2] = {0x81, 0x37};
static u8 SNAP_ETH_TYPE_APPLETALK_AARP[2] = {0x80, 0xf3};
@@ -29,7 +30,7 @@ signed int _rtw_init_recv_priv(struct recv_priv *precvpriv, struct adapter *pada
{
signed int i;
union recv_frame *precvframe;
- signed int res = _SUCCESS;
+ signed int res = _SUCCESS;
spin_lock_init(&precvpriv->lock);
@@ -52,9 +53,7 @@ signed int _rtw_init_recv_priv(struct recv_priv *precvpriv, struct adapter *pada
goto exit;
}
- precvpriv->precv_frame_buf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(precvpriv->pallocated_frame_buf), RXFRAME_ALIGN_SZ);
- /* precvpriv->precv_frame_buf = precvpriv->pallocated_frame_buf + RXFRAME_ALIGN_SZ - */
- /* ((SIZE_PTR) (precvpriv->pallocated_frame_buf) &(RXFRAME_ALIGN_SZ-1)); */
+ precvpriv->precv_frame_buf = PTR_ALIGN(precvpriv->pallocated_frame_buf, RXFRAME_ALIGN_SZ);
precvframe = (union recv_frame *)precvpriv->precv_frame_buf;
@@ -89,7 +88,7 @@ void _rtw_free_recv_priv(struct recv_priv *precvpriv)
{
signed int i;
union recv_frame *precvframe;
- struct adapter *padapter = precvpriv->adapter;
+ struct adapter *padapter = precvpriv->adapter;
rtw_free_uc_swdec_pending_queue(padapter);
@@ -111,8 +110,8 @@ void _rtw_free_recv_priv(struct recv_priv *precvpriv)
union recv_frame *_rtw_alloc_recvframe(struct __queue *pfree_recv_queue)
{
- union recv_frame *precvframe;
- struct list_head *plist, *phead;
+ union recv_frame *precvframe;
+ struct list_head *plist, *phead;
struct adapter *padapter;
struct recv_priv *precvpriv;
@@ -138,7 +137,7 @@ union recv_frame *_rtw_alloc_recvframe(struct __queue *pfree_recv_queue)
union recv_frame *rtw_alloc_recvframe(struct __queue *pfree_recv_queue)
{
- union recv_frame *precvframe;
+ union recv_frame *precvframe;
spin_lock_bh(&pfree_recv_queue->lock);
@@ -180,7 +179,6 @@ signed int _rtw_enqueue_recvframe(union recv_frame *precvframe, struct __queue *
struct adapter *padapter = precvframe->u.hdr.adapter;
struct recv_priv *precvpriv = &padapter->recvpriv;
- /* INIT_LIST_HEAD(&(precvframe->u.hdr.list)); */
list_del_init(&(precvframe->u.hdr.list));
list_add_tail(&(precvframe->u.hdr.list), get_list_head(queue));
@@ -196,10 +194,8 @@ signed int rtw_enqueue_recvframe(union recv_frame *precvframe, struct __queue *q
{
signed int ret;
- /* _spinlock(&pfree_recv_queue->lock); */
spin_lock_bh(&queue->lock);
ret = _rtw_enqueue_recvframe(precvframe, queue);
- /* spin_unlock(&pfree_recv_queue->lock); */
spin_unlock_bh(&queue->lock);
return ret;
@@ -213,10 +209,10 @@ signed int rtw_enqueue_recvframe(union recv_frame *precvframe, struct __queue *q
*
*/
-void rtw_free_recvframe_queue(struct __queue *pframequeue, struct __queue *pfree_recv_queue)
+void rtw_free_recvframe_queue(struct __queue *pframequeue, struct __queue *pfree_recv_queue)
{
- union recv_frame *precvframe;
- struct list_head *plist, *phead;
+ union recv_frame *precvframe;
+ struct list_head *plist, *phead;
spin_lock(&pframequeue->lock);
@@ -273,7 +269,7 @@ signed int rtw_enqueue_recvbuf(struct recv_buf *precvbuf, struct __queue *queue)
struct recv_buf *rtw_dequeue_recvbuf(struct __queue *queue)
{
struct recv_buf *precvbuf;
- struct list_head *plist, *phead;
+ struct list_head *plist, *phead;
spin_lock_bh(&queue->lock);
@@ -298,7 +294,7 @@ static void rtw_handle_tkip_mic_err(struct adapter *padapter, u8 bgroup)
{
enum nl80211_key_type key_type = 0;
union iwreq_data wrqu;
- struct iw_michaelmicfailure ev;
+ struct iw_michaelmicfailure ev;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct security_priv *psecuritypriv = &padapter->securitypriv;
unsigned long cur_time = 0;
@@ -340,13 +336,12 @@ static void rtw_handle_tkip_mic_err(struct adapter *padapter, u8 bgroup)
static signed int recvframe_chkmic(struct adapter *adapter, union recv_frame *precvframe)
{
- signed int i, res = _SUCCESS;
+ signed int i, res = _SUCCESS;
u32 datalen;
u8 miccode[8];
u8 bmic_err = false, brpt_micerror = true;
u8 *pframe, *payload, *pframemic;
u8 *mickey;
- /* u8 *iv, rxdata_key_idx = 0; */
struct sta_info *stainfo;
struct rx_pkt_attrib *prxattrib = &precvframe->u.hdr.attrib;
struct security_priv *psecuritypriv = &adapter->securitypriv;
@@ -360,13 +355,8 @@ static signed int recvframe_chkmic(struct adapter *adapter, union recv_frame *p
/* calculate mic code */
if (stainfo) {
if (is_multicast_ether_addr(prxattrib->ra)) {
- /* mickey =&psecuritypriv->dot118021XGrprxmickey.skey[0]; */
- /* iv = precvframe->u.hdr.rx_data+prxattrib->hdrlen; */
- /* rxdata_key_idx =(((iv[3])>>6)&0x3) ; */
mickey = &psecuritypriv->dot118021XGrprxmickey[prxattrib->key_index].skey[0];
- /* psecuritypriv->dot118021XGrpKeyid, pmlmeinfo->key_index, rxdata_key_idx); */
-
if (!psecuritypriv->binstallGrpkey) {
res = _FAIL;
goto exit;
@@ -426,8 +416,21 @@ static union recv_frame *decryptor(struct adapter *padapter, union recv_frame *p
u32 res = _SUCCESS;
if (prxattrib->encrypt > 0) {
- u8 *iv = precv_frame->u.hdr.rx_data + prxattrib->hdrlen;
+ u8 *iv;
+ u32 min_len = prxattrib->hdrlen + prxattrib->iv_len + prxattrib->icv_len;
+
+ /* TKIP appends an 8-byte Michael MIC that icv_len doesn't account for */
+ if (prxattrib->encrypt == _TKIP_)
+ min_len += 8;
+
+ /* a protected frame must be long enough to hold the IV and ICV/MIC */
+ if (precv_frame->u.hdr.len < min_len) {
+ rtw_free_recvframe(precv_frame,
+ &padapter->recvpriv.free_recv_queue);
+ return NULL;
+ }
+ iv = precv_frame->u.hdr.rx_data + prxattrib->hdrlen;
prxattrib->key_index = (((iv[3]) >> 6) & 0x3);
if (prxattrib->key_index > WEP_KEYS) {
@@ -530,16 +533,7 @@ static union recv_frame *portctrl(struct adapter *adapter, union recv_frame *pre
} else {
/* allowed */
/* check decryption status, and decrypt the frame if needed */
-
prtnframe = precv_frame;
- /* check is the EAPOL frame or not (Rekey) */
- /* if (ether_type == eapol_type) { */
- /* check Rekey */
-
- /* prtnframe =precv_frame; */
- /* */
- /* else { */
- /* */
}
} else {
prtnframe = precv_frame;
@@ -583,16 +577,10 @@ static void process_pwrbit_data(struct adapter *padapter, union recv_frame *prec
if (psta) {
if (pwrbit) {
if (!(psta->state & WIFI_SLEEP_STATE)) {
- /* psta->state |= WIFI_SLEEP_STATE; */
- /* pstapriv->sta_dz_bitmap |= BIT(psta->aid); */
-
stop_sta_xmit(padapter, psta);
}
} else {
if (psta->state & WIFI_SLEEP_STATE) {
- /* psta->state ^= WIFI_SLEEP_STATE; */
- /* pstapriv->sta_dz_bitmap &= ~BIT(psta->aid); */
-
wakeup_sta_to_xmit(padapter, psta);
}
}
@@ -830,7 +818,6 @@ static signed int ap2sta_data_frame(struct adapter *adapter, union recv_frame *p
memcpy(pattrib->ra, pattrib->dst, ETH_ALEN);
memcpy(pattrib->ta, pattrib->src, ETH_ALEN);
- /* */
memcpy(pattrib->bssid, mybssid, ETH_ALEN);
*psta = rtw_get_stainfo(pstapriv, pattrib->bssid); /* get sta_info */
@@ -923,7 +910,6 @@ static signed int validate_recv_ctrl_frame(struct adapter *padapter, union recv_
struct sta_priv *pstapriv = &padapter->stapriv;
u8 *pframe = precv_frame->u.hdr.rx_data;
struct sta_info *psta = NULL;
- /* uint len = precv_frame->u.hdr.len; */
if (GetFrameType(pframe) != WIFI_CTRL_TYPE)
return _FAIL;
@@ -977,11 +963,10 @@ static signed int validate_recv_ctrl_frame(struct adapter *padapter, union recv_
}
if ((psta->state & WIFI_SLEEP_STATE) && (pstapriv->sta_dz_bitmap & BIT(psta->aid))) {
- struct list_head *xmitframe_plist, *xmitframe_phead;
+ struct list_head *xmitframe_plist, *xmitframe_phead;
struct xmit_frame *pxmitframe = NULL;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
- /* spin_lock_bh(&psta->sleep_q.lock); */
spin_lock_bh(&pxmitpriv->lock);
xmitframe_phead = get_list_head(&psta->sleep_q);
@@ -1009,15 +994,12 @@ static signed int validate_recv_ctrl_frame(struct adapter *padapter, union recv_
pstapriv->tim_bitmap &= ~BIT(psta->aid);
/* update BCN for TIM IE */
- /* update_BCNTIM(padapter); */
update_beacon(padapter, WLAN_EID_TIM, true);
}
- /* spin_unlock_bh(&psta->sleep_q.lock); */
spin_unlock_bh(&pxmitpriv->lock);
} else {
- /* spin_unlock_bh(&psta->sleep_q.lock); */
spin_unlock_bh(&pxmitpriv->lock);
if (pstapriv->tim_bitmap & BIT(psta->aid)) {
@@ -1031,7 +1013,6 @@ static signed int validate_recv_ctrl_frame(struct adapter *padapter, union recv_
pstapriv->tim_bitmap &= ~BIT(psta->aid);
/* update BCN for TIM IE */
- /* update_BCNTIM(padapter); */
update_beacon(padapter, WLAN_EID_TIM, true);
}
}
@@ -1045,12 +1026,12 @@ static signed int validate_recv_ctrl_frame(struct adapter *padapter, union recv_
static union recv_frame *recvframe_defrag(struct adapter *adapter,
struct __queue *defrag_q)
{
- struct list_head *plist, *phead;
- u8 wlanhdr_offset;
+ struct list_head *plist, *phead;
+ u8 wlanhdr_offset;
u8 curfragnum;
struct recv_frame_hdr *pfhdr, *pnfhdr;
union recv_frame *prframe, *pnextrframe;
- struct __queue *pfree_recv_queue;
+ struct __queue *pfree_recv_queue;
curfragnum = 0;
pfree_recv_queue = &adapter->recvpriv.free_recv_queue;
@@ -1170,10 +1151,8 @@ static union recv_frame *recvframe_chk_defrag(struct adapter *padapter, union re
/* Then enqueue the 0~(n-1) fragment into the defrag_q */
- /* spin_lock(&pdefrag_q->lock); */
phead = get_list_head(pdefrag_q);
list_add_tail(&pfhdr->list, phead);
- /* spin_unlock(&pdefrag_q->lock); */
prtnframe = NULL;
@@ -1188,10 +1167,8 @@ static union recv_frame *recvframe_chk_defrag(struct adapter *padapter, union re
/* the last fragment frame */
/* enqueue the last fragment */
if (pdefrag_q) {
- /* spin_lock(&pdefrag_q->lock); */
phead = get_list_head(pdefrag_q);
list_add_tail(&pfhdr->list, phead);
- /* spin_unlock(&pdefrag_q->lock); */
/* call recvframe_defrag to defrag */
precv_frame = recvframe_defrag(padapter, pdefrag_q);
@@ -1262,7 +1239,7 @@ static signed int validate_recv_data_frame(struct adapter *adapter, union recv_f
u8 *psa, *pda, *pbssid;
struct sta_info *psta = NULL;
u8 *ptr = precv_frame->u.hdr.rx_data;
- struct rx_pkt_attrib *pattrib = &precv_frame->u.hdr.attrib;
+ struct rx_pkt_attrib *pattrib = &precv_frame->u.hdr.attrib;
struct security_priv *psecuritypriv = &adapter->securitypriv;
signed int ret = _SUCCESS;
@@ -1319,8 +1296,6 @@ static signed int validate_recv_data_frame(struct adapter *adapter, union recv_f
goto exit;
}
- /* psta->rssi = prxcmd->rssi; */
- /* psta->signal_quality = prxcmd->sq; */
precv_frame->u.hdr.psta = psta;
pattrib->amsdu = 0;
@@ -1395,6 +1370,10 @@ static signed int validate_80211w_mgmt(struct adapter *adapter, union recv_frame
if (!mgmt_DATA)
goto validate_80211w_fail;
precv_frame = decryptor(adapter, precv_frame);
+ if (!precv_frame) {
+ kfree(mgmt_DATA);
+ goto validate_80211w_fail;
+ }
/* save actual management data frame body */
memcpy(mgmt_DATA, ptr + pattrib->hdrlen + pattrib->iv_len, data_len);
/* overwrite the iv field */
@@ -1402,8 +1381,6 @@ static signed int validate_80211w_mgmt(struct adapter *adapter, union recv_frame
/* remove the iv and icv length */
pattrib->pkt_len = pattrib->pkt_len - pattrib->iv_len - pattrib->icv_len;
kfree(mgmt_DATA);
- if (!precv_frame)
- goto validate_80211w_fail;
} else if (is_multicast_ether_addr(GetAddr1Ptr(ptr)) &&
(subtype == WIFI_DEAUTH || subtype == WIFI_DISASSOC)) {
signed int BIP_ret = _SUCCESS;
@@ -1509,13 +1486,13 @@ exit:
/* remove the wlanhdr and add the eth_hdr */
static signed int wlanhdr_to_ethhdr(union recv_frame *precvframe)
{
- signed int rmv_len;
+ signed int rmv_len;
u16 eth_type, len;
u8 bsnaphdr;
u8 *psnap_type;
- struct ieee80211_snap_hdr *psnap;
+ struct ieee80211_snap_hdr *psnap;
__be16 be_tmp;
- struct adapter *adapter = precvframe->u.hdr.adapter;
+ struct adapter *adapter = precvframe->u.hdr.adapter;
struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
u8 *ptr = precvframe->u.hdr.rx_data; /* point to frame_ctrl field */
struct rx_pkt_attrib *pattrib = &precvframe->u.hdr.attrib;
@@ -1523,10 +1500,9 @@ static signed int wlanhdr_to_ethhdr(union recv_frame *precvframe)
if (pattrib->encrypt)
recvframe_pull_tail(precvframe, pattrib->icv_len);
- psnap = (struct ieee80211_snap_hdr *)(ptr + pattrib->hdrlen + pattrib->iv_len);
+ psnap = (struct ieee80211_snap_hdr *)(ptr + pattrib->hdrlen + pattrib->iv_len);
psnap_type = ptr + pattrib->hdrlen + pattrib->iv_len + SNAP_SIZE;
/* convert hdr + possible LLC headers into Ethernet header */
- /* eth_type = (psnap_type[0] << 8) | psnap_type[1]; */
if ((!memcmp(psnap, rfc1042_header, SNAP_SIZE) &&
(memcmp(psnap_type, SNAP_ETH_TYPE_IPX, 2)) &&
(memcmp(psnap_type, SNAP_ETH_TYPE_APPLETALK_AARP, 2))) ||
@@ -1637,7 +1613,6 @@ static void rtw_recv_indicate_pkt(struct adapter *padapter, struct sk_buff *pkt,
if (psta) {
struct net_device *pnetdev = (struct net_device *)padapter->pnetdev;
- /* skb->ip_summed = CHECKSUM_NONE; */
pkt->dev = pnetdev;
skb_set_queue_mapping(pkt, rtw_recv_select_queue(pkt));
@@ -1664,7 +1639,7 @@ static void rtw_recv_indicate_pkt(struct adapter *padapter, struct sk_buff *pkt,
static int amsdu_to_msdu(struct adapter *padapter, union recv_frame *prframe)
{
- int a_len, padding_len;
+ int a_len, padding_len;
u16 subframe_len;
u8 nr_subframes, i;
u8 *pdata;
@@ -1745,11 +1720,9 @@ static int check_indicate_seq(struct recv_reorder_ctrl *preorder_ctrl, u16 seq_n
if (SN_LESS(seq_num, preorder_ctrl->indicate_seq))
return false;
- /* */
/* Sliding window manipulation. Conditions includes: */
/* 1. Incoming SeqNum is equal to WinStart =>Window shift 1 */
/* 2. Incoming SeqNum is larger than the WinEnd => Window shift N */
- /* */
if (SN_EQUAL(seq_num, preorder_ctrl->indicate_seq)) {
preorder_ctrl->indicate_seq = (preorder_ctrl->indicate_seq + 1) % 4096u;
@@ -1772,9 +1745,6 @@ static int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, un
union recv_frame *pnextrframe;
struct rx_pkt_attrib *pnextattrib;
- /* spin_lock_irqsave(&ppending_recvframe_queue->lock, irql); */
- /* spin_lock(&ppending_recvframe_queue->lock); */
-
phead = get_list_head(ppending_recvframe_queue);
plist = get_next(phead);
@@ -1786,22 +1756,15 @@ static int enqueue_reorder_recvframe(struct recv_reorder_ctrl *preorder_ctrl, un
plist = get_next(plist);
else if (SN_EQUAL(pnextattrib->seq_num, pattrib->seq_num))
/* Duplicate entry is found!! Do not insert current entry. */
- /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */
return false;
else
break;
}
- /* spin_lock_irqsave(&ppending_recvframe_queue->lock, irql); */
- /* spin_lock(&ppending_recvframe_queue->lock); */
-
- list_del_init(&(prframe->u.hdr.list));
+ list_del_init(&prframe->u.hdr.list);
list_add_tail(&(prframe->u.hdr.list), plist);
- /* spin_unlock(&ppending_recvframe_queue->lock); */
- /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */
-
return true;
}
@@ -1844,25 +1807,19 @@ _recv_indicatepkt_drop:
static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reorder_ctrl *preorder_ctrl, int bforced)
{
- struct list_head *phead, *plist;
+ struct list_head *phead, *plist;
union recv_frame *prframe;
struct rx_pkt_attrib *pattrib;
- /* u8 index = 0; */
int bPktInBuf = false;
struct recv_priv *precvpriv = &padapter->recvpriv;
struct __queue *ppending_recvframe_queue = &preorder_ctrl->pending_recvframe_queue;
- /* spin_lock_irqsave(&ppending_recvframe_queue->lock, irql); */
- /* spin_lock(&ppending_recvframe_queue->lock); */
-
- phead = get_list_head(ppending_recvframe_queue);
+ phead = get_list_head(ppending_recvframe_queue);
plist = get_next(phead);
/* Handling some condition for forced indicate case. */
if (bforced) {
if (list_empty(phead)) {
- /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */
- /* spin_unlock(&ppending_recvframe_queue->lock); */
return true;
}
@@ -1885,9 +1842,6 @@ static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reor
if (SN_EQUAL(preorder_ctrl->indicate_seq, pattrib->seq_num))
preorder_ctrl->indicate_seq = (preorder_ctrl->indicate_seq + 1) % 4096u;
- /* Set this as a lock to make sure that only one thread is indicating packet. */
- /* pTS->RxIndicateState = RXTS_INDICATE_PROCESSING; */
-
/* Indicate packets */
/* indicate this recv_frame */
@@ -1913,9 +1867,6 @@ static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reor
}
}
- /* spin_unlock(&ppending_recvframe_queue->lock); */
- /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */
-
return bPktInBuf;
}
@@ -1970,8 +1921,6 @@ static int recv_indicatepkt_reorder(struct adapter *padapter, union recv_frame *
/* s3. Insert all packet into Reorder Queue to maintain its ordering. */
if (!enqueue_reorder_recvframe(preorder_ctrl, prframe)) {
- /* spin_unlock_irqrestore(&ppending_recvframe_queue->lock, irql); */
- /* return _FAIL; */
goto _err_exit;
}
@@ -1979,13 +1928,10 @@ static int recv_indicatepkt_reorder(struct adapter *padapter, union recv_frame *
/* Indication process. */
/* After Packet dropping and Sliding Window shifting as above, we can now just indicate the packets */
/* with the SeqNum smaller than latest WinStart and buffer other packets. */
- /* */
/* For Rx Reorder condition: */
/* 1. All packets with SeqNum smaller than WinStart => Indicate */
/* 2. All packets with SeqNum larger than or equal to WinStart => Buffer it. */
- /* */
- /* recv_indicatepkts_in_order(padapter, preorder_ctrl, true); */
if (recv_indicatepkts_in_order(padapter, preorder_ctrl, false)) {
_set_timer(&preorder_ctrl->reordering_ctrl_timer, REORDER_WAIT_TIME);
spin_unlock_bh(&ppending_recvframe_queue->lock);
@@ -2023,14 +1969,10 @@ void rtw_reordering_ctrl_timeout_handler(struct timer_list *t)
static int process_recv_indicatepkts(struct adapter *padapter, union recv_frame *prframe)
{
int retval = _SUCCESS;
- /* struct recv_priv *precvpriv = &padapter->recvpriv; */
- /* struct rx_pkt_attrib *pattrib = &prframe->u.hdr.attrib; */
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct ht_priv *phtpriv = &pmlmepriv->htpriv;
if (phtpriv->ht_option) { /* B/G/N Mode */
- /* prframe->u.hdr.preorder_ctrl = &precvpriv->recvreorder_ctrl[pattrib->priority]; */
-
if (recv_indicatepkt_reorder(padapter, prframe) != _SUCCESS) { /* including perform A-MPDU Rx Ordering Buffer Control */
if (!padapter->driver_stopped &&
diff --git a/drivers/staging/rtl8723bs/core/rtw_security.c b/drivers/staging/rtl8723bs/core/rtw_security.c
index 2217cffac5f2..72af46391e23 100644
--- a/drivers/staging/rtl8723bs/core/rtw_security.c
+++ b/drivers/staging/rtl8723bs/core/rtw_security.c
@@ -34,7 +34,8 @@ const char *security_type_str(u8 value)
/* Need to consider the fragment situation */
void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe)
-{ /* exclude ICV */
+{
+ /* exclude ICV */
union {
__le32 f0;
unsigned char f1[4];
@@ -62,14 +63,19 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe)
keylength = psecuritypriv->dot11DefKeylen[psecuritypriv->dot11PrivacyKeyIndex];
for (curfragnum = 0; curfragnum < pattrib->nr_frags; curfragnum++) {
+ int idx = psecuritypriv->dot11PrivacyKeyIndex;
+
iv = pframe + pattrib->hdrlen;
memcpy(&wepkey[0], iv, 3);
- memcpy(&wepkey[3], &psecuritypriv->dot11DefKey[psecuritypriv->dot11PrivacyKeyIndex].skey[0], keylength);
+ memcpy(&wepkey[3],
+ &psecuritypriv->dot11DefKey[idx].skey[0],
+ keylength);
payload = pframe + pattrib->iv_len + pattrib->hdrlen;
if ((curfragnum + 1) == pattrib->nr_frags) { /* the last fragment */
- length = pattrib->last_txcmdsz - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pattrib->last_txcmdsz - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
crc.f0 = cpu_to_le32(~crc32_le(~0, payload, length));
@@ -78,7 +84,8 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe)
arc4_crypt(ctx, payload + length, crc.f1, 4);
} else {
- length = pxmitpriv->frag_len - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pxmitpriv->frag_len - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
crc.f0 = cpu_to_le32(~crc32_le(~0, payload, length));
arc4_setkey(ctx, wepkey, 3 + keylength);
arc4_crypt(ctx, payload, payload, length);
@@ -108,11 +115,9 @@ void rtw_wep_decrypt(struct adapter *padapter, u8 *precvframe)
/* start to decrypt recvframe */
if ((prxattrib->encrypt == _WEP40_) || (prxattrib->encrypt == _WEP104_)) {
iv = pframe + prxattrib->hdrlen;
- /* keyindex =(iv[3]&0x3); */
keyindex = prxattrib->key_index;
keylength = psecuritypriv->dot11DefKeylen[keyindex];
memcpy(&wepkey[0], iv, 3);
- /* memcpy(&wepkey[3], &psecuritypriv->dot11DefKey[psecuritypriv->dot11PrivacyKeyIndex].skey[0], keylength); */
memcpy(&wepkey[3], &psecuritypriv->dot11DefKey[keyindex].skey[0], keylength);
length = ((union recv_frame *)precvframe)->u.hdr.len - prxattrib->hdrlen - prxattrib->iv_len;
@@ -157,7 +162,8 @@ void rtw_secmicappendbyte(struct mic_data *pmicdata, u8 b)
pmicdata->L ^= pmicdata->M;
pmicdata->R ^= ROL32(pmicdata->L, 17);
pmicdata->L += pmicdata->R;
- pmicdata->R ^= ((pmicdata->L & 0xff00ff00) >> 8) | ((pmicdata->L & 0x00ff00ff) << 8);
+ pmicdata->R ^= ((pmicdata->L & 0xff00ff00) >> 8) |
+ ((pmicdata->L & 0x00ff00ff) << 8);
pmicdata->L += pmicdata->R;
pmicdata->R ^= ROL32(pmicdata->L, 3);
pmicdata->L += pmicdata->R;
@@ -418,7 +424,8 @@ static void phase2(u8 *rc4key, const u8 *tk, const u16 *p1k, u16 iv16)
/* The hlen isn't include the IV */
u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe)
-{ /* exclude ICV */
+{
+ /* exclude ICV */
u16 pnl;
u32 pnh;
u8 rc4key[16];
@@ -467,7 +474,8 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe)
phase2(&rc4key[0], prwskey, (u16 *)&ttkey[0], pnl);
if ((curfragnum + 1) == pattrib->nr_frags) { /* 4 the last fragment */
- length = pattrib->last_txcmdsz - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pattrib->last_txcmdsz - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
crc.f0 = cpu_to_le32(~crc32_le(~0, payload, length));
arc4_setkey(ctx, rc4key, 16);
@@ -475,7 +483,8 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe)
arc4_crypt(ctx, payload + length, crc.f1, 4);
} else {
- length = pxmitpriv->frag_len - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pxmitpriv->frag_len - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
crc.f0 = cpu_to_le32(~crc32_le(~0, payload, length));
arc4_setkey(ctx, rc4key, 16);
@@ -491,7 +500,8 @@ u32 rtw_tkip_encrypt(struct adapter *padapter, u8 *pxmitframe)
/* The hlen isn't include the IV */
u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe)
-{ /* exclude ICV */
+{
+ /* exclude ICV */
u16 pnl;
u32 pnh;
u8 rc4key[16];
@@ -536,7 +546,8 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe)
if (jiffies_to_msecs(jiffies - start) > 1000) {
if (no_gkey_bc_cnt || no_gkey_mc_cnt) {
netdev_dbg(padapter->pnetdev,
- FUNC_ADPT_FMT " no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
+ FUNC_ADPT_FMT
+ " no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
FUNC_ADPT_ARG(padapter),
no_gkey_bc_cnt,
no_gkey_mc_cnt);
@@ -550,7 +561,8 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe)
if (no_gkey_bc_cnt || no_gkey_mc_cnt) {
netdev_dbg(padapter->pnetdev,
- FUNC_ADPT_FMT " gkey installed. no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
+ FUNC_ADPT_FMT
+ " gkey installed. no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
FUNC_ADPT_ARG(padapter),
no_gkey_bc_cnt,
no_gkey_mc_cnt);
@@ -566,7 +578,8 @@ u32 rtw_tkip_decrypt(struct adapter *padapter, u8 *precvframe)
iv = pframe + prxattrib->hdrlen;
payload = pframe + prxattrib->iv_len + prxattrib->hdrlen;
- length = ((union recv_frame *)precvframe)->u.hdr.len - prxattrib->hdrlen - prxattrib->iv_len;
+ length = ((union recv_frame *)precvframe)->u.hdr.len -
+ prxattrib->hdrlen - prxattrib->iv_len;
GET_TKIP_PN(iv, dot11txpn);
@@ -757,16 +770,18 @@ static void construct_ctr_preload(u8 *ctr_preload,
if (frtype == WIFI_MGT_TYPE)
ctr_preload[1] |= BIT(4);
+ /* ctr_preload[2:7] = A2[0:5] = mpdu[10:15] */
for (i = 2; i < 8; i++)
- ctr_preload[i] = mpdu[i + 8]; /* ctr_preload[2:7] = A2[0:5] = mpdu[10:15] */
+ ctr_preload[i] = mpdu[i + 8];
+ /* ctr_preload[8:13] = PN[5:0] */
for (i = 8; i < 14; i++)
- ctr_preload[i] = pn_vector[13 - i]; /* ctr_preload[8:13] = PN[5:0] */
+ ctr_preload[i] = pn_vector[13 - i];
ctr_preload[14] = (unsigned char)(c / 256); /* Ctr */
ctr_preload[15] = (unsigned char)(c % 256);
}
-static signed int aes_cipher(u8 *key, uint hdrlen,
- u8 *pframe, uint plen)
+static signed int aes_cipher(u8 *key, uint hdrlen,
+ u8 *pframe, uint plen)
{
uint qc_exists, a4_exists, i, j, payload_remainder,
num_blocks, payload_index;
@@ -922,9 +937,6 @@ static signed int aes_cipher(u8 *key, uint hdrlen,
u32 rtw_aes_encrypt(struct adapter *padapter, u8 *pxmitframe)
{ /* exclude ICV */
- /*static*/
- /* unsigned char message[MAX_MSG_SIZE]; */
-
/* Intermediate Buffers */
signed int curfragnum, length;
u8 *pframe, *prwskey; /* *payload,*iv */
@@ -952,11 +964,13 @@ u32 rtw_aes_encrypt(struct adapter *padapter, u8 *pxmitframe)
for (curfragnum = 0; curfragnum < pattrib->nr_frags; curfragnum++) {
if ((curfragnum + 1) == pattrib->nr_frags) { /* 4 the last fragment */
- length = pattrib->last_txcmdsz - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pattrib->last_txcmdsz - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
aes_cipher(prwskey, pattrib->hdrlen, pframe, length);
} else {
- length = pxmitpriv->frag_len - pattrib->hdrlen - pattrib->iv_len - pattrib->icv_len;
+ length = pxmitpriv->frag_len - pattrib->hdrlen -
+ pattrib->iv_len - pattrib->icv_len;
aes_cipher(prwskey, pattrib->hdrlen, pframe, length);
pframe += pxmitpriv->frag_len;
@@ -966,8 +980,8 @@ u32 rtw_aes_encrypt(struct adapter *padapter, u8 *pxmitframe)
return res;
}
-static signed int aes_decipher(u8 *key, uint hdrlen,
- u8 *pframe, uint plen)
+static signed int aes_decipher(u8 *key, uint hdrlen,
+ u8 *pframe, uint plen)
{
static u8 message[MAX_MSG_SIZE];
uint qc_exists, a4_exists, i, j, payload_remainder,
@@ -1167,9 +1181,6 @@ static signed int aes_decipher(u8 *key, uint hdrlen,
u32 rtw_aes_decrypt(struct adapter *padapter, u8 *precvframe)
{ /* exclude ICV */
- /*static*/
- /* unsigned char message[MAX_MSG_SIZE]; */
-
/* Intermediate Buffers */
signed int length;
@@ -1205,7 +1216,8 @@ u32 rtw_aes_decrypt(struct adapter *padapter, u8 *precvframe)
if (jiffies_to_msecs(jiffies - start) > 1000) {
if (no_gkey_bc_cnt || no_gkey_mc_cnt) {
netdev_dbg(padapter->pnetdev,
- FUNC_ADPT_FMT " no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
+ FUNC_ADPT_FMT
+ " no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
FUNC_ADPT_ARG(padapter),
no_gkey_bc_cnt,
no_gkey_mc_cnt);
@@ -1220,7 +1232,8 @@ u32 rtw_aes_decrypt(struct adapter *padapter, u8 *precvframe)
if (no_gkey_bc_cnt || no_gkey_mc_cnt) {
netdev_dbg(padapter->pnetdev,
- FUNC_ADPT_FMT " gkey installed. no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
+ FUNC_ADPT_FMT
+ " gkey installed. no_gkey_bc_cnt:%u, no_gkey_mc_cnt:%u\n",
FUNC_ADPT_ARG(padapter),
no_gkey_bc_cnt,
no_gkey_mc_cnt);
@@ -1238,7 +1251,8 @@ u32 rtw_aes_decrypt(struct adapter *padapter, u8 *precvframe)
prwskey = &stainfo->dot118021x_UncstKey.skey[0];
}
- length = ((union recv_frame *)precvframe)->u.hdr.len - prxattrib->hdrlen - prxattrib->iv_len;
+ length = ((union recv_frame *)precvframe)->u.hdr.len -
+ prxattrib->hdrlen - prxattrib->iv_len;
res = aes_decipher(prwskey, prxattrib->hdrlen, pframe, length);
@@ -1269,13 +1283,20 @@ u32 rtw_BIP_verify(struct adapter *padapter, u8 *precvframe)
/* mapping to wlan header */
pwlanhdr = (struct ieee80211_hdr *)pframe;
/* save the frame body + MME */
- memcpy(BIP_AAD + BIP_AAD_SIZE, pframe + WLAN_HDR_A3_LEN, pattrib->pkt_len - WLAN_HDR_A3_LEN);
+ memcpy(BIP_AAD + BIP_AAD_SIZE,
+ pframe + WLAN_HDR_A3_LEN,
+ pattrib->pkt_len - WLAN_HDR_A3_LEN);
/* find MME IE pointer */
- p = rtw_get_ie(BIP_AAD + BIP_AAD_SIZE, WLAN_EID_MMIE, &len, pattrib->pkt_len - WLAN_HDR_A3_LEN);
+ p = rtw_get_ie(BIP_AAD + BIP_AAD_SIZE,
+ WLAN_EID_MMIE,
+ &len,
+ pattrib->pkt_len - WLAN_HDR_A3_LEN);
/* Baron */
if (p) {
u16 keyid = 0;
u64 temp_ipn = 0;
+ int bip_keyid;
+ u8 *bip_key;
/* save packet number */
memcpy(&le_tmp64, p + 4, 6);
temp_ipn = le64_to_cpu(le_tmp64);
@@ -1300,8 +1321,10 @@ u32 rtw_BIP_verify(struct adapter *padapter, u8 *precvframe)
/* conscruct AAD, copy address 1 to address 3 */
memcpy(BIP_AAD + 2, &pwlanhdr->addrs, sizeof(pwlanhdr->addrs));
- if (omac1_aes_128(padapter->securitypriv.dot11wBIPKey[padapter->securitypriv.dot11wBIPKeyid].skey
- , BIP_AAD, ori_len, mic))
+ bip_keyid = padapter->securitypriv.dot11wBIPKeyid;
+ bip_key = padapter->securitypriv.dot11wBIPKey[bip_keyid].skey;
+
+ if (omac1_aes_128(bip_key, BIP_AAD, ori_len, mic))
goto BIP_exit;
/* MIC field should be last 8 bytes of packet (packet without FCS) */
@@ -1430,7 +1453,8 @@ void rtw_sec_restore_wep_key(struct adapter *adapter)
struct security_priv *securitypriv = &adapter->securitypriv;
signed int keyid;
- if ((securitypriv->dot11_privacy_algrthm == _WEP40_) || (securitypriv->dot11_privacy_algrthm == _WEP104_)) {
+ if ((securitypriv->dot11_privacy_algrthm == _WEP40_) ||
+ (securitypriv->dot11_privacy_algrthm == _WEP104_)) {
for (keyid = 0; keyid < 4; keyid++) {
if (securitypriv->key_mask & BIT(keyid)) {
if (keyid == securitypriv->dot11PrivacyKeyIndex)
@@ -1448,7 +1472,8 @@ u8 rtw_handle_tkip_countermeasure(struct adapter *adapter, const char *caller)
u8 status = _SUCCESS;
if (securitypriv->btkip_countermeasure) {
- unsigned long passing_ms = jiffies_to_msecs(jiffies - securitypriv->btkip_countermeasure_time);
+ unsigned long elapsed = jiffies - securitypriv->btkip_countermeasure_time;
+ unsigned long passing_ms = jiffies_to_msecs(elapsed);
if (passing_ms > 60 * 1000) {
netdev_dbg(adapter->pnetdev,
diff --git a/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c b/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c
index 6d014bf8fa96..11351aa4f4d0 100644
--- a/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c
+++ b/drivers/staging/rtl8723bs/core/rtw_sta_mgt.c
@@ -14,9 +14,6 @@ void _rtw_init_stainfo(struct sta_info *psta)
spin_lock_init(&psta->lock);
INIT_LIST_HEAD(&psta->list);
INIT_LIST_HEAD(&psta->hash_list);
- /* INIT_LIST_HEAD(&psta->asoc_list); */
- /* INIT_LIST_HEAD(&psta->sleep_list); */
- /* INIT_LIST_HEAD(&psta->wakeup_list); */
INIT_LIST_HEAD(&psta->sleep_q.queue);
spin_lock_init(&psta->sleep_q.lock);
@@ -171,7 +168,6 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv)
return _SUCCESS;
}
-/* struct sta_info *rtw_alloc_stainfo(_queue *pfree_sta_queue, unsigned char *hwaddr) */
struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr)
{
s32 index;
@@ -184,10 +180,8 @@ struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr)
pfree_sta_queue = &pstapriv->free_sta_queue;
- /* spin_lock_bh(&(pfree_sta_queue->lock)); */
spin_lock_bh(&pstapriv->sta_hash_lock);
if (list_empty(&pfree_sta_queue->queue)) {
- /* spin_unlock_bh(&(pfree_sta_queue->lock)); */
spin_unlock_bh(&pstapriv->sta_hash_lock);
return NULL;
}
@@ -195,8 +189,6 @@ struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr)
list_del_init(&psta->list);
- /* spin_unlock_bh(&(pfree_sta_queue->lock)); */
-
_rtw_init_stainfo(psta);
psta->padapter = pstapriv->padapter;
@@ -212,14 +204,10 @@ struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr)
}
phash_list = &pstapriv->sta_hash[index];
- /* spin_lock_bh(&(pstapriv->sta_hash_lock)); */
-
list_add_tail(&psta->hash_list, phash_list);
pstapriv->asoc_sta_count++;
- /* spin_unlock_bh(&(pstapriv->sta_hash_lock)); */
-
/* Commented by Albert 2009/08/13 */
/* For the SMC router, the sequence number of first packet of WPS handshake will be 0. */
/* In this case, this packet will be dropped by recv_decache function if we use the 0x00 as the default value for tid_rxseq variable. */
@@ -240,7 +228,6 @@ struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr)
preorder_ctrl->indicate_seq = 0xffff;
preorder_ctrl->wend_b = 0xffff;
- /* preorder_ctrl->wsize_b = (NR_RECVBUFF-2); */
preorder_ctrl->wsize_b = 64;/* 64; */
INIT_LIST_HEAD(&preorder_ctrl->pending_recvframe_queue.queue);
@@ -287,50 +274,38 @@ u32 rtw_free_stainfo(struct adapter *padapter, struct sta_info *psta)
pstaxmitpriv = &psta->sta_xmitpriv;
- /* list_del_init(&psta->sleep_list); */
-
- /* list_del_init(&psta->wakeup_list); */
-
spin_lock_bh(&pxmitpriv->lock);
rtw_free_xmitframe_queue(pxmitpriv, &psta->sleep_q);
psta->sleepq_len = 0;
/* vo */
- /* spin_lock_bh(&(pxmitpriv->vo_pending.lock)); */
rtw_free_xmitframe_queue(pxmitpriv, &pstaxmitpriv->vo_q.sta_pending);
list_del_init(&pstaxmitpriv->vo_q.tx_pending);
phwxmit = pxmitpriv->hwxmits;
phwxmit->accnt -= pstaxmitpriv->vo_q.qcnt;
pstaxmitpriv->vo_q.qcnt = 0;
- /* spin_unlock_bh(&(pxmitpriv->vo_pending.lock)); */
/* vi */
- /* spin_lock_bh(&(pxmitpriv->vi_pending.lock)); */
rtw_free_xmitframe_queue(pxmitpriv, &pstaxmitpriv->vi_q.sta_pending);
list_del_init(&pstaxmitpriv->vi_q.tx_pending);
phwxmit = pxmitpriv->hwxmits + 1;
phwxmit->accnt -= pstaxmitpriv->vi_q.qcnt;
pstaxmitpriv->vi_q.qcnt = 0;
- /* spin_unlock_bh(&(pxmitpriv->vi_pending.lock)); */
/* be */
- /* spin_lock_bh(&(pxmitpriv->be_pending.lock)); */
rtw_free_xmitframe_queue(pxmitpriv, &pstaxmitpriv->be_q.sta_pending);
list_del_init(&pstaxmitpriv->be_q.tx_pending);
phwxmit = pxmitpriv->hwxmits + 2;
phwxmit->accnt -= pstaxmitpriv->be_q.qcnt;
pstaxmitpriv->be_q.qcnt = 0;
- /* spin_unlock_bh(&(pxmitpriv->be_pending.lock)); */
/* bk */
- /* spin_lock_bh(&(pxmitpriv->bk_pending.lock)); */
rtw_free_xmitframe_queue(pxmitpriv, &pstaxmitpriv->bk_q.sta_pending);
list_del_init(&pstaxmitpriv->bk_q.tx_pending);
phwxmit = pxmitpriv->hwxmits + 3;
phwxmit->accnt -= pstaxmitpriv->bk_q.qcnt;
pstaxmitpriv->bk_q.qcnt = 0;
- /* spin_unlock_bh(&(pxmitpriv->bk_pending.lock)); */
spin_unlock_bh(&pxmitpriv->lock);
@@ -339,10 +314,6 @@ u32 rtw_free_stainfo(struct adapter *padapter, struct sta_info *psta)
pstapriv->asoc_sta_count--;
spin_unlock_bh(&pstapriv->sta_hash_lock);
- /* re-init sta_info; 20061114 will be init in alloc_stainfo */
- /* _rtw_init_sta_xmit_priv(&psta->sta_xmitpriv); */
- /* _rtw_init_sta_recv_priv(&psta->sta_recvpriv); */
-
timer_delete_sync(&psta->addba_retry_timer);
/* for A-MPDU Rx reordering buffer control, cancel reordering_ctrl_timer */
@@ -410,9 +381,7 @@ u32 rtw_free_stainfo(struct adapter *padapter, struct sta_info *psta)
psta->under_exist_checking = 0;
- /* spin_lock_bh(&(pfree_sta_queue->lock)); */
list_add_tail(&psta->list, get_list_head(pfree_sta_queue));
- /* spin_unlock_bh(&(pfree_sta_queue->lock)); */
exit:
return _SUCCESS;
@@ -493,7 +462,6 @@ u32 rtw_init_bcmc_stainfo(struct adapter *padapter)
u8 bcast_addr[ETH_ALEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
struct sta_priv *pstapriv = &padapter->stapriv;
- /* struct __queue *pstapending = &padapter->xmitpriv.bm_pending; */
psta = rtw_alloc_stainfo(pstapriv, bcast_addr);
diff --git a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c b/drivers/staging/rtl8723bs/core/rtw_wlan_util.c
index 8c1f4670679b..9feab9ab7545 100644
--- a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c
+++ b/drivers/staging/rtl8723bs/core/rtw_wlan_util.c
@@ -180,14 +180,14 @@ void set_mcs_rate_by_mask(u8 *mcs_set, u32 mask)
mcs_set[3] &= mcs_rate_4r;
}
-void update_basic_rate_table(struct adapter *Adapter, u8 *mBratesOS)
+void update_basic_rate_table(struct adapter *Adapter, u8 *basic_rates)
{
u8 i;
u8 rate;
/* 1M, 2M, 5.5M, 11M, 6M, 12M, 24M are mandatory. */
for (i = 0; i < NDIS_802_11_LENGTH_RATES_EX; i++) {
- rate = mBratesOS[i] & 0x7f;
+ rate = basic_rates[i] & 0x7f;
switch (rate) {
case IEEE80211_CCK_RATE_1MB:
case IEEE80211_CCK_RATE_2MB:
@@ -196,7 +196,7 @@ void update_basic_rate_table(struct adapter *Adapter, u8 *mBratesOS)
case IEEE80211_OFDM_RATE_6MB:
case IEEE80211_OFDM_RATE_12MB:
case IEEE80211_OFDM_RATE_24MB:
- mBratesOS[i] |= IEEE80211_BASIC_RATE_MASK;
+ basic_rates[i] |= IEEE80211_BASIC_RATE_MASK;
break;
}
}
@@ -655,7 +655,6 @@ void flush_all_cam_entry(struct adapter *padapter)
int WMM_param_handler(struct adapter *padapter, struct ndis_80211_var_ie *pIE)
{
- /* struct registry_priv *pregpriv = &padapter->registrypriv; */
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -774,7 +773,6 @@ void WMMOnAssocRsp(struct adapter *padapter)
case 0x1:
rtw_hal_set_hwreg(padapter, HW_VAR_AC_PARAM_BK, (u8 *)(&acParm));
- /* acm_mask |= (ACM? BIT(0):0); */
edca[XMIT_BK_QUEUE] = acParm;
break;
@@ -872,8 +870,6 @@ static void bwmode_update_check(struct adapter *padapter, struct ndis_80211_var_
struct wlan_bssid_ex *cur_network = &pmlmeinfo->network;
struct sta_priv *pstapriv = &padapter->stapriv;
- /* set_channel_bwmode(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset, pmlmeext->cur_bwmode); */
-
/* update ap's stainfo */
psta = rtw_get_stainfo(pstapriv, cur_network->mac_address);
if (psta) {
@@ -984,7 +980,6 @@ void HTOnAssocRsp(struct adapter *padapter)
{
unsigned char max_AMPDU_len;
unsigned char min_MPDU_spacing;
- /* struct registry_priv *pregpriv = &padapter->registrypriv; */
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -992,7 +987,6 @@ void HTOnAssocRsp(struct adapter *padapter)
pmlmeinfo->HT_enable = 1;
} else {
pmlmeinfo->HT_enable = 0;
- /* set_channel_bwmode(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset, pmlmeext->cur_bwmode); */
return;
}
@@ -1082,7 +1076,6 @@ int rtw_check_bcn_info(struct adapter *Adapter, u8 *pframe, u32 packet_len)
unsigned char *p;
unsigned short val16, subtype;
struct wlan_network *cur_network = &Adapter->mlmepriv.cur_network;
- /* u8 wpa_ie[255], rsn_ie[255]; */
u16 wpa_len = 0, rsn_len = 0;
u8 encryp_protocol = 0;
struct wlan_bssid_ex *bssid;
@@ -1154,7 +1147,6 @@ int rtw_check_bcn_info(struct adapter *Adapter, u8 *pframe, u32 packet_len)
cur_network->bcn_info.ht_info_infos_0 = ht_info_infos_0;
/* to do : need to check that whether modify related register of BB or not */
}
- /* goto _mismatch; */
}
/* Checking for channel */
@@ -1281,7 +1273,6 @@ void update_beacon_info(struct adapter *padapter, u8 *pframe, uint pkt_len, stru
break;
case WLAN_EID_HT_OPERATION: /* HT info */
- /* HT_info_handler(padapter, pIE); */
bwmode_update_check(padapter, pIE);
break;
@@ -1392,10 +1383,7 @@ static u32 get_realtek_assoc_AP_vender(struct ndis_80211_var_ie *pIE)
if (pIE->length >= 5) {
if (pIE->data[4] == 1)
- /* if (pIE->data[5] & RT_HT_CAP_USE_LONG_PREAMBLE) */
- /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_LONG_PREAMBLE; */
if (pIE->data[5] & RT_HT_CAP_USE_92SE)
- /* bssDesc->BssHT.RT2RT_HT_Mode |= RT_HT_CAP_USE_92SE; */
Vender = HT_IOT_PEER_REALTEK_92SE;
if (pIE->data[5] & RT_HT_CAP_USE_SOFTAP)
@@ -1468,8 +1456,6 @@ void update_IOT_info(struct adapter *padapter)
switch_dm_func(padapter, ((u32)(~DYNAMIC_BB_DYNAMIC_TXPWR)), false);
break;
case HT_IOT_PEER_REALTEK:
- /* rtw_write16(padapter, 0x4cc, 0xffff); */
- /* rtw_write16(padapter, 0x546, 0x01c0); */
/* disable high power */
switch_dm_func(padapter, ((u32)(~DYNAMIC_BB_DYNAMIC_TXPWR)), false);
break;
@@ -1666,16 +1652,13 @@ void adaptive_early_32k(struct mlme_ext_priv *pmlmeext, u8 *pframe, uint len)
tsf |= le32_to_cpu(*pbuf);
/* delay = (timestamp mod 1024*100)/1000 (unit: ms) */
- /* delay_ms = do_div(tsf, (pmlmeinfo->bcn_interval*1024))/1000; */
delay_ms = do_div(tsf, (pmlmeinfo->bcn_interval * 1024));
delay_ms = delay_ms / 1000;
if (delay_ms >= 8)
pmlmeext->bcn_delay_cnt[8]++;
- /* pmlmeext->bcn_delay_ratio[8] = (pmlmeext->bcn_delay_cnt[8] * 100) /pmlmeext->bcn_cnt; */
else
pmlmeext->bcn_delay_cnt[delay_ms]++;
- /* pmlmeext->bcn_delay_ratio[delay_ms] = (pmlmeext->bcn_delay_cnt[delay_ms] * 100) /pmlmeext->bcn_cnt; */
/* dump for adaptive_early_32k */
if (pmlmeext->bcn_cnt > 100 && pmlmeext->adaptive_tsf_done) {
u8 ratio_20_delay, ratio_80_delay;
diff --git a/drivers/staging/rtl8723bs/core/rtw_xmit.c b/drivers/staging/rtl8723bs/core/rtw_xmit.c
index 81d9e713fc12..57b3690bc48a 100644
--- a/drivers/staging/rtl8723bs/core/rtw_xmit.c
+++ b/drivers/staging/rtl8723bs/core/rtw_xmit.c
@@ -7,6 +7,7 @@
#include <drv_types.h>
#include <linux/delay.h>
#include <linux/if_ether.h>
+#include <linux/align.h>
static u8 P802_1H_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0xf8 };
static u8 RFC1042_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0x00 };
@@ -80,7 +81,7 @@ static int rtw_os_xmit_resource_alloc(struct adapter *padapter, struct xmit_buf
if (!pxmitbuf->pallocated_buf)
return -ENOMEM;
- pxmitbuf->pbuf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitbuf->pallocated_buf), XMITBUF_ALIGN_SZ);
+ pxmitbuf->pbuf = PTR_ALIGN(pxmitbuf->pallocated_buf, XMITBUF_ALIGN_SZ);
}
return 0;
@@ -126,7 +127,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
pxmitpriv->pxmit_frame_buf = NULL;
return -ENOMEM;
}
- pxmitpriv->pxmit_frame_buf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->pallocated_frame_buf), 4);
+ pxmitpriv->pxmit_frame_buf = PTR_ALIGN(pxmitpriv->pallocated_frame_buf, 4);
pxframe = (struct xmit_frame *)pxmitpriv->pxmit_frame_buf;
@@ -162,7 +163,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
if (!pxmitpriv->pallocated_xmitbuf)
return -ENOMEM;
- pxmitpriv->pxmitbuf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->pallocated_xmitbuf), 4);
+ pxmitpriv->pxmitbuf = PTR_ALIGN(pxmitpriv->pallocated_xmitbuf, 4);
pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmitbuf;
@@ -207,7 +208,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
pxmitpriv->xframe_ext = NULL;
return -ENOMEM;
}
- pxmitpriv->xframe_ext = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->xframe_ext_alloc_addr), 4);
+ pxmitpriv->xframe_ext = PTR_ALIGN(pxmitpriv->xframe_ext_alloc_addr, 4);
pxframe = (struct xmit_frame *)pxmitpriv->xframe_ext;
for (i = 0; i < NR_XMIT_EXTBUFF; i++) {
@@ -239,7 +240,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
if (!pxmitpriv->pallocated_xmit_extbuf)
return -ENOMEM;
- pxmitpriv->pxmit_extbuf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->pallocated_xmit_extbuf), 4);
+ pxmitpriv->pxmit_extbuf = PTR_ALIGN(pxmitpriv->pallocated_xmit_extbuf, 4);
pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf;
@@ -391,7 +392,6 @@ static void update_attrib_vcs_info(struct adapter *padapter, struct xmit_frame *
{
u32 sz;
struct pkt_attrib *pattrib = &pxmitframe->attrib;
- /* struct sta_info *psta = pattrib->psta; */
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -880,7 +880,7 @@ static int xmitframe_addmic(struct adapter *padapter, struct xmit_frame *pxmitfr
return 0;
}
-static s32 xmitframe_swencrypt(struct adapter *padapter, struct xmit_frame *pxmitframe)
+static void xmitframe_swencrypt(struct adapter *padapter, struct xmit_frame *pxmitframe)
{
struct pkt_attrib *pattrib = &pxmitframe->attrib;
@@ -900,8 +900,6 @@ static s32 xmitframe_swencrypt(struct adapter *padapter, struct xmit_frame *pxmi
break;
}
}
-
- return _SUCCESS;
}
int rtw_make_wlanhdr(struct adapter *padapter, u8 *hdr, struct pkt_attrib *pattrib)
@@ -920,8 +918,6 @@ int rtw_make_wlanhdr(struct adapter *padapter, u8 *hdr, struct pkt_attrib *pattr
if (pattrib->subtype & WIFI_DATA_TYPE) {
if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)) {
- /* to_ds = 1, fr_ds = 0; */
-
{
/* 1.Data transfer to AP */
/* 2.Arp pkt will relayed by AP */
@@ -934,7 +930,6 @@ int rtw_make_wlanhdr(struct adapter *padapter, u8 *hdr, struct pkt_attrib *pattr
if (pqospriv->qos_option)
qos_option = true;
} else if (check_fwstate(pmlmepriv, WIFI_AP_STATE)) {
- /* to_ds = 0, fr_ds = 1; */
SetFrDs(fctrl);
memcpy(pwlanhdr->addr1, pattrib->dst, ETH_ALEN);
memcpy(pwlanhdr->addr2, get_bssid(pmlmepriv), ETH_ALEN);
@@ -1188,7 +1183,7 @@ int rtw_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, struct
}
/* broadcast or multicast management pkt use BIP, unicast management pkt use CCMP encryption */
-s32 rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, struct xmit_frame *pxmitframe)
+int rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, struct xmit_frame *pxmitframe)
{
u8 *pframe, *mem_start = NULL, *tmp_buf = NULL;
u8 subtype;
@@ -1211,7 +1206,7 @@ s32 rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, s
BIP_AAD = kzalloc(ori_len, GFP_ATOMIC);
if (!BIP_AAD)
- return _FAIL;
+ return -ENOMEM;
tmp_buf = BIP_AAD;
subtype = GetFrameSubType(pframe); /* bit(7)~bit(2) */
@@ -1342,12 +1337,12 @@ s32 rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, s
xmitframe_coalesce_success:
spin_unlock_bh(&padapter->security_key_mutex);
kfree(BIP_AAD);
- return _SUCCESS;
+ return 0;
xmitframe_coalesce_fail:
spin_unlock_bh(&padapter->security_key_mutex);
kfree(BIP_AAD);
- return _FAIL;
+ return -EINVAL;
}
/* Logical Link Control(LLC) SubNetwork Attachment Point(SNAP) header
@@ -1534,13 +1529,13 @@ struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv)
return pxmitbuf;
}
-s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
+void rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
{
unsigned long irqL;
struct __queue *pfree_queue = &pxmitpriv->free_xmit_extbuf_queue;
if (!pxmitbuf)
- return _FAIL;
+ return;
spin_lock_irqsave(&pfree_queue->lock, irqL);
@@ -1550,8 +1545,6 @@ s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
pxmitpriv->free_xmit_extbuf_cnt++;
spin_unlock_irqrestore(&pfree_queue->lock, irqL);
-
- return _SUCCESS;
}
struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv)
@@ -1595,13 +1588,13 @@ struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv)
return pxmitbuf;
}
-s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
+void rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
{
unsigned long irqL;
struct __queue *pfree_xmitbuf_queue = &pxmitpriv->free_xmitbuf_queue;
if (!pxmitbuf)
- return _FAIL;
+ return;
if (pxmitbuf->sctx)
rtw_sctx_done_err(&pxmitbuf->sctx, RTW_SCTX_DONE_BUF_FREE);
@@ -1620,7 +1613,6 @@ s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
pxmitpriv->free_xmitbuf_cnt++;
spin_unlock_irqrestore(&pfree_xmitbuf_queue->lock, irqL);
}
- return _SUCCESS;
}
static void rtw_init_xmitframe(struct xmit_frame *pxframe)
@@ -1717,7 +1709,7 @@ struct xmit_frame *rtw_alloc_xmitframe_once(struct xmit_priv *pxmitpriv)
if (!alloc_addr)
goto exit;
- pxframe = (struct xmit_frame *)N_BYTE_ALIGMENT((SIZE_PTR)(alloc_addr), 4);
+ pxframe = (struct xmit_frame *)PTR_ALIGN(alloc_addr, 4);
pxframe->alloc_addr = alloc_addr;
pxframe->padapter = pxmitpriv->adapter;
@@ -1734,14 +1726,14 @@ exit:
return pxframe;
}
-s32 rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitframe)
+void rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitframe)
{
struct __queue *queue = NULL;
struct adapter *padapter = pxmitpriv->adapter;
struct sk_buff *pndis_pkt = NULL;
if (!pxmitframe)
- return _SUCCESS;
+ return;
if (pxmitframe->pkt) {
pndis_pkt = pxmitframe->pkt;
@@ -1750,7 +1742,11 @@ s32 rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitfram
if (pxmitframe->alloc_addr) {
kfree(pxmitframe->alloc_addr);
- goto check_pkt_complete;
+
+ if (pndis_pkt)
+ rtw_os_pkt_complete(padapter, pndis_pkt);
+
+ return;
}
if (pxmitframe->ext_tag == 0)
@@ -1769,12 +1765,8 @@ s32 rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitfram
spin_unlock_bh(&queue->lock);
-check_pkt_complete:
-
if (pndis_pkt)
rtw_os_pkt_complete(padapter, pndis_pkt);
-
- return _SUCCESS;
}
void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, struct __queue *pframequeue)
@@ -2150,7 +2142,7 @@ static void dequeue_xmitframes_to_sleeping_queue(struct adapter *padapter,
ret = xmitframe_enqueue_for_sleeping_sta(padapter, pxmitframe);
- if (true == ret) {
+ if (ret) {
ptxservq = rtw_get_sta_pending(padapter, psta, pattrib->priority, (u8 *)(&ac_index));
ptxservq->qcnt--;
diff --git a/drivers/staging/rtl8723bs/hal/Hal8723BReg.h b/drivers/staging/rtl8723bs/hal/Hal8723BReg.h
index 0b327a70aa15..8142d9cf9ae5 100644
--- a/drivers/staging/rtl8723bs/hal/Hal8723BReg.h
+++ b/drivers/staging/rtl8723bs/hal/Hal8723BReg.h
@@ -19,27 +19,16 @@
#ifndef __INC_HAL8723BREG_H
#define __INC_HAL8723BREG_H
-/* */
-/* */
/* 0x0100h ~ 0x01FFh MACTOP General Configuration */
-/* */
-/* */
#define REG_C2HEVT_CMD_SEQ_88XX 0x01A1
#define REG_C2HEVT_CMD_LEN_88XX 0x01AE
-/* */
-/* */
/* 0x0200h ~ 0x027Fh TXDMA Configuration */
-/* */
-/* */
#define REG_DWBCN1_CTRL_8723B 0x0228
/* spec version 11 */
-/* */
-/* */
+
/* 0x0400h ~ 0x047Fh Protocol Configuration */
-/* */
-/* */
#define REG_FWHW_TXQ_CTRL_8723B 0x0420
#define REG_ARFR0_8723B 0x0444
#define REG_ARFR1_8723B 0x044C
@@ -50,11 +39,7 @@
#define REG_DATA_SC_8723B 0x0483
#define REG_MAX_AGGR_NUM_8723B 0x04CA
-/* */
-/* */
/* 0x0500h ~ 0x05FFh EDCA Configuration */
-/* */
-/* */
#define REG_PIFS_8723B 0x0512
/* 0x0600h ~ 0x07FFh WMAC Configuration */
diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c
index 0613beaa3752..2845ae14977a 100644
--- a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c
+++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.c
@@ -221,9 +221,7 @@ static void halbtc8723b1ant_LimitedRx(
bool bBtCtrlRxAggSize = bBtCtrlAggBufSize;
u8 rxAggSize = aggBufSize;
- /* */
/* Rx Aggregation related setting */
- /* */
pBtCoexist->fBtcSet(
pBtCoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, &bRejectRxAgg
);
@@ -1346,7 +1344,6 @@ static void halbtc8723b1ant_TdmaDurationAdjustForAcl(
halbtc8723b1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2);
pCoexDm->psTdmaDuAdjType = 2;
- /* */
up = 0;
dn = 0;
m = 1;
@@ -1525,17 +1522,9 @@ static void halbtc8723b1ant_PowerSaveState(
}
}
-/* */
-/* */
/* Software Coex Mechanism start */
-/* */
-/* */
-/* */
-/* */
/* Non-Software Coex Mechanism start */
-/* */
-/* */
static void halbtc8723b1ant_ActionWifiMultiPort(struct btc_coexist *pBtCoexist)
{
halbtc8723b1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0);
@@ -2058,12 +2047,8 @@ static void halbtc8723b1ant_InitHwConfig(
pBtCoexist->fBtcRead1Byte(pBtCoexist, 0x67);
}
-/* */
/* work around function start with wa_halbtc8723b1ant_ */
-/* */
-/* */
/* extern function start with EXhalbtc8723b1ant_ */
-/* */
void EXhalbtc8723b1ant_PowerOnSetting(struct btc_coexist *pBtCoexist)
{
struct btc_board_info *pBoardInfo = &pBtCoexist->boardInfo;
@@ -2081,7 +2066,6 @@ void EXhalbtc8723b1ant_PowerOnSetting(struct btc_coexist *pBtCoexist)
/* set WLAN_ACT = 0 */
pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x76e, 0x4);
- /* */
/* S0 or S1 setting and Local register setting(By the setting fw can get ant number, S0/S1, ... info) */
/* Local setting bit define */
/* BIT0: "0" for no antenna inverse; "1" for antenna inverse */
diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.h b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.h
index 7a12d92da0a9..b3e6c5f12e8b 100644
--- a/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.h
+++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b1Ant.h
@@ -164,9 +164,7 @@ struct coex_sta_8723b_1ant {
bool bForceLpsOn;
};
-/* */
/* The following is interface which will notify coex module. */
-/* */
void EXhalbtc8723b1ant_PowerOnSetting(struct btc_coexist *pBtCoexist);
void EXhalbtc8723b1ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bWifiOnly);
void EXhalbtc8723b1ant_InitCoexDm(struct btc_coexist *pBtCoexist);
diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c
index 0220bacee181..f7e126c69a5a 100644
--- a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c
+++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.c
@@ -167,9 +167,7 @@ static void halbtc8723b2ant_LimitedRx(
bool bBtCtrlRxAggSize = bBtCtrlAggBufSize;
u8 rxAggSize = aggBufSize;
- /* */
/* Rx Aggregation related setting */
- /* */
pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, &bRejectRxAgg);
/* decide BT control aggregation buf size or not */
pBtCoexist->fBtcSet(pBtCoexist, BTC_SET_BL_BT_CTRL_AGG_SIZE, &bBtCtrlRxAggSize);
@@ -1209,7 +1207,6 @@ static void halbtc8723b2ant_TdmaDurationAdjust(
}
}
}
- /* */
up = 0;
dn = 0;
m = 1;
@@ -2315,12 +2312,8 @@ static void halbtc8723b2ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bB
pBtCoexist->fBtcWrite1ByteBitMask(pBtCoexist, 0x40, 0x20, 0x1);
}
-/* */
/* work around function start with wa_halbtc8723b2ant_ */
-/* */
-/* */
/* extern function start with EXhalbtc8723b2ant_ */
-/* */
void EXhalbtc8723b2ant_PowerOnSetting(struct btc_coexist *pBtCoexist)
{
struct btc_board_info *pBoardInfo = &pBtCoexist->boardInfo;
@@ -2338,7 +2331,6 @@ void EXhalbtc8723b2ant_PowerOnSetting(struct btc_coexist *pBtCoexist)
/* set WLAN_ACT = 0 */
pBtCoexist->fBtcWrite1Byte(pBtCoexist, 0x76e, 0x4);
- /* */
/* S0 or S1 setting and Local register setting(By the setting fw can get ant number, S0/S1, ... info) */
/* Local setting bit define */
/* BIT0: "0" for no antenna inverse; "1" for antenna inverse */
diff --git a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.h b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.h
index ebc47f65e8d2..21bb90479e9c 100644
--- a/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.h
+++ b/drivers/staging/rtl8723bs/hal/HalBtc8723b2Ant.h
@@ -126,9 +126,7 @@ struct coex_sta_8723b_2ant {
u8 btInfoExt;
};
-/* */
/* The following is interface which will notify coex module. */
-/* */
void EXhalbtc8723b2ant_PowerOnSetting(struct btc_coexist *pBtCoexist);
void EXhalbtc8723b2ant_InitHwConfig(struct btc_coexist *pBtCoexist, bool bWifiOnly);
void EXhalbtc8723b2ant_InitCoexDm(struct btc_coexist *pBtCoexist);
diff --git a/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h b/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h
index 36b0f429dd4c..c2ac06812bff 100644
--- a/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h
+++ b/drivers/staging/rtl8723bs/hal/HalBtcOutSrc.h
@@ -81,7 +81,6 @@ struct btc_board_info {
u8 btdmAntNum; /* ant number for btdm */
u8 btdmAntPos; /* Bryant Add to indicate Antenna Position for (pgAntNum = 2) && (btdmAntNum = 1) (DPDT+1Ant case) */
u8 singleAntPath; /* current used for 8723b only, 1 =>s0, 0 =>s1 */
- /* bool bBtExist; */
};
enum {
@@ -194,7 +193,7 @@ enum {
BTC_SET_ACT_CTRL_BT_INFO,
BTC_SET_ACT_CTRL_BT_COEX,
BTC_SET_ACT_CTRL_8723B_ANT,
- /* */
+
BTC_SET_MAX
};
diff --git a/drivers/staging/rtl8723bs/hal/HalPhyRf.c b/drivers/staging/rtl8723bs/hal/HalPhyRf.c
index bf44c1050be5..083d60871a68 100644
--- a/drivers/staging/rtl8723bs/hal/HalPhyRf.c
+++ b/drivers/staging/rtl8723bs/hal/HalPhyRf.c
@@ -13,14 +13,11 @@ void ConfigureTxpowerTrack(struct dm_odm_t *pDM_Odm, struct txpwrtrack_cfg *pCon
ConfigureTxpowerTrack_8723B(pConfig);
}
-/* */
/* <20121113, Kordan> This function should be called when TxAGC changed. */
/* Otherwise the previous compensation is gone, because we record the */
/* delta of temperature between two TxPowerTracking watch dogs. */
-/* */
/* NOTE: If Tx BB swing or Tx scaling is varified during run-time, still */
/* need to call this function. */
-/* */
void ODM_ClearTxPowerTrackingState(struct dm_odm_t *pDM_Odm)
{
struct hal_com_data *pHalData = GET_HAL_DATA(pDM_Odm->Adapter);
@@ -117,9 +114,8 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter)
}
/* Calculate Average ThermalValue after average enough times */
- if (ThermalValue_AVG_count) {
+ if (ThermalValue_AVG_count)
ThermalValue = (u8)(ThermalValue_AVG / ThermalValue_AVG_count);
- }
/* 4 5. Calculate delta, delta_LCK */
/* delta" here is used to determine whether thermal value changes or not. */
@@ -226,8 +222,6 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter)
}
if (pDM_Odm->RFCalibrateInfo.CCK_index > c.SwingTableSize_CCK - 1)
pDM_Odm->RFCalibrateInfo.CCK_index = c.SwingTableSize_CCK - 1;
- /* else if (pDM_Odm->RFCalibrateInfo.CCK_index < 0) */
- /* pDM_Odm->RFCalibrateInfo.CCK_index = 0; */
} else {
for (p = RF_PATH_A; p < c.RfPathCount; p++)
pDM_Odm->RFCalibrateInfo.PowerIndexOffset[p] = 0;
@@ -241,10 +235,9 @@ void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter)
/* 4 7.2 Configure the Swing Table to adjust Tx Power. */
pDM_Odm->RFCalibrateInfo.bTxPowerChanged = true; /* Always true after Tx Power is adjusted by power tracking. */
- /* */
/* 2012/04/23 MH According to Luke's suggestion, we can not write BB digital */
/* to increase TX power. Otherwise, EVM will be bad. */
- /* */
+
/* 2012/04/25 MH Add for tx power tracking to set tx power in tx agc for 88E. */
if (ThermalValue > pHalData->EEPROMThermalMeter) {
diff --git a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c
index 6c5f56d5a1f4..05cb0575f2b5 100644
--- a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c
+++ b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.c
@@ -359,9 +359,6 @@ static u8 phy_PathA_IQK_8723B(
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x18000);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0003f);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G2, bRFRegOffsetMask, 0xc7f87);
- /* disable path B PA in TXIQK mode */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xed, bRFRegOffsetMask, 0x00020); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0x43, bRFRegOffsetMask, 0x40ec1); */
/* 1 Tx IQK */
/* IQK setting */
@@ -372,7 +369,6 @@ static u8 phy_PathA_IQK_8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_A, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x8214010a); */
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x821303ea);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x28110000);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
@@ -400,7 +396,6 @@ static u8 phy_PathA_IQK_8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -458,7 +453,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0001f);
/* LNA2 off, PA on for Dcut */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G2, bRFRegOffsetMask, 0xf7fb7);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_WE_LUT, 0x80000, 0x0); */
PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x808000);
/* IQK setting */
@@ -471,7 +465,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82160c1f); */
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82130ff0);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x28110000);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
@@ -499,7 +492,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -542,7 +534,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0001f);
/* LAN2 on, PA off for Dcut */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G2, bRFRegOffsetMask, 0xf7d77);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_WE_LUT, 0x80000, 0x0); */
/* PA, PAD setting */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xdf, bRFRegOffsetMask, 0xf80);
@@ -558,7 +549,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82110000);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x281604c2); */
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x2813001f);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000);
@@ -585,7 +575,6 @@ static u8 phy_PathA_RxIQK8723B(
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_8723B*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -637,11 +626,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter)
/* leave IQK mode */
PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000);
- /* in TXIQK mode */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_WE_LUT, 0x80000, 0x1); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x20000); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0003f); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G2, bRFRegOffsetMask, 0xc7f87); */
/* enable path B PA in TXIQK mode */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xed, 0x20, 0x1);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0x43, bRFRegOffsetMask, 0x30fc1);
@@ -656,7 +640,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter)
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82140114); */
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x821303ea);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x28110000);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
@@ -670,7 +653,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter)
/* switch to path B */
PHY_SetBBReg(pDM_Odm->Adapter, rS0S1_PathSwitch, bMaskDWord, 0x00000280);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, bRFRegOffsetMask, 0xeffe0); */
/* GNT_BT = 0 */
PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800);
@@ -680,7 +662,6 @@ static u8 phy_PathB_IQK_8723B(struct adapter *padapter)
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -748,7 +729,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82160c1f); */
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82130ff0);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x28110000);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
@@ -762,7 +742,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
/* switch to path B */
PHY_SetBBReg(pDM_Odm->Adapter, rS0S1_PathSwitch, bMaskDWord, 0x00000280);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, bRFRegOffsetMask, 0xeffe0); */
/* GNT_BT = 0 */
PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800);
@@ -772,7 +751,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -815,16 +793,11 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_RCK_OS, bRFRegOffsetMask, 0x18000);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G1, bRFRegOffsetMask, 0x0001f);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_TXPA_G2, bRFRegOffsetMask, 0xf7d77);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_WE_LUT, 0x80000, 0x0); */
/* open PA S1 & close SMIXER */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xed, 0x20, 0x1);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0x43, bRFRegOffsetMask, 0x30ebd);
- /* PA, PAD setting */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xdf, bRFRegOffsetMask, 0xf80); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0x56, bRFRegOffsetMask, 0x51000); */
-
/* IQK setting */
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK, bMaskDWord, 0x01004800);
@@ -835,7 +808,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_Tone_B, bMaskDWord, 0x38008c1c);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_A, bMaskDWord, 0x82110000);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x281604c2); */
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_A, bMaskDWord, 0x2813001f);
PHY_SetBBReg(pDM_Odm->Adapter, rTx_IQK_PI_B, bMaskDWord, 0x82110000);
PHY_SetBBReg(pDM_Odm->Adapter, rRx_IQK_PI_B, bMaskDWord, 0x28110000);
@@ -848,7 +820,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
/* switch to path B */
PHY_SetBBReg(pDM_Odm->Adapter, rS0S1_PathSwitch, bMaskDWord, 0x00000280);
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, bRFRegOffsetMask, 0xeffe0); */
/* GNT_BT = 0 */
PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, 0x00000800);
@@ -858,7 +829,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
PHY_SetBBReg(pDM_Odm->Adapter, rIQK_AGC_Pts, bMaskDWord, 0xf8000000);
/* delay x ms */
- /* PlatformStallExecution(IQK_DELAY_TIME_88E*1000); */
mdelay(IQK_DELAY_TIME_8723B);
/* restore Ant Path */
@@ -873,11 +843,6 @@ static u8 phy_PathB_RxIQK8723B(struct adapter *padapter, bool configPathB)
regEAC = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord);
regEA4 = PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord);
- /* PA/PAD controlled by 0x0 */
- /* leave IQK mode */
-/* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, 0xffffff00, 0x00000000); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_B, 0xdf, bRFRegOffsetMask, 0x180); */
-
/* Allen 20131125 */
tmp = (regEAC & 0x03FF0000)>>16;
if ((tmp & 0x200) > 0)
@@ -948,7 +913,6 @@ static void _PHY_PathAFillIQKMatrix8723B(
pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xCA0][KEY] = rOFDM0_RxIQExtAnta;
pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xCA0][VAL] = 0xfffffff & PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_RxIQExtAnta, bMaskDWord);
pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xC14][KEY] = rOFDM0_XARxIQImbalance;
-/* pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xC14][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XARxIQImbalance, bMaskDWord); */
pRFCalibrateInfo->RxIQC_8723B[PATH_S1][IDX_0xC14][VAL] = 0x40000100;
return;
}
@@ -1008,8 +972,6 @@ static void _PHY_PathBFillIQKMatrix8723B(
/* 2 Tx IQC */
PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_XDTxAFE, 0xF0000000, ((TX1_C&0x3C0)>>6));
-/* pRFCalibrateInfo->TxIQC_8723B[PATH_S0][IDX_0xC9C][KEY] = rOFDM0_XDTxAFE; */
-/* pRFCalibrateInfo->TxIQC_8723B[PATH_S0][IDX_0xC9C][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XDTxAFE, bMaskDWord); */
pRFCalibrateInfo->TxIQC_8723B[PATH_S0][IDX_0xC94][KEY] = rOFDM0_XCTxAFE;
pRFCalibrateInfo->TxIQC_8723B[PATH_S0][IDX_0xC94][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XDTxAFE, bMaskDWord);
@@ -1023,7 +985,6 @@ static void _PHY_PathBFillIQKMatrix8723B(
if (bTxOnly) {
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][KEY] = rOFDM0_XARxIQImbalance;
-/* pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XARxIQImbalance, bMaskDWord); */
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][VAL] = 0x40000100;
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xCA0][KEY] = rOFDM0_RxIQExtAnta;
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xCA0][VAL] = 0x0fffffff & PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_RxIQExtAnta, bMaskDWord);
@@ -1039,15 +1000,12 @@ static void _PHY_PathBFillIQKMatrix8723B(
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xC14][VAL] = PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_XBRxIQImbalance, bMaskDWord);
reg = (result[final_candidate][7] >> 6) & 0xF;
-/* PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_AGCRSSITable, 0x0000F000, reg); */
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xCA0][KEY] = rOFDM0_RxIQExtAnta;
pRFCalibrateInfo->RxIQC_8723B[PATH_S0][IDX_0xCA0][VAL] = (reg << 28)|(PHY_QueryBBReg(pDM_Odm->Adapter, rOFDM0_RxIQExtAnta, bMaskDWord)&0x0fffffff);
}
}
-/* */
/* 2011/07/26 MH Add an API for testing IQK fail case. */
-/* */
/* MP Already declare in odm.c */
void ODM_SetIQCbyRFpath(struct dm_odm_t *pDM_Odm, u32 RFpath)
@@ -1324,8 +1282,6 @@ static void phy_IQCalibrate_8723B(
/* Note: IQ calibration must be performed after loading */
/* PHY_REG.txt , and radio_a, radio_b.txt */
- /* u32 bbvalue; */
-
if (t == 0) {
/* Save ADDA parameters, turn Path A ADDA on */
@@ -1338,25 +1294,15 @@ static void phy_IQCalibrate_8723B(
/* no serial mode */
- /* save RF path for 8723B */
-/* Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); */
-/* Path_SEL_RF = PHY_QueryRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, 0xfffff); */
-
/* MAC settings */
_PHY_MACSettingCalibration8723B(padapter, IQK_MAC_REG, pDM_Odm->RFCalibrateInfo.IQK_MAC_backup);
/* BB setting */
- /* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_RFMOD, BIT24, 0x00); */
PHY_SetBBReg(pDM_Odm->Adapter, rCCK0_AFESetting, 0x0f000000, 0xf);
PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_TRxPathEnable, bMaskDWord, 0x03a05600);
PHY_SetBBReg(pDM_Odm->Adapter, rOFDM0_TRMuxPar, bMaskDWord, 0x000800e4);
PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_XCD_RFInterfaceSW, bMaskDWord, 0x22204000);
-/* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_XAB_RFInterfaceSW, BIT10, 0x01); */
-/* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_XAB_RFInterfaceSW, BIT26, 0x01); */
-/* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_XA_RFInterfaceOE, BIT10, 0x00); */
-/* PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_XB_RFInterfaceOE, BIT10, 0x00); */
-
/* RX IQ calibration setting for 8723B D cut large current issue when leaving IPS */
PHY_SetBBReg(pDM_Odm->Adapter, rFPGA0_IQK, bMaskH3Bytes, 0x000000);
@@ -1388,8 +1334,6 @@ static void phy_IQCalibrate_8723B(
for (i = 0 ; i < retryCount ; i++) {
PathAOK = phy_PathA_RxIQK8723B(padapter, is2T, RF_Path);
if (PathAOK == 0x03) {
-/* result[t][0] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; */
-/* result[t][1] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; */
result[t][2] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord)&0x3FF0000)>>16;
result[t][3] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord)&0x3FF0000)>>16;
break;
@@ -1417,8 +1361,6 @@ static void phy_IQCalibrate_8723B(
for (i = 0 ; i < retryCount ; i++) {
PathBOK = phy_PathB_RxIQK8723B(padapter, is2T);
if (PathBOK == 0x03) {
-/* result[t][0] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_Before_IQK_A, bMaskDWord)&0x3FF0000)>>16; */
-/* result[t][1] = (PHY_QueryBBReg(pDM_Odm->Adapter, rTx_Power_After_IQK_A, bMaskDWord)&0x3FF0000)>>16; */
result[t][6] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_Before_IQK_A_2, bMaskDWord)&0x3FF0000)>>16;
result[t][7] = (PHY_QueryBBReg(pDM_Odm->Adapter, rRx_Power_After_IQK_A_2, bMaskDWord)&0x3FF0000)>>16;
break;
@@ -1440,10 +1382,6 @@ static void phy_IQCalibrate_8723B(
_PHY_ReloadADDARegisters8723B(padapter, IQK_BB_REG_92C, pDM_Odm->RFCalibrateInfo.IQK_BB_backup, IQK_BB_REG_NUM);
- /* Reload RF path */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord, Path_SEL_BB); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, 0xfffff, Path_SEL_RF); */
-
/* Allen initial gain 0xc50 */
/* Restore RX initial gain */
PHY_SetBBReg(pDM_Odm->Adapter, 0xc50, bMaskByte0, 0x50);
@@ -1553,7 +1491,6 @@ void PHY_IQCalibrate_8723B(
rOFDM0_XDTxAFE,
rOFDM0_RxIQExtAnta
};
-/* u32 Path_SEL_BB = 0; */
u32 GNT_BT_default;
if (!ODM_CheckPowerStatus(padapter))
@@ -1618,13 +1555,6 @@ void PHY_IQCalibrate_8723B(
/* save default GNT_BT */
GNT_BT_default = PHY_QueryBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord);
- /* Save RF Path */
-/* Path_SEL_BB = PHY_QueryBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord); */
-/* Path_SEL_RF = PHY_QueryRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, 0xfffff); */
-
- /* set GNT_BT = 0, pause BT traffic */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x764, BIT12, 0x0); */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x764, BIT11, 0x1); */
for (i = 0; i < 8; i++) {
result[0][i] = 0;
@@ -1716,9 +1646,6 @@ void PHY_IQCalibrate_8723B(
/* restore GNT_BT */
PHY_SetBBReg(pDM_Odm->Adapter, 0x764, bMaskDWord, GNT_BT_default);
- /* Restore RF Path */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x948, bMaskDWord, Path_SEL_BB); */
-/* PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xb0, 0xfffff, Path_SEL_RF); */
/* Resotr RX mode table parameter */
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, RF_WE_LUT, 0x80000, 0x1);
@@ -1728,10 +1655,6 @@ void PHY_IQCalibrate_8723B(
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0xed, 0x20, 0x1);
PHY_SetRFReg(pDM_Odm->Adapter, RF_PATH_A, 0x43, bRFRegOffsetMask, 0x300bd);
- /* set GNT_BT = HW control */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x764, BIT12, 0x0); */
-/* PHY_SetBBReg(pDM_Odm->Adapter, 0x764, BIT11, 0x0); */
-
if (Is2ant) {
if (RF_Path == 0x0) /* S1 */
ODM_SetIQCbyRFpath(pDM_Odm, 0);
diff --git a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.h b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.h
index 14b328378b8b..9795bbcf0b35 100644
--- a/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.h
+++ b/drivers/staging/rtl8723bs/hal/HalPhyRf_8723B.h
@@ -13,7 +13,7 @@
#define IQK_DEFERRED_TIME_8723B 4
#define index_mapping_NUM_8723B 15
#define AVG_THERMAL_NUM_8723B 4
-#define RF_T_METER_8723B 0x42 /* */
+#define RF_T_METER_8723B 0x42
void ConfigureTxpowerTrack_8723B(struct txpwrtrack_cfg *pConfig);
@@ -35,14 +35,10 @@ void PHY_IQCalibrate_8723B(
void ODM_SetIQCbyRFpath(struct dm_odm_t *pDM_Odm, u32 RFpath);
-/* */
/* LC calibrate */
-/* */
void PHY_LCCalibrate_8723B(struct dm_odm_t *pDM_Odm);
-/* */
/* AP calibrate */
-/* */
void PHY_DigitalPredistortion_8723B(struct adapter *padapter);
void _PHY_SaveADDARegisters_8723B(
diff --git a/drivers/staging/rtl8723bs/hal/HalPwrSeqCmd.c b/drivers/staging/rtl8723bs/hal/HalPwrSeqCmd.c
index c254e3481cc2..d23fe86d53bc 100644
--- a/drivers/staging/rtl8723bs/hal/HalPwrSeqCmd.c
+++ b/drivers/staging/rtl8723bs/hal/HalPwrSeqCmd.c
@@ -23,15 +23,11 @@
#include <drv_types.h>
#include <HalPwrSeqCmd.h>
-/* */
/* Description: */
/* This routine deal with the Power Configuration CMDs parsing for RTL8723/RTL8188E Series IC. */
-/* */
/* Assumption: */
/* We should follow specific format which was released from HW SD. */
-/* */
/* 2011.07.07, added by Roger. */
-/* */
u8 HalPwrSeqCmdParsing(
struct adapter *padapter,
u8 CutVersion,
@@ -64,10 +60,8 @@ u8 HalPwrSeqCmdParsing(
case PWR_CMD_WRITE:
offset = GET_PWR_CFG_OFFSET(PwrCfgCmd);
- /* */
/* <Roger_Notes> We should deal with interface specific address mapping for some interfaces, e.g., SDIO interface */
/* 2011.07.07. */
- /* */
if (GET_PWR_CFG_BASE(PwrCfgCmd) == PWR_BASEADDR_SDIO) {
/* Read Back SDIO Local value */
value = SdioLocalCmd52Read1Byte(padapter, offset);
diff --git a/drivers/staging/rtl8723bs/hal/hal_btcoex.c b/drivers/staging/rtl8723bs/hal/hal_btcoex.c
index 61cdc27a64ac..a06e2e5b516c 100644
--- a/drivers/staging/rtl8723bs/hal/hal_btcoex.c
+++ b/drivers/staging/rtl8723bs/hal/hal_btcoex.c
@@ -15,9 +15,7 @@ struct btc_coexist GLBtCoexist;
static u8 GLBtcWiFiInScanState;
static u8 GLBtcWiFiInIQKState;
-/* */
/* Debug related function */
-/* */
static u8 halbtcoutsrc_IsBtCoexistAvailable(struct btc_coexist *pBtCoexist)
{
if (!pBtCoexist->bBinded || !pBtCoexist->Adapter)
@@ -197,11 +195,9 @@ static u32 _halbtcoutsrc_GetWifiLinkStatus(struct adapter *padapter)
static u32 halbtcoutsrc_GetWifiLinkStatus(struct btc_coexist *pBtCoexist)
{
- /* */
/* return value: */
/* [31:16]=> connected port number */
/* [15:0]=> port connected bit define */
- /* */
struct adapter *padapter;
u32 retVal;
@@ -539,7 +535,6 @@ static u8 halbtcoutsrc_Set(void *pBtcContext, u8 setType, void *pInBuf)
case BTC_SET_ACT_CTRL_8723B_ANT:
ret = false;
break;
- /* */
default:
ret = false;
break;
@@ -548,9 +543,7 @@ static u8 halbtcoutsrc_Set(void *pBtcContext, u8 setType, void *pInBuf)
return ret;
}
-/* */
/* IO related function */
-/* */
static u8 halbtcoutsrc_Read1Byte(void *pBtcContext, u32 RegAddr)
{
struct btc_coexist *pBtCoexist;
@@ -746,9 +739,7 @@ static void halbtcoutsrc_FillH2cCmd(void *pBtcContext, u8 elementId, u32 cmdLen,
rtw_hal_fill_h2c_cmd(padapter, elementId, cmdLen, pCmdBuffer);
}
-/* */
/* Extern functions called by other module */
-/* */
static u8 EXhalbtcoutsrc_BindBtCoexWithAdapter(void *padapter)
{
struct btc_coexist *pBtCoexist = &GLBtCoexist;
@@ -783,8 +774,6 @@ void hal_btcoex_Initialize(void *padapter)
pBtCoexist = &GLBtCoexist;
- /* pBtCoexist->statistics.cntBind++; */
-
pBtCoexist->chipInterface = BTC_INTF_SDIO;
EXhalbtcoutsrc_BindBtCoexWithAdapter(padapter);
@@ -874,15 +863,10 @@ void EXhalbtcoutsrc_IpsNotify(struct btc_coexist *pBtCoexist, u8 type)
else
ipsType = BTC_IPS_ENTER;
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_IpsNotify(pBtCoexist, ipsType);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_IpsNotify(pBtCoexist, ipsType);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_LpsNotify(struct btc_coexist *pBtCoexist, u8 type)
@@ -925,15 +909,10 @@ void EXhalbtcoutsrc_ScanNotify(struct btc_coexist *pBtCoexist, u8 type)
GLBtcWiFiInScanState = false;
}
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_ScanNotify(pBtCoexist, scanType);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_ScanNotify(pBtCoexist, scanType);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_ConnectNotify(struct btc_coexist *pBtCoexist, u8 action)
@@ -951,15 +930,10 @@ void EXhalbtcoutsrc_ConnectNotify(struct btc_coexist *pBtCoexist, u8 action)
else
assoType = BTC_ASSOCIATE_FINISH;
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_ConnectNotify(pBtCoexist, assoType);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_ConnectNotify(pBtCoexist, assoType);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_MediaStatusNotify(struct btc_coexist *pBtCoexist, enum
@@ -979,15 +953,10 @@ void EXhalbtcoutsrc_MediaStatusNotify(struct btc_coexist *pBtCoexist, enum
else
mStatus = BTC_MEDIA_DISCONNECT;
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_MediaStatusNotify(pBtCoexist, mStatus);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_MediaStatusNotify(pBtCoexist, mStatus);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 pktType)
@@ -1010,15 +979,10 @@ void EXhalbtcoutsrc_SpecialPacketNotify(struct btc_coexist *pBtCoexist, u8 pktTy
return;
}
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_SpecialPacketNotify(pBtCoexist, packetType);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_SpecialPacketNotify(pBtCoexist, packetType);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_BtInfoNotify(struct btc_coexist *pBtCoexist, u8 *tmpBuf, u8 length)
@@ -1028,15 +992,10 @@ void EXhalbtcoutsrc_BtInfoNotify(struct btc_coexist *pBtCoexist, u8 *tmpBuf, u8
pBtCoexist->statistics.cntBtInfoNotify++;
- /* All notify is called in cmd thread, don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_BtInfoNotify(pBtCoexist, tmpBuf, length);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_BtInfoNotify(pBtCoexist, tmpBuf, length);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_HaltNotify(struct btc_coexist *pBtCoexist)
@@ -1057,10 +1016,8 @@ void EXhalbtcoutsrc_PnpNotify(struct btc_coexist *pBtCoexist, u8 pnpState)
if (!halbtcoutsrc_IsBtCoexistAvailable(pBtCoexist))
return;
- /* */
/* currently only 1ant we have to do the notification, */
/* once pnp is notified to sleep state, we have to leave LPS that we can sleep normally. */
- /* */
if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_PnpNotify(pBtCoexist, pnpState);
@@ -1075,15 +1032,10 @@ void EXhalbtcoutsrc_Periodical(struct btc_coexist *pBtCoexist)
pBtCoexist->statistics.cntPeriodical++;
/* Periodical should be called in cmd thread, */
- /* don't need to leave low power again */
-/* halbtcoutsrc_LeaveLowPower(pBtCoexist); */
-
if (pBtCoexist->boardInfo.btdmAntNum == 2)
EXhalbtc8723b2ant_Periodical(pBtCoexist);
else if (pBtCoexist->boardInfo.btdmAntNum == 1)
EXhalbtc8723b1ant_Periodical(pBtCoexist);
-
-/* halbtcoutsrc_NormalLowPower(pBtCoexist); */
}
void EXhalbtcoutsrc_SetAntNum(u8 type, u8 antNum)
@@ -1093,16 +1045,12 @@ void EXhalbtcoutsrc_SetAntNum(u8 type, u8 antNum)
GLBtCoexist.boardInfo.btdmAntNum = antNum;
} else if (type == BT_COEX_ANT_TYPE_ANTDIV) {
GLBtCoexist.boardInfo.btdmAntNum = antNum;
- /* GLBtCoexist.boardInfo.btdmAntPos = BTC_ANTENNA_AT_MAIN_PORT; */
} else if (type == BT_COEX_ANT_TYPE_DETECTED) {
GLBtCoexist.boardInfo.btdmAntNum = antNum;
- /* GLBtCoexist.boardInfo.btdmAntPos = BTC_ANTENNA_AT_MAIN_PORT; */
}
}
-/* */
/* Currently used by 8723b only, S0 or S1 */
-/* */
void EXhalbtcoutsrc_SetSingleAntPath(u8 singleAntPath)
{
GLBtCoexist.boardInfo.singleAntPath = singleAntPath;
diff --git a/drivers/staging/rtl8723bs/hal/hal_com.c b/drivers/staging/rtl8723bs/hal/hal_com.c
index 2c856a2721b2..656c75ded16f 100644
--- a/drivers/staging/rtl8723bs/hal/hal_com.c
+++ b/drivers/staging/rtl8723bs/hal/hal_com.c
@@ -247,13 +247,13 @@ u8 HwRateToMRate(u8 rate)
return ret_rate;
}
-void HalSetBrateCfg(struct adapter *Adapter, u8 *mBratesOS, u16 *pBrateCfg)
+void HalSetBrateCfg(struct adapter *Adapter, u8 *basic_rates, u16 *pBrateCfg)
{
u8 i, is_brate, brate;
for (i = 0; i < NDIS_802_11_LENGTH_RATES_EX; i++) {
- is_brate = mBratesOS[i] & IEEE80211_BASIC_RATE_MASK;
- brate = mBratesOS[i] & 0x7f;
+ is_brate = basic_rates[i] & IEEE80211_BASIC_RATE_MASK;
+ brate = basic_rates[i] & 0x7f;
if (is_brate) {
switch (brate) {
diff --git a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
index df0eaff4c841..3712b38cd37d 100644
--- a/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
+++ b/drivers/staging/rtl8723bs/hal/hal_com_phycfg.c
@@ -77,7 +77,7 @@ static void phy_StoreTxPowerByRateBase(struct adapter *padapter)
}
u8 PHY_GetRateSectionIndexOfTxPowerByRate(
- struct adapter *padapter, u32 RegAddr, u32 BitMask
+ struct adapter *padapter, u32 reg_addr, u32 bit_mask
)
{
struct hal_com_data *pHalData = GET_HAL_DATA(padapter);
@@ -85,7 +85,7 @@ u8 PHY_GetRateSectionIndexOfTxPowerByRate(
u8 index = 0;
if (pDM_Odm->PhyRegPgVersion == 0) {
- switch (RegAddr) {
+ switch (reg_addr) {
case rTxAGC_A_Rate18_06:
index = 0;
break;
@@ -96,9 +96,9 @@ u8 PHY_GetRateSectionIndexOfTxPowerByRate(
index = 6;
break;
case rTxAGC_B_CCK11_A_CCK2_11:
- if (BitMask == bMaskH3Bytes)
+ if (bit_mask == bMaskH3Bytes)
index = 7;
- else if (BitMask == 0x000000ff)
+ else if (bit_mask == 0x000000ff)
index = 15;
break;
@@ -739,7 +739,7 @@ s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 reg_pwr_tbl_sel,
return pwr_lmt;
}
-void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter)
+void phy_tx_power_limit_to_index(struct adapter *Adapter)
{
struct hal_com_data *pHalData = GET_HAL_DATA(Adapter);
struct registry_priv *r = &Adapter->registrypriv;
diff --git a/drivers/staging/rtl8723bs/hal/hal_intf.c b/drivers/staging/rtl8723bs/hal/hal_intf.c
index 2caade1a8bdd..1443875d1369 100644
--- a/drivers/staging/rtl8723bs/hal/hal_intf.c
+++ b/drivers/staging/rtl8723bs/hal/hal_intf.c
@@ -115,8 +115,10 @@ s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe)
/*
* [IMPORTANT] This function would be run in interrupt context.
*/
-s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
+int rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
{
+ int ret;
+
update_mgntframe_attrib_addr(padapter, pmgntframe);
/* pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; */
/* pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; */
@@ -130,7 +132,10 @@ s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
pmgntframe->attrib.encrypt = _AES_;
pmgntframe->attrib.bswenc = true;
}
- rtw_mgmt_xmitframe_coalesce(padapter, pmgntframe->pkt, pmgntframe);
+ ret = rtw_mgmt_xmitframe_coalesce(padapter, pmgntframe->pkt, pmgntframe);
+
+ if (ret)
+ return ret;
}
return rtl8723bs_mgnt_xmit(padapter, pmgntframe);
diff --git a/drivers/staging/rtl8723bs/hal/odm.c b/drivers/staging/rtl8723bs/hal/odm.c
index d18df407e365..f3989fa33d9f 100644
--- a/drivers/staging/rtl8723bs/hal/odm.c
+++ b/drivers/staging/rtl8723bs/hal/odm.c
@@ -358,8 +358,6 @@ bool ODM_RAStateCheck(
return false;
}
-/* */
-
/* 3 ============================================================ */
/* 3 RSSI Monitor */
/* 3 ============================================================ */
@@ -456,8 +454,7 @@ static void odm_RSSIMonitorCheck(struct dm_odm_t *pDM_Odm)
return;
odm_RSSIMonitorCheckCE(pDM_Odm);
-
-} /* odm_RSSIMonitorCheck */
+}
/* 3 ============================================================ */
/* 3 SW Antenna Diversity */
@@ -552,19 +549,14 @@ void ODM_TXPowerTrackingCheck(struct dm_odm_t *pDM_Odm)
pDM_Odm->RFCalibrateInfo.TM_Trigger = 1;
return;
- } else {
- ODM_TXPowerTrackingCallback_ThermalMeter(Adapter);
- pDM_Odm->RFCalibrateInfo.TM_Trigger = 0;
}
+ ODM_TXPowerTrackingCallback_ThermalMeter(Adapter);
+ pDM_Odm->RFCalibrateInfo.TM_Trigger = 0;
}
-/* */
/* 3 Export Interface */
-/* */
-/* */
/* 2011/09/21 MH Add to describe different team necessary resource allocate?? */
-/* */
void ODM_DMInit(struct dm_odm_t *pDM_Odm)
{
@@ -586,11 +578,9 @@ void ODM_DMInit(struct dm_odm_t *pDM_Odm)
odm_SwAntDetectInit(pDM_Odm);
}
-/* */
/* 2011/09/20 MH This is the entry pointer for all team to execute HW out source DM. */
/* You can not add any dummy function here, be care, you can only use DM structure */
/* to perform any new ODM_DM. */
-/* */
void ODM_DMWatchdog(struct dm_odm_t *pDM_Odm)
{
odm_CommonInfoSelfUpdate(pDM_Odm);
@@ -633,18 +623,12 @@ void ODM_DMWatchdog(struct dm_odm_t *pDM_Odm)
pDM_Odm->PhyDbgInfo.NumQryBeaconPkt = 0;
}
-/* */
/* Init /.. Fixed HW value. Only init time. */
-/* */
void ODM_CmnInfoInit(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, u32 Value)
{
- /* */
/* This section is used for init value */
- /* */
switch (CmnInfo) {
- /* */
/* Fixed ODM value. */
- /* */
case ODM_CMNINFO_ABILITY:
pDM_Odm->SupportAbility = (u32)Value;
break;
@@ -729,13 +713,9 @@ void ODM_CmnInfoInit(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, u32 V
void ODM_CmnInfoHook(struct dm_odm_t *pDM_Odm, enum odm_cmninfo_e CmnInfo, void *pValue)
{
- /* */
/* Hook call by reference pointer. */
- /* */
switch (CmnInfo) {
- /* */
/* Dynamic call by reference pointer. */
- /* */
case ODM_CMNINFO_MAC_PHY_MODE:
pDM_Odm->pMacPhyMode = pValue;
break;
@@ -857,13 +837,9 @@ void ODM_CmnInfoPtrArrayHook(
void *pValue
)
{
- /* */
/* Hook call by reference pointer. */
- /* */
switch (CmnInfo) {
- /* */
/* Dynamic call by reference pointer. */
- /* */
case ODM_CMNINFO_STA_STATUS:
pDM_Odm->pODM_StaInfo[Index] = (PSTA_INFO_T)pValue;
break;
@@ -875,14 +851,10 @@ void ODM_CmnInfoPtrArrayHook(
}
-/* */
/* Update Band/CHannel/.. The values are dynamic but non-per-packet. */
-/* */
void ODM_CmnInfoUpdate(struct dm_odm_t *pDM_Odm, u32 CmnInfo, u64 Value)
{
- /* */
/* This init variable may be changed in run time. */
- /* */
switch (CmnInfo) {
case ODM_CMNINFO_LINK_IN_PROGRESS:
pDM_Odm->bLinkInProcess = (bool)Value;
diff --git a/drivers/staging/rtl8723bs/hal/odm.h b/drivers/staging/rtl8723bs/hal/odm.h
index a20b48660e63..3532f0d79363 100644
--- a/drivers/staging/rtl8723bs/hal/odm.h
+++ b/drivers/staging/rtl8723bs/hal/odm.h
@@ -197,9 +197,8 @@ struct odm_rate_adaptive {
#define DM_Type_ByFW 0
#define DM_Type_ByDriver 1
-/* */
/* Declare for common info */
-/* */
+
#define MAX_PATH_NUM_8723B 1
#define IQK_THRESHOLD 8
@@ -262,9 +261,7 @@ struct odm_mac_status_info {
u8 test;
};
-/* */
/* 2011/10/20 MH Define Common info enum for all team. */
-/* */
enum odm_cmninfo_e {
/* Fixed value: */
@@ -350,9 +347,7 @@ enum odm_cmninfo_e {
/* 2011/10/20 MH Define ODM support ability. ODM_CMNINFO_ABILITY */
enum { /* _ODM_Support_Ability_Definition */
- /* */
/* BB ODM section BIT 0-15 */
- /* */
ODM_BB_DIG = BIT(0),
ODM_BB_RA_MASK = BIT(1),
ODM_BB_DYNAMIC_TXPWR = BIT(2),
@@ -382,7 +377,6 @@ enum { /* _ODM_Support_Ability_Definition */
/* ODM_CMNINFO_INTERFACE */
enum { /* tag_ODM_Support_Interface_Definition */
ODM_ITRF_SDIO = 0x4,
- ODM_ITRF_ALL = 0x7,
};
/* ODM_CMNINFO_IC_TYPE */
@@ -411,9 +405,7 @@ enum { /* tag_ODM_Fab_Version_Definition */
ODM_UMC = 1,
};
-/* */
/* For example 1T2R (A+AB = BIT0|BIT4|BIT5) */
-/* */
enum { /* tag_ODM_RF_Type_Definition */
ODM_1T1R = 0,
ODM_1T2R = 1,
@@ -425,9 +417,7 @@ enum { /* tag_ODM_RF_Type_Definition */
ODM_4T4R = 7,
};
-/* */
/* ODM Dynamic common info value definition */
-/* */
/* ODM_CMNINFO_WM_MODE */
enum { /* tag_Wireless_Mode_Definition */
@@ -532,8 +522,6 @@ struct odm_rf_cal_t { /* ODM_RF_Calibration_Structure */
u8 DeltaSwingTableIdx_2GA_P_8188E[DELTA_SWINGIDX_SIZE];
u8 DeltaSwingTableIdx_2GA_N_8188E[DELTA_SWINGIDX_SIZE];
- /* */
-
/* for IQK */
u32 RegC04;
u32 Reg874;
@@ -568,10 +556,8 @@ struct odm_rf_cal_t { /* ODM_RF_Calibration_Structure */
u32 TxLOK[2];
};
-/* */
-/* ODM Dynamic common info value definition */
-/* */
+/* ODM Dynamic common info value definition */
struct fat_t { /* _FAST_ANTENNA_TRAINNING_ */
u8 Bssid[6];
u8 antsel_rx_keep_0;
@@ -634,9 +620,7 @@ enum phy_reg_pg_type { /* _BASEBAND_CONFIG_PHY_REG_PG_VALUE_TYPE */
PHY_REG_PG_EXACT_VALUE = 1
};
-/* */
/* Antenna detection information from single tone mechanism, added by Roger, 2012.11.27. */
-/* */
struct ant_detected_info {
bool bAntDetected;
u32 dBForAntA;
@@ -644,9 +628,7 @@ struct ant_detected_info {
u32 dBForAntO;
};
-/* */
/* 2011/09/22 MH Copy from SD4 defined structure. We use to support PHY DM integration. */
-/* */
struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
struct adapter *Adapter; /* For CE/NIC team */
/* WHen you use Adapter or priv pointer, you must make sure the pointer is ready. */
@@ -669,9 +651,7 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
/* 1 COMMON INFORMATION */
- /* */
/* Init Value */
- /* */
/* HOOK BEFORE REG INIT----------- */
/* ODM Platform info AP/ADSL/CE/MP = 1/2/3/4 */
u8 SupportPlatform;
@@ -709,9 +689,8 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
u8 AntDivType;
/* HOOK BEFORE REG INIT----------- */
- /* */
/* Dynamic Value */
- /* */
+
/* POINTER REFERENCE----------- */
u8 u8_temp;
@@ -831,16 +810,13 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
u8 Adaptivity_IGI_upper;
u8 NHM_cnt_0;
- /* */
/* 2 Define STA info. */
/* _ODM_STA_INFO */
/* 2012/01/12 MH For MP, we need to reduce one array pointer for default port.?? */
PSTA_INFO_T pODM_StaInfo[ODM_ASSOCIATE_ENTRY_NUM];
- /* */
/* 2012/02/14 MH Add to share 88E ra with other SW team. */
/* We need to colelct all support abilit to a proper area. */
- /* */
bool RaSupport88E;
/* Define ........... */
@@ -851,9 +827,7 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
/* Latest packet phy info (ODM write) */
struct odm_mac_status_info *pMacInfo;
- /* */
/* ODM Structure */
- /* */
struct fat_t DM_FatTable;
struct dig_t DM_DigTable;
struct ps_t DM_PSTable;
@@ -870,9 +844,7 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
u32 WMMEDCA_BE;
struct pathdiv_t DM_PathDiv;
/* Copy from SD4 structure */
- /* */
/* ================================================== */
- /* */
/* common */
@@ -900,9 +872,7 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
struct odm_rf_cal_t RFCalibrateInfo;
- /* */
/* TX power tracking */
- /* */
u8 BbSwingIdxOfdm[MAX_RF_PATH];
u8 BbSwingIdxOfdmCurrent;
u8 BbSwingIdxOfdmBase[MAX_RF_PATH];
@@ -925,9 +895,8 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
bool Modify_TxAGC_Flag_PathA_CCK;
s8 KfreeOffset[MAX_RF_PATH];
- /* */
+
/* ODM system resource. */
- /* */
/* ODM relative time. */
struct timer_list PathDivSwitchTimer;
@@ -936,10 +905,6 @@ struct dm_odm_t { /* DM_Out_Source_Dynamic_Mechanism_Structure */
struct timer_list FastAntTrainingTimer;
/* ODM relative workitem. */
-
- #if (BEAMFORMING_SUPPORT == 1)
- RT_BEAMFORMING_INFO BeamformingInfo;
- #endif
};
enum ODM_BB_Config_Type {
@@ -1023,16 +988,12 @@ enum { /* tag_RF_Type_Definition */
/* Maximal number of antenna detection mechanism needs to perform, added by Roger, 2011.12.28. */
#define MAX_ANTENNA_DETECTION_CNT 10
-/* */
/* Extern Global Variables. */
-/* */
extern u32 OFDMSwingTable_New[OFDM_TABLE_SIZE];
extern u8 CCKSwingTable_Ch1_Ch13_New[CCK_TABLE_SIZE][8];
extern u8 CCKSwingTable_Ch14_New[CCK_TABLE_SIZE][8];
-/* */
/* check Sta pointer valid or not */
-/* */
#define IS_STA_VALID(pSta) (pSta)
/* 20100514 Joseph: Add definition for antenna switching test after link. */
/* This indicates two different the steps. */
@@ -1068,10 +1029,6 @@ u32 ODM_Get_Rate_Bitmap(
u8 rssi_level
);
-#if (BEAMFORMING_SUPPORT == 1)
-BEAMFORMING_CAP Beamforming_GetEntryBeamCapByMacId(PMGNT_INFO pMgntInfo, u8 MacId);
-#endif
-
void odm_TXPowerTrackingInit(struct dm_odm_t *pDM_Odm);
void ODM_DMInit(struct dm_odm_t *pDM_Odm);
diff --git a/drivers/staging/rtl8723bs/hal/odm_DIG.h b/drivers/staging/rtl8723bs/hal/odm_DIG.h
index 5517ef79bdf5..1482290b263f 100644
--- a/drivers/staging/rtl8723bs/hal/odm_DIG.h
+++ b/drivers/staging/rtl8723bs/hal/odm_DIG.h
@@ -65,7 +65,6 @@ struct false_ALARM_STATISTICS {
u32 Cnt_Crc8_fail;
u32 Cnt_Mcs_fail;
u32 Cnt_Ofdm_fail;
- u32 Cnt_Ofdm_fail_pre; /* For RTL8881A */
u32 Cnt_Cck_fail;
u32 Cnt_all;
u32 Cnt_Fast_Fsync;
diff --git a/drivers/staging/rtl8723bs/hal/odm_DynamicTxPower.h b/drivers/staging/rtl8723bs/hal/odm_DynamicTxPower.h
index e2d244324ebe..4431a3ddf175 100644
--- a/drivers/staging/rtl8723bs/hal/odm_DynamicTxPower.h
+++ b/drivers/staging/rtl8723bs/hal/odm_DynamicTxPower.h
@@ -11,7 +11,6 @@
#define TX_POWER_NEAR_FIELD_THRESH_LVL2 74
#define TX_POWER_NEAR_FIELD_THRESH_LVL1 67
#define TX_POWER_NEAR_FIELD_THRESH_AP 0x3F
-#define TX_POWER_NEAR_FIELD_THRESH_8812 60
#define TxHighPwrLevel_Normal 0
#define TxHighPwrLevel_Level1 1
diff --git a/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c b/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c
index 9baca2aea80e..f59a6ebc773d 100644
--- a/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c
+++ b/drivers/staging/rtl8723bs/hal/odm_EdcaTurboCheck.c
@@ -37,7 +37,7 @@ void ODM_EdcaTurboInit(void *pDM_VOID)
pDM_Odm->DM_EDCA_Table.bCurrentTurboEDCA = false;
pDM_Odm->DM_EDCA_Table.bIsCurRDLState = false;
Adapter->recvpriv.bIsAnyNonBEPkts = false;
-} /* ODM_InitEdcaTurbo */
+}
void odm_EdcaTurboCheck(void *pDM_VOID)
{
@@ -51,7 +51,7 @@ void odm_EdcaTurboCheck(void *pDM_VOID)
return;
odm_EdcaTurboCheckCE(pDM_Odm);
-} /* odm_CheckEdcaTurbo */
+}
void odm_EdcaTurboCheckCE(void *pDM_VOID)
{
diff --git a/drivers/staging/rtl8723bs/hal/odm_HWConfig.c b/drivers/staging/rtl8723bs/hal/odm_HWConfig.c
index 1716252641d3..34b0369a7936 100644
--- a/drivers/staging/rtl8723bs/hal/odm_HWConfig.c
+++ b/drivers/staging/rtl8723bs/hal/odm_HWConfig.c
@@ -46,9 +46,7 @@ s32 odm_signal_scale_mapping(struct dm_odm_t *dm_odm, s32 curr_sig)
static u8 odm_evm_db_to_percentage(s8 value)
{
- /* */
/* -33dB~0dB to 0%~99% */
- /* */
s8 ret_val;
ret_val = value;
@@ -383,9 +381,7 @@ static void odm_Process_RSSIForDM(
}
}
-/* */
/* Endianness before calling this API */
-/* */
void odm_phy_status_query(struct dm_odm_t *dm_odm, struct odm_phy_info *phy_info,
u8 *phy_status, struct odm_packet_info *pkt_info)
{
@@ -396,10 +392,7 @@ void odm_phy_status_query(struct dm_odm_t *dm_odm, struct odm_phy_info *phy_info
odm_Process_RSSIForDM(dm_odm, phy_info, pkt_info);
}
-/* */
/* If you want to add a new IC, Please follow below template and generate a new one. */
-/* */
-/* */
enum hal_status ODM_ConfigRFWithHeaderFile(
struct dm_odm_t *pDM_Odm,
diff --git a/drivers/staging/rtl8723bs/hal/odm_HWConfig.h b/drivers/staging/rtl8723bs/hal/odm_HWConfig.h
index 615145812ed2..ca3380328a72 100644
--- a/drivers/staging/rtl8723bs/hal/odm_HWConfig.h
+++ b/drivers/staging/rtl8723bs/hal/odm_HWConfig.h
@@ -8,9 +8,7 @@
#ifndef __HALHWOUTSRC_H__
#define __HALHWOUTSRC_H__
-/* */
/* structure and define */
-/* */
struct phy_rx_agc_info_t {
#if (ODM_ENDIAN_TYPE == ODM_ENDIAN_LITTLE)
diff --git a/drivers/staging/rtl8723bs/hal/odm_precomp.h b/drivers/staging/rtl8723bs/hal/odm_precomp.h
index 2987857a8761..d4390fd203f1 100644
--- a/drivers/staging/rtl8723bs/hal/odm_precomp.h
+++ b/drivers/staging/rtl8723bs/hal/odm_precomp.h
@@ -19,7 +19,6 @@
/* include <drv_types.h> */
/* include <rtw_byteorder.h> */
/* include <hal_intf.h> */
-#define BEAMFORMING_SUPPORT 0
/* 2 Hardware Parameter Files */
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
index d2b44ad60a4c..734fb9bb1867 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c
@@ -635,7 +635,6 @@ void rtl8723b_download_rsvd_page(struct adapter *padapter, u8 mstatus)
DLBcnCount++;
do {
yield();
- /* mdelay(10); */
/* check rsvd page download OK. */
rtw_hal_get_hwreg(padapter, HW_VAR_BCN_VALID, (u8 *)(&bcn_valid));
poll++;
@@ -895,7 +894,6 @@ void rtl8723b_download_BTCoex_AP_mode_rsvd_page(struct adapter *padapter)
DLBcnCount++;
do {
yield();
-/* mdelay(10); */
/* check rsvd page download OK. */
rtw_hal_get_hwreg(padapter, HW_VAR_BCN_VALID, &bcn_valid);
poll++;
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c b/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c
index 13efbfa5b58a..dce96ec19409 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_dm.c
@@ -12,9 +12,7 @@
/* Global var */
-/* */
/* functions */
-/* */
static void Init_ODM_ComInfo_8723b(struct adapter *Adapter)
{
@@ -23,9 +21,7 @@ static void Init_ODM_ComInfo_8723b(struct adapter *Adapter)
struct dm_priv *pdmpriv = &pHalData->dmpriv;
u8 cut_ver, fab_ver;
- /* */
/* Init Value */
- /* */
memset(pDM_Odm, 0, sizeof(*pDM_Odm));
pDM_Odm->Adapter = Adapter;
@@ -76,12 +72,6 @@ static void Update_ODM_ComInfo_8723b(struct adapter *Adapter)
| ODM_RF_CALIBRATION
;
- /* */
- /* Pointer reference */
- /* */
- /* ODM_CMNINFO_MAC_PHY_MODE pHalData->MacPhyMode92D */
- /* ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_MAC_PHY_MODE,&(pDM_Odm->u8_temp)); */
-
ODM_CmnInfoUpdate(pDM_Odm, ODM_CMNINFO_ABILITY, pdmpriv->InitODMFlag);
ODM_CmnInfoHook(pDM_Odm, ODM_CMNINFO_TX_UNI, &(dvobj->traffic_stat.tx_bytes));
@@ -155,8 +145,6 @@ void rtl8723b_HalDmWatchDog(struct adapter *Adapter)
ODM_CmnInfoUpdate(&pHalData->odmpriv, ODM_CMNINFO_LINK, bLinked);
ODM_CmnInfoUpdate(&pHalData->odmpriv, ODM_CMNINFO_STATION_STATE, bsta_state);
- /* ODM_CmnInfoUpdate(&pHalData->odmpriv , ODM_CMNINFO_RSSI_MIN, pdmpriv->MinUndecoratedPWDBForDM); */
-
bBtDisabled = hal_btcoex_IsBtDisabled(Adapter);
ODM_CmnInfoUpdate(&pHalData->odmpriv, ODM_CMNINFO_BT_ENABLED,
@@ -216,7 +204,6 @@ void rtl8723b_HalDmWatchDog_in_LPS(struct adapter *Adapter)
if (!(pDM_Odm->SupportAbility & ODM_BB_RSSI_MONITOR))
goto skip_lps_dm;
- /* ODM_DMWatchdog(&pHalData->odmpriv); */
/* Do DIG by RSSI In LPS-32K */
/* 1 Find MIN-RSSI */
@@ -233,7 +220,6 @@ void rtl8723b_HalDmWatchDog_in_LPS(struct adapter *Adapter)
pDM_Odm->RSSI_Min = pdmpriv->MinUndecoratedPWDBForDM;
- /* if (pDM_DigTable->CurIGValue != pDM_Odm->RSSI_Min) */
if (
(pDM_DigTable->CurIGValue > pDM_Odm->RSSI_Min + 5) ||
(pDM_DigTable->CurIGValue < pDM_Odm->RSSI_Min - 5)
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
index 6a4a13544ca1..26c196b7f580 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
@@ -281,11 +281,8 @@ void rtl8723b_FirmwareSelfReset(struct adapter *padapter)
}
}
-/* */
/* Description: */
/* Download 8192C firmware code. */
-/* */
-/* */
s32 rtl8723b_FirmwareDownload(struct adapter *padapter, bool bUsedWoWLANFw)
{
s32 rtStatus = _SUCCESS;
@@ -430,14 +427,9 @@ void rtl8723b_InitializeFirmwareVars(struct adapter *padapter)
/* Init H2C counter. by tynli. 2009.12.09. */
pHalData->LastHMEBoxNum = 0;
-/* pHalData->H2CQueueHead = 0; */
-/* pHalData->H2CQueueTail = 0; */
-/* pHalData->H2CStopInsertQueue = false; */
}
-/* */
/* Efuse related code */
-/* */
static u8 hal_EfuseSwitchToBank(
struct adapter *padapter, u8 bank
)
@@ -628,9 +620,7 @@ static void hal_ReadEFuse_WiFi(
u16 i, total, used;
u8 efuse_usage = 0;
- /* */
/* Do NOT excess total size of EFuse table. Added by Roger, 2008.11.10. */
- /* */
if ((_offset + _size_byte) > EFUSE_MAX_MAP_LEN)
return;
@@ -717,9 +707,7 @@ static void hal_ReadEFuse_BT(
u16 i, total, used;
u8 efuse_usage;
- /* */
/* Do NOT excess total size of EFuse table. Added by Roger, 2008.11.10. */
- /* */
if ((_offset + _size_byte) > EFUSE_BT_MAP_LEN)
return;
@@ -791,9 +779,7 @@ static void hal_ReadEFuse_BT(
for (i = 0; i < _size_byte; i++)
pbuf[i] = efuseTbl[_offset+i];
- /* */
/* Calculate Efuse utilization. */
- /* */
Hal_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, &total);
used = (EFUSE_BT_REAL_BANK_CONTENT_LEN*(bank-1)) + eFuse_Addr - 1;
efuse_usage = (u8)((used*100)/total);
@@ -868,8 +854,6 @@ void _InitBurstPktLen_8723BS(struct adapter *Adapter)
rtw_write8(Adapter, REG_MAX_AGGR_NUM_8723B, 0x1F);
rtw_write8(Adapter, REG_PIFS_8723B, 0x00);
rtw_write8(Adapter, REG_FWHW_TXQ_CTRL_8723B, rtw_read8(Adapter, REG_FWHW_TXQ_CTRL)&(~BIT(7)));
- if (pHalData->AMPDUBurstMode)
- rtw_write8(Adapter, REG_AMPDU_BURST_MODE_8723B, 0x5F);
rtw_write8(Adapter, REG_AMPDU_MAX_TIME_8723B, 0x70);
/* ARFB table 9 for 11ac 5G 2SS */
@@ -934,23 +918,17 @@ void rtl8723b_SetBeaconRelatedRegisters(struct adapter *padapter)
bcn_ctrl_reg = REG_BCN_CTRL;
- /* */
/* ATIM window */
- /* */
rtw_write16(padapter, REG_ATIMWND, 2);
- /* */
/* Beacon interval (in unit of TU). */
- /* */
rtw_write16(padapter, REG_BCN_INTERVAL, pmlmeinfo->bcn_interval);
rtl8723b_InitBeaconParameters(padapter);
rtw_write8(padapter, REG_SLOT, 0x09);
- /* */
/* Reset TSF Timer to zero, added by Roger. 2008.06.24 */
- /* */
value32 = rtw_read32(padapter, REG_TCR);
value32 &= ~TSFRST;
rtw_write32(padapter, REG_TCR, value32);
@@ -1045,9 +1023,6 @@ void rtl8723b_init_default_value(struct adapter *padapter)
/* init dm default value */
pdmpriv->TM_Trigger = 0;/* for IQK */
-/* pdmpriv->binitialized = false; */
-/* pdmpriv->prv_traffic_idx = 3; */
-/* pdmpriv->initialize = 0; */
pdmpriv->ThermalValue_HP_index = 0;
for (i = 0; i < HP_THERMAL_NUM; i++)
@@ -1086,11 +1061,7 @@ u8 GetEEPROMSize8723B(struct adapter *padapter)
return size;
}
-/* */
-/* */
/* LLT R/W/Init function */
-/* */
-/* */
s32 rtl8723b_InitLLTTable(struct adapter *padapter)
{
unsigned long start, passing_time;
@@ -1154,7 +1125,6 @@ void Hal_InitPGData(struct adapter *padapter, u8 *PROMContent)
void Hal_EfuseParseIDCode(struct adapter *padapter, u8 *hwinfo)
{
struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
-/* struct hal_com_data *pHalData = GET_HAL_DATA(padapter); */
u16 EEPROMId;
/* Check 0x8129 again for making sure autoload status!! */
@@ -1334,8 +1304,6 @@ void Hal_EfuseParseBTCoexistInfo_8723B(
tempval = hwinfo[EEPROM_RF_BT_SETTING_8723B];
if (tempval != 0xFF) {
pHalData->EEPROMBluetoothAntNum = tempval & BIT(0);
- /* EFUSE_0xC3[6] == 0, S1(Main)-RF_PATH_A; */
- /* EFUSE_0xC3[6] == 1, S0(Aux)-RF_PATH_B */
if (tempval & BIT(6))
pHalData->ant_path = RF_PATH_B;
else
@@ -1411,7 +1379,6 @@ void Hal_EfuseParseVoltage_8723B(
{
struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
- /* memcpy(pEEPROM->adjuseVoltageVal, &hwinfo[EEPROM_Voltage_ADDR_8723B], 1); */
pEEPROM->adjuseVoltageVal = (hwinfo[EEPROM_Voltage_ADDR_8723B] & 0xf0) >> 4;
}
@@ -1450,9 +1417,7 @@ void Hal_EfuseParseThermalMeter_8723B(
{
struct hal_com_data *pHalData = GET_HAL_DATA(padapter);
- /* */
/* ThermalMeter from EEPROM */
- /* */
if (!AutoLoadFail)
pHalData->EEPROMThermalMeter = PROMContent[EEPROM_THERMAL_METER_8723B];
else
@@ -1466,10 +1431,7 @@ void Hal_ReadRFGainOffset(
struct adapter *Adapter, u8 *PROMContent, bool AutoloadFail
)
{
- /* */
/* BB_RF Gain Offset from EEPROM */
- /* */
-
if (!AutoloadFail) {
Adapter->eeprompriv.EEPROMRFGainOffset = PROMContent[EEPROM_RF_GAIN_OFFSET];
Adapter->eeprompriv.EEPROMRFGainVal = rtw_efuse_read_1_byte(Adapter,
@@ -1493,9 +1455,6 @@ u8 BWMapping_8723B(struct adapter *Adapter, struct pkt_attrib *pattrib)
} else
BWSettingOfDesc = 0;
- /* if (pTcb->bBTTxPacket) */
- /* BWSettingOfDesc = 0; */
-
return BWSettingOfDesc;
}
@@ -1773,12 +1732,10 @@ void rtl8723b_update_txdesc(struct xmit_frame *pxmitframe, u8 *pbuf)
rtl8723b_cal_txdesc_chksum(pdesc);
}
-/* */
/* Description: In normal chip, we should send some packet to Hw which will be used by Fw */
/* in FW LPS mode. The function is to fill the Tx descriptor of this packets, then */
/* Fw can tell Hw to send these packet derectly. */
/* Added by tynli. 2009.10.15. */
-/* */
/* type1:pspoll, type2:null */
void rtl8723b_fill_fake_txdesc(
struct adapter *padapter,
@@ -1816,9 +1773,7 @@ void rtl8723b_fill_fake_txdesc(
SET_TX_DESC_TX_RATE_8723B(pDesc, DESC8723B_RATE1M);
- /* */
/* Encrypt the data frame if under security mode excepct null data. Suggested by CCW. */
- /* */
if (bDataFrame) {
u32 EncAlg = padapter->securitypriv.dot11_privacy_algrthm;
@@ -1869,7 +1824,6 @@ static void hw_var_set_opmode(struct adapter *padapter, u8 variable, u8 *val)
/* disable atim wnd */
rtw_write8(padapter, REG_BCN_CTRL, DIS_TSF_UDT|EN_BCN_FUNCTION|DIS_ATIM);
- /* rtw_write8(padapter, REG_BCN_CTRL, 0x18); */
} else if (mode == _HW_STATE_ADHOC_) {
ResumeTxBeacon(padapter);
rtw_write8(padapter, REG_BCN_CTRL, DIS_TSF_UDT|EN_BCN_FUNCTION|DIS_BCNQ_SUB);
@@ -1889,7 +1843,6 @@ static void hw_var_set_opmode(struct adapter *padapter, u8 variable, u8 *val)
/* Beacon Control related register for first time */
rtw_write8(padapter, REG_BCNDMATIM, 0x02); /* 2ms */
- /* rtw_write8(padapter, REG_BCN_MAX_ERR, 0xFF); */
rtw_write8(padapter, REG_ATIMWND, 0x0a); /* 10ms */
rtw_write16(padapter, REG_BCNTCFG, 0x00);
rtw_write16(padapter, REG_TBTT_PROHIBIT, 0xff04);
@@ -1903,7 +1856,6 @@ static void hw_var_set_opmode(struct adapter *padapter, u8 variable, u8 *val)
rtw_write8(padapter, REG_BCN_CTRL, (DIS_TSF_UDT|EN_BCN_FUNCTION|EN_TXBCN_RPT|DIS_BCNQ_SUB));
/* SW_BCN_SEL - Port0 */
- /* rtw_write8(Adapter, REG_DWBCN1_CTRL_8192E+2, rtw_read8(Adapter, REG_DWBCN1_CTRL_8192E+2) & ~BIT4); */
rtw_hal_set_hwreg(padapter, HW_VAR_DL_BCN_SEL, NULL);
/* select BCN on port 0 */
@@ -2000,8 +1952,6 @@ static void hw_var_set_mlme_disconnect(struct adapter *padapter, u8 variable, u8
{
u8 val8;
- /* Set RCR to not to receive data frame when NO LINK state */
- /* rtw_write32(padapter, REG_RCR, rtw_read32(padapter, REG_RCR) & ~RCR_ADF); */
/* reject all data frames */
rtw_write16(padapter, REG_RXFLTMAP2, 0);
@@ -2087,8 +2037,7 @@ static void hw_var_set_mlme_join(struct adapter *padapter, u8 variable, u8 *val)
pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
if (type == 0) { /* prepare to join */
- /* enable to rx data frame.Accept all data frame */
- /* rtw_write32(padapter, REG_RCR, rtw_read32(padapter, REG_RCR)|RCR_ADF); */
+ /* enable to rx data frame */
rtw_write16(padapter, REG_RXFLTMAP2, 0xFFFF);
val32 = rtw_read32(padapter, REG_RCR);
@@ -2166,11 +2115,9 @@ s32 c2h_handler_8723b(struct adapter *padapter, u8 *buf)
break;
case C2H_CCX_TX_RPT:
-/* CCX_FwC2HTxRpt(padapter, QueueID, pC2hEvent->payload); */
break;
case C2H_EXT_RA_RPT:
-/* C2HExtRaRptHandler(padapter, pC2hEvent->payload, C2hEvent.CmdLen); */
break;
case C2H_HW_INFO_EXCH:
@@ -2184,10 +2131,6 @@ s32 c2h_handler_8723b(struct adapter *padapter, u8 *buf)
break;
}
- /* Clear event to notify FW we have read the command. */
- /* Note: */
- /* If this field isn't clear, the FW won't update the next command message. */
-/* rtw_write8(padapter, REG_C2HEVT_CLEAR, C2H_EVT_HOST_CLOSE); */
exit:
return ret;
}
@@ -2206,11 +2149,9 @@ static void process_c2h_event(struct adapter *padapter, struct c2h_evt_hdr_t *pC
break;
case C2H_CCX_TX_RPT:
-/* CCX_FwC2HTxRpt(padapter, QueueID, tmpBuf); */
break;
case C2H_EXT_RA_RPT:
-/* C2HExtRaRptHandler(padapter, tmpBuf, C2hEvent.CmdLen); */
break;
case C2H_HW_INFO_EXCH:
@@ -2236,7 +2177,6 @@ void C2HPacketHandler_8723B(struct adapter *padapter, u8 *pbuffer, u16 length)
tmpBuf = pbuffer+2;
process_c2h_event(padapter, &C2hEvent, tmpBuf);
- /* c2h_handler_8723b(padapter,&C2hEvent); */
}
void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
@@ -2346,8 +2286,6 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
hal_btcoex_ConnectNotify(padapter, false);
break;
case 2:
- /* sta add event callback */
-/* rtw_btcoex_MediaStatusNotify(padapter, RT_MEDIA_CONNECT); */
break;
}
break;
@@ -2373,7 +2311,6 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
break;
case HW_VAR_RESP_SIFS:
- /* SIFS_Timer = 0x0a0a0808; */
/* RESP_SIFS for CCK */
rtw_write8(padapter, REG_RESP_SIFS_CCK, val[0]); /* SIFS_T2T_CCK (0x08) */
rtw_write8(padapter, REG_RESP_SIFS_CCK+1, val[1]); /* SIFS_R2T_CCK(0x08) */
@@ -2388,7 +2325,6 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
u8 bShortPreamble = *val;
/* Joseph marked out for Netgear 3500 TKIP channel 7 issue.(Temporarily) */
- /* regTmp = (pHalData->nCur40MhzPrimeSC)<<5; */
if (bShortPreamble)
regTmp |= 0x80;
rtw_write8(padapter, REG_RRSR+2, regTmp);
@@ -2407,7 +2343,6 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
/* filled id in CAM config 2 byte */
if (i == 0) {
ulContent |= (ucIndex & 0x03) | ((u16)(ulEncAlgo)<<2);
- /* ulContent |= CAM_VALID; */
} else
ulContent = 0;
@@ -2415,8 +2350,8 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
ulCommand = CAM_CONTENT_COUNT*ucIndex+i;
ulCommand = ulCommand | CAM_POLLINIG | CAM_WRITE;
/* write content 0 is equal to mark as invalid */
- rtw_write32(padapter, WCAMI, ulContent); /* mdelay(40); */
- rtw_write32(padapter, RWCAM, ulCommand); /* mdelay(40); */
+ rtw_write32(padapter, WCAMI, ulContent);
+ rtw_write32(padapter, RWCAM, ulCommand);
}
}
break;
@@ -2498,11 +2433,6 @@ void SetHwReg8723B(struct adapter *padapter, u8 variable, u8 *val)
if (psmode != PS_MODE_ACTIVE)
ODM_RF_Saving(&pHalData->odmpriv, true);
- /* if (psmode != PS_MODE_ACTIVE) { */
- /* rtl8723b_set_lowpwr_lps_cmd(padapter, true); */
- /* else { */
- /* rtl8723b_set_lowpwr_lps_cmd(padapter, false); */
- /* */
rtl8723b_set_FwPwrMode_cmd(padapter, psmode);
}
break;
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c b/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c
index 737e2a818c18..3c99621311e5 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_phycfg.c
@@ -67,7 +67,6 @@ void PHY_SetBBReg_8723B(
u32 Data
)
{
- /* u16 BBWaitCounter = 0; */
u32 OriginalValue, BitShift;
if (BitMask != bMaskDWord) { /* if not "double word" write */
@@ -79,9 +78,7 @@ void PHY_SetBBReg_8723B(
rtw_write32(Adapter, RegAddr, Data);
}
-/* */
/* 2. RF register R/W API */
-/* */
static u32 phy_RFSerialRead_8723B(
struct adapter *Adapter, enum rf_path eRFPath, u32 Offset
@@ -96,9 +93,7 @@ static u32 phy_RFSerialRead_8723B(
u32 MaskforPhySet = 0;
int i = 0;
- /* */
/* Make sure RF register offset is correct */
- /* */
Offset &= 0xff;
NewOffset = Offset;
@@ -189,18 +184,13 @@ static void phy_RFSerialWrite_8723B(
Offset &= 0xff;
- /* */
/* Switch page for 8256 RF IC */
- /* */
NewOffset = Offset;
- /* */
/* Put write addr in [5:0] and write data in [31:16] */
- /* */
DataAndAddr = ((NewOffset << 20) | (Data & 0x000fffff)) & 0x0fffffff; /* T65 RF */
- /* */
+
/* Write Operation */
- /* */
PHY_SetBBReg(Adapter, pPhyReg->rf3wireOffset, bMaskDWord, DataAndAddr);
}
@@ -265,9 +255,7 @@ void PHY_SetRFReg_8723B(
phy_RFSerialWrite_8723B(Adapter, eRFPath, RegAddr, Data);
}
-/* */
/* 3. Initial MAC/BB/RF config by reading MAC/BB/RF txt. */
-/* */
/*-----------------------------------------------------------------------------
* PHY_MACConfig8192C - Config MAC by header file or parameter file.
@@ -333,9 +321,7 @@ static int phy_BB8723b_Config_ParaFile(struct adapter *Adapter)
pHalData->EEPROMRegulatory == 1))
ODM_ConfigRFWithHeaderFile(&pHalData->odmpriv, CONFIG_RF_TXPWR_LMT, 0);
- /* */
/* 1. Read PHY_REG.TXT BB INIT!! */
- /* */
ODM_ConfigBBWithHeaderFile(&pHalData->odmpriv, CONFIG_BB_PHY_REG);
/* If EEPROM or EFUSE autoload OK, We must config by PHY_REG_PG.txt */
@@ -352,12 +338,10 @@ static int phy_BB8723b_Config_ParaFile(struct adapter *Adapter)
if (Adapter->registrypriv.reg_enable_tx_power_limit == 1 ||
(Adapter->registrypriv.reg_enable_tx_power_limit == 2 &&
pHalData->EEPROMRegulatory == 1))
- PHY_ConvertTxPowerLimitToPowerIndex(Adapter);
+ phy_tx_power_limit_to_index(Adapter);
}
- /* */
/* 2. Read BB AGC table Initialization */
- /* */
ODM_ConfigBBWithHeaderFile(&pHalData->odmpriv, CONFIG_BB_AGC_TAB);
return _SUCCESS;
@@ -389,9 +373,7 @@ int PHY_BBConfig8723B(struct adapter *Adapter)
rtw_write8(Adapter, REG_AFE_XTAL_CTRL + 1, 0x80);
- /* */
/* Config BB and AGC */
- /* */
rtStatus = phy_BB8723b_Config_ParaFile(Adapter);
/* 0x2C[23:18] = 0x2C[17:12] = CrystalCap */
@@ -413,9 +395,7 @@ int PHY_RFConfig8723B(struct adapter *Adapter)
{
int rtStatus = _SUCCESS;
- /* */
/* RF config */
- /* */
rtStatus = PHY_RF6052_Config8723B(Adapter);
phy_LCK_8723B(Adapter);
@@ -685,7 +665,6 @@ static void PHY_HandleSwChnlAndSetBW8723B(
u8 CenterFrequencyIndex1
)
{
- /* static bool bInitialzed = false; */
struct hal_com_data *pHalData = GET_HAL_DATA(Adapter);
u8 tmpChannel = pHalData->CurrentChannel;
enum channel_width tmpBW = pHalData->CurrentChannelBW;
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_rf6052.c b/drivers/staging/rtl8723bs/hal/rtl8723b_rf6052.c
index fac1270853de..e894f8060893 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_rf6052.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_rf6052.c
@@ -7,16 +7,10 @@
/******************************************************************************
*
*
- * Module: rtl8192c_rf6052.c (Source C File)
+ * Module: rtl8723b_rf6052.c (Source C File)
*
* Note: Provide RF 6052 series relative API.
*
- * Function:
- *
- * Export:
- *
- * Abbrev:
- *
* History:
* Data Who Remark
*
@@ -28,16 +22,6 @@
#include <rtl8723b_hal.h>
-/*---------------------------Define Local Constant---------------------------*/
-/*---------------------------Define Local Constant---------------------------*/
-
-/*------------------------Define global variable-----------------------------*/
-/*------------------------Define global variable-----------------------------*/
-
-/*------------------------Define local variable------------------------------*/
-/* 2008/11/20 MH For Debug only, RF */
-/*------------------------Define local variable------------------------------*/
-
/*-----------------------------------------------------------------------------
* Function: PHY_RF6052SetBandwidth()
*
@@ -95,18 +79,18 @@ static int phy_RF6052_Config_ParaFile(struct adapter *Adapter)
/*----Set RF_ENV enable----*/
PHY_SetBBReg(Adapter, pPhyReg->rfintfe, bRFSI_RFENV << 16, 0x1);
- udelay(1);/* PlatformStallExecution(1); */
+ udelay(1);
/*----Set RF_ENV output high----*/
PHY_SetBBReg(Adapter, pPhyReg->rfintfo, bRFSI_RFENV, 0x1);
- udelay(1);/* PlatformStallExecution(1); */
+ udelay(1);
/* Set bit number of Address and Data for RF register */
PHY_SetBBReg(Adapter, pPhyReg->rfHSSIPara2, b3WireAddressLength, 0x0); /* Set 1 to 4 bits for 8255 */
- udelay(1);/* PlatformStallExecution(1); */
+ udelay(1);
PHY_SetBBReg(Adapter, pPhyReg->rfHSSIPara2, b3WireDataLength, 0x0); /* Set 0 to 12 bits for 8255 */
- udelay(1);/* PlatformStallExecution(1); */
+ udelay(1);
/*----Initialize RF fom connfiguration file----*/
ODM_ConfigRFWithHeaderFile(&pHalData->odmpriv, CONFIG_RF_RADIO, RF_PATH_A);
@@ -125,11 +109,7 @@ static int phy_RF6052_Config_ParaFile(struct adapter *Adapter)
int PHY_RF6052_Config8723B(struct adapter *Adapter)
{
- /* */
/* Config BB and RF */
- /* */
return phy_RF6052_Config_ParaFile(Adapter);
}
-
-/* End of HalRf6052.c */
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_rxdesc.c b/drivers/staging/rtl8723bs/hal/rtl8723b_rxdesc.c
index ac1249676794..28e1855f45c2 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_rxdesc.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_rxdesc.c
@@ -12,7 +12,6 @@ static void process_rssi(struct adapter *padapter, union recv_frame *prframe)
struct rx_pkt_attrib *pattrib = &prframe->u.hdr.attrib;
struct signal_stat *signal_stat = &padapter->recvpriv.signal_strength_data;
- /* if (pRfd->Status.bPacketToSelf || pRfd->Status.bPacketBeacon) */
{
if (signal_stat->update_req) {
signal_stat->total_num = 0;
@@ -24,8 +23,7 @@ static void process_rssi(struct adapter *padapter, union recv_frame *prframe)
signal_stat->total_val += pattrib->phy_info.SignalStrength;
signal_stat->avg_val = signal_stat->total_val / signal_stat->total_num;
}
-
-} /* Process_UI_RSSI_8192C */
+}
static void process_link_qual(struct adapter *padapter, union recv_frame *prframe)
{
@@ -47,21 +45,14 @@ static void process_link_qual(struct adapter *padapter, union recv_frame *prfram
signal_stat->total_num++;
signal_stat->total_val += pattrib->phy_info.SignalQuality;
signal_stat->avg_val = signal_stat->total_val / signal_stat->total_num;
-} /* Process_UiLinkQuality8192S */
+}
void rtl8723b_process_phy_info(struct adapter *padapter, void *prframe)
{
union recv_frame *precvframe = prframe;
- /* */
/* Check RSSI */
- /* */
process_rssi(padapter, precvframe);
- /* */
- /* Check PWDB. */
- /* */
- /* process_PWDB(padapter, precvframe); */
- /* UpdateRxSignalStatistics8192C(Adapter, pRfd); */
/* */
/* Check EVM */
/* */
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c
index e943c304950e..304fda3a3b5c 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c
@@ -7,6 +7,7 @@
#include <drv_types.h>
#include <rtl8723b_hal.h>
+#include <linux/align.h>
static void initrecvbuf(struct recv_buf *precvbuf, struct adapter *padapter)
{
@@ -95,7 +96,6 @@ static void update_recvframe_phyinfo(union recv_frame *precvframe,
.is_beacon = false,
};
- /* unsigned long irqL; */
struct sta_priv *pstapriv;
struct sta_info *psta;
@@ -124,13 +124,10 @@ static void update_recvframe_phyinfo(union recv_frame *precvframe,
pkt_info.data_rate = pattrib->data_rate;
- /* rtl8723b_query_rx_phy_status(precvframe, pphy_status); */
- /* spin_lock_bh(&p_hal_data->odm_stainfo_lock); */
odm_phy_status_query(&p_hal_data->odmpriv, p_phy_info,
(u8 *)pphy_status, &(pkt_info));
if (psta)
psta->rssi = pattrib->phy_info.RecvSignalPower;
- /* spin_unlock_bh(&p_hal_data->odm_stainfo_lock); */
precvframe->u.hdr.psta = NULL;
if (
pkt_info.bssid_match &&
@@ -306,7 +303,6 @@ static void rtl8723bs_recv_tasklet(struct tasklet_struct *t)
precvframe->u.hdr.rx_end = skb_end_pointer(pkt_copy);
recvframe_put(precvframe, skb_len);
- /* recvframe_pull(precvframe, drvinfo_sz + RXDESC_SIZE); */
if (p_hal_data->ReceiveConfig & RCR_APPFCS)
recvframe_pull_tail(precvframe, IEEE80211_FCS_LEN);
@@ -316,7 +312,6 @@ static void rtl8723bs_recv_tasklet(struct tasklet_struct *t)
/* update drv info */
if (p_hal_data->ReceiveConfig & RCR_APP_BA_SSN) {
- /* rtl8723s_update_bassn(padapter, pdrvinfo); */
ptr += 4;
}
@@ -386,7 +381,7 @@ s32 rtl8723bs_init_recv_priv(struct adapter *padapter)
goto exit;
}
- precvpriv->precv_buf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(precvpriv->pallocated_recv_buf), 4);
+ precvpriv->precv_buf = PTR_ALIGN(precvpriv->pallocated_recv_buf, 4);
/* init each recv buffer */
precvbuf = (struct recv_buf *)precvpriv->precv_buf;
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
index 7f55448d544e..6624d2aac4bc 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
@@ -24,7 +24,6 @@ static u8 rtw_sdio_wait_enough_TxOQT_space(struct adapter *padapter, u8 agg_num)
if ((++n % 60) == 0) {
msleep(1);
- /* yield(); */
}
}
@@ -33,7 +32,7 @@ static u8 rtw_sdio_wait_enough_TxOQT_space(struct adapter *padapter, u8 agg_num)
return true;
}
-static s32 rtl8723_dequeue_writeport(struct adapter *padapter)
+static bool rtl8723_dequeue_writeport(struct adapter *padapter)
{
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
@@ -103,11 +102,9 @@ query_free_page:
rtw_hal_sdio_update_tx_freepage(pri_padapter, PageIdx, pxmitbuf->pg_num);
free_xmitbuf:
- /* rtw_free_xmitframe(pxmitpriv, pframe); */
- /* pxmitbuf->priv_data = NULL; */
rtw_free_xmitbuf(pxmitpriv, pxmitbuf);
- return _FAIL;
+ return false;
}
/*
@@ -121,7 +118,8 @@ free_xmitbuf:
s32 rtl8723bs_xmit_buf_handler(struct adapter *padapter)
{
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
- u8 queue_empty, queue_pending;
+ bool queue_empty;
+ u8 queue_pending;
s32 ret;
if (wait_for_completion_interruptible(&pxmitpriv->xmit_comp)) {
@@ -248,8 +246,6 @@ static s32 xmit_xmitframes(struct adapter *padapter, struct xmit_priv *pxmitpriv
rtw_free_xmitframe(pxmitpriv, pframe);
pxmitbuf->priv_data = NULL;
enqueue_pending_xmitbuf(pxmitpriv, pxmitbuf);
- /* can not yield under lock */
- /* yield(); */
} else
rtw_free_xmitbuf(pxmitpriv, pxmitbuf);
}
@@ -525,9 +521,6 @@ s32 rtl8723bs_hal_xmitframe_enqueue(
s32 rtl8723bs_init_xmit_priv(struct adapter *padapter)
{
struct xmit_priv *xmitpriv = &padapter->xmitpriv;
- struct hal_com_data *phal;
-
- phal = GET_HAL_DATA(padapter);
init_completion(&xmitpriv->SdioXmitStart);
init_completion(&xmitpriv->SdioXmitTerminate);
diff --git a/drivers/staging/rtl8723bs/hal/sdio_halinit.c b/drivers/staging/rtl8723bs/hal/sdio_halinit.c
index 57d2925642e7..4a2f5c3bb3cf 100644
--- a/drivers/staging/rtl8723bs/hal/sdio_halinit.c
+++ b/drivers/staging/rtl8723bs/hal/sdio_halinit.c
@@ -171,7 +171,6 @@ static void _InitTxBufferBoundary(struct adapter *padapter)
{
struct registry_priv *pregistrypriv = &padapter->registrypriv;
- /* u16 txdmactrl; */
u8 txpktbuf_bndy;
if (!pregistrypriv->wifi_spec) {
@@ -492,9 +491,7 @@ static void _InitOperationMode(struct adapter *padapter)
pmlmeext = &padapter->mlmeextpriv;
/* 1 This part need to modified according to the rate set we filtered!! */
- /* */
/* Set RRSR, RATR, and REG_BWOPMODE registers */
- /* */
switch (pmlmeext->cur_wireless_mode) {
case WIRELESS_MODE_B:
regBwOpMode = BW_OPMODE_20MHZ;
@@ -527,9 +524,7 @@ static void _InitInterrupt(struct adapter *padapter)
/* HIMR - turn all off */
rtw_write32(padapter, REG_HIMR, 0);
- /* */
/* Initialize and enable SDIO Host Interrupt. */
- /* */
InitInterrupt8723BSdio(padapter);
}
@@ -538,26 +533,6 @@ static void _RfPowerSave(struct adapter *padapter)
/* YJ, TODO */
}
-/* */
-/* 2010/08/09 MH Add for power down check. */
-/* */
-static bool HalDetectPwrDownMode(struct adapter *Adapter)
-{
- u8 tmpvalue;
- struct hal_com_data *pHalData = GET_HAL_DATA(Adapter);
- struct pwrctrl_priv *pwrctrlpriv = adapter_to_pwrctl(Adapter);
-
- rtw_efuse_shadow_read(Adapter, 1, 0x7B/*EEPROM_RF_OPT3_92C*/, (u32 *)&tmpvalue);
-
- /* 2010/08/25 MH INF priority > PDN Efuse value. */
- if (tmpvalue & BIT(4) && pwrctrlpriv->reg_pdnmode)
- pHalData->pwrdown = true;
- else
- pHalData->pwrdown = false;
-
- return pHalData->pwrdown;
-} /* HalDetectPwrDownMode */
-
u32 rtl8723bs_hal_init(struct adapter *padapter)
{
s32 ret;
@@ -632,10 +607,6 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
if (pwrctrlpriv->reg_rfoff)
pwrctrlpriv->rf_pwrstate = rf_off;
- /* 2010/08/09 MH We need to check if we need to turnon or off RF after detecting */
- /* HW GPIO pin. Before PHY_RFConfig8192C. */
- HalDetectPwrDownMode(padapter);
-
/* Save target channel */
/* <Roger_Notes> Current Channel will be updated again later. */
pHalData->CurrentChannel = 6;
@@ -643,9 +614,7 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
ret = PHY_MACConfig8723B(padapter);
if (ret != _SUCCESS)
return ret;
- /* */
/* d. Initialize BB related configurations. */
- /* */
ret = PHY_BBConfig8723B(padapter);
if (ret != _SUCCESS)
return ret;
@@ -659,9 +628,7 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
return ret;
}
- /* */
/* Joseph Note: Keep RfRegChnlVal for later use. */
- /* */
pHalData->RfRegChnlVal[0] =
PHY_QueryRFReg(padapter, (enum rf_path)0, RF_CHNLBW, bRFRegOffsetMask);
pHalData->RfRegChnlVal[1] =
@@ -675,7 +642,6 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
if (ret != _SUCCESS)
return _FAIL;
- /* */
_InitQueuePriority(padapter);
_InitPageBoundary(padapter);
_InitTransferPageSize(padapter);
@@ -708,29 +674,23 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
rtl8723b_InitAntenna_Selection(padapter);
- /* */
/* Disable BAR, suggested by Scott */
/* 2010.04.09 add by hpfan */
- /* */
rtw_write32(padapter, REG_BAR_MODE_CTRL, 0x0201ffff);
/* HW SEQ CTRL */
/* set 0x0 to 0xFF by tynli. Default enable HW SEQ NUM. */
rtw_write8(padapter, REG_HWSEQ_CTRL, 0xFF);
- /* */
/* Configure SDIO TxRx Control to enable Rx DMA timer masking. */
/* 2010.02.24. */
- /* */
rtw_write32(padapter, SDIO_LOCAL_BASE | SDIO_REG_TX_CTRL, 0);
_RfPowerSave(padapter);
rtl8723b_InitHalDm(padapter);
- /* */
/* Update current Tx FIFO page status. */
- /* */
HalQueryTxBufferStatus8723BSdio(padapter);
HalQueryTxOQTBufferStatus8723BSdio(padapter);
pHalData->SdioTxOQTMaxFreeSpace = pHalData->SdioTxOQTFreeSpace;
@@ -798,12 +758,9 @@ u32 rtl8723bs_hal_init(struct adapter *padapter)
return _SUCCESS;
}
-/* */
/* Description: */
/* RTL8723e card disable power sequence v003 which suggested by Scott. */
-/* */
/* First created by tynli. 2011.01.28. */
-/* */
static void CardDisableRTL8723BSdio(struct adapter *padapter)
{
u8 val;
@@ -948,15 +905,11 @@ void rtl8723bs_interface_configure(struct adapter *padapter)
Hal_MappingOutPipe(padapter, pHalData->OutEpNumber);
}
-/* */
/* Description: */
/* We should set Efuse cell selection to WiFi cell in default. */
-/* */
/* Assumption: */
/* PASSIVE_LEVEL */
-/* */
/* Added by Roger, 2010.11.23. */
-/* */
static void _EfuseCellSel(struct adapter *padapter)
{
u32 value32;
@@ -1000,10 +953,7 @@ static void _ReadEfuseInfo8723BS(struct adapter *padapter)
struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(padapter);
u8 *hwinfo = NULL;
- /* */
/* This part read and parse the eeprom/efuse content */
- /* */
-
hwinfo = pEEPROM->efuse_eeprom_data;
Hal_InitPGData(padapter, hwinfo);
@@ -1015,9 +965,7 @@ static void _ReadEfuseInfo8723BS(struct adapter *padapter)
Hal_EfuseParseTxPowerInfo_8723B(padapter, hwinfo, pEEPROM->bautoload_fail_flag);
Hal_EfuseParseBoardType_8723BS(padapter, hwinfo, pEEPROM->bautoload_fail_flag);
- /* */
/* Read Bluetooth co-exist and initialize */
- /* */
Hal_EfuseParsePackageType_8723B(padapter, hwinfo, pEEPROM->bautoload_fail_flag);
Hal_EfuseParseBTCoexistInfo_8723B(padapter, hwinfo, pEEPROM->bautoload_fail_flag);
Hal_EfuseParseChnlPlan_8723B(padapter, hwinfo, pEEPROM->bautoload_fail_flag);
@@ -1042,14 +990,10 @@ static void _ReadPROMContent(struct adapter *padapter)
_ReadEfuseInfo8723BS(padapter);
}
-/* */
/* Description: */
/* Read HW adapter information by E-Fuse or EEPROM according CR9346 reported. */
-/* */
/* Assumption: */
/* PASSIVE_LEVEL (SDIO interface) */
-/* */
-/* */
static s32 _ReadAdapterInfo8723BS(struct adapter *padapter)
{
u8 val8;
@@ -1163,10 +1107,8 @@ void SetHwRegWithBuf8723B(struct adapter *padapter, u8 variable, u8 *pbuf, int l
}
}
-/* */
/* Description: */
/* Query setting of specified variable. */
-/* */
u8 GetHalDefVar8723BSDIO(
struct adapter *Adapter, enum hal_def_variable eVariable, void *pValue
)
diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl8723bs/hal/sdio_ops.c
index da2d9088ab5a..c12f670922d5 100644
--- a/drivers/staging/rtl8723bs/hal/sdio_ops.c
+++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c
@@ -7,12 +7,9 @@
#include <drv_types.h>
#include <rtl8723b_hal.h>
-/* */
/* Description: */
/* The following mapping is for SDIO host local register space. */
-/* */
/* Creadted by Roger, 2011.01.31. */
-/* */
static void hal_sdio_get_cmd_addr_8723b(struct adapter *adapter, u8 device_id,
u32 addr, u32 *cmdaddr)
{
@@ -562,15 +559,11 @@ static s32 read_interrupt_8723b_sdio(struct adapter *adapter, u32 *phisr)
return true;
}
-/* */
/* Description: */
/* Initialize SDIO Host Interrupt Mask configuration variables for future use. */
-/* */
/* Assumption: */
/* Using SDIO Local register ONLY for configuration. */
-/* */
/* Created by Roger, 2011.02.11. */
-/* */
void InitInterrupt8723BSdio(struct adapter *adapter)
{
struct hal_com_data *haldata;
@@ -598,11 +591,9 @@ void rtw_sdio_enable_interrupt(struct adapter *adapter)
himr = cpu_to_le32(haldata->sdio_himr);
sdio_local_write(adapter, SDIO_REG_HIMR, 4, (u8 *)&himr);
- /* */
/* <Roger_Notes> There are some C2H CMDs have been sent before system interrupt is enabled, e.g., C2H, CPWM. */
/* So we need to clear all C2H events that FW has notified, otherwise FW won't schedule any commands anymore. */
/* 2011.10.19. */
- /* */
rtw_write8(adapter, REG_C2HEVT_CLEAR, C2H_EVT_HOST_CLOSE);
}
@@ -620,15 +611,11 @@ void rtw_sdio_disable_interrupt(struct adapter *adapter)
sdio_local_write(adapter, SDIO_REG_HIMR, 4, (u8 *)&himr);
}
-/* */
/* Description: */
/* Using 0x100 to check the power status of FW. */
-/* */
/* Assumption: */
/* Using SDIO Local register ONLY for configuration. */
-/* */
/* Created by Isaac, 2013.09.10. */
-/* */
u8 CheckIPSStatus(struct adapter *adapter)
{
if (rtw_read8(adapter, 0x100) == 0xEA)
@@ -644,6 +631,13 @@ static struct recv_buf *sd_recv_rxfifo(struct adapter *adapter, u32 size)
struct recv_priv *recv_priv;
struct recv_buf *recvbuf;
+ /* RX0_REQ_LEN is device-reported; the skb buffer is only
+ * MAX_RECVBUF_SZ bytes, reject bogus lengths instead of
+ * overflowing past it.
+ */
+ if (size > MAX_RECVBUF_SZ)
+ return NULL;
+
/* Patch for some SDIO Host 4 bytes issue */
/* ex. RK3188 */
readsize = round_up(size, 4);
@@ -826,16 +820,12 @@ void sd_int_hdl(struct adapter *adapter)
}
}
-/* */
/* Description: */
/* Query SDIO Local register to query current the number of Free TxPacketBuffer page. */
-/* */
/* Assumption: */
/* 1. Running at PASSIVE_LEVEL */
/* 2. RT_TX_SPINLOCK is NOT acquired. */
-/* */
/* Created by Roger, 2011.01.28. */
-/* */
u8 HalQueryTxBufferStatus8723BSdio(struct adapter *adapter)
{
struct hal_com_data *hal;
diff --git a/drivers/staging/rtl8723bs/include/HalPwrSeqCmd.h b/drivers/staging/rtl8723bs/include/HalPwrSeqCmd.h
index b81252d374ef..a0c4461557e7 100644
--- a/drivers/staging/rtl8723bs/include/HalPwrSeqCmd.h
+++ b/drivers/staging/rtl8723bs/include/HalPwrSeqCmd.h
@@ -98,9 +98,7 @@ struct wlan_pwr_cfg {
#define GET_PWR_CFG_VALUE(__PWR_CMD) __PWR_CMD.value
-/* */
/* Prototype of protected function. */
-/* */
u8 HalPwrSeqCmdParsing(
struct adapter *padapter,
u8 CutVersion,
diff --git a/drivers/staging/rtl8723bs/include/basic_types.h b/drivers/staging/rtl8723bs/include/basic_types.h
index b6b1afaa9ab8..d2436459cff6 100644
--- a/drivers/staging/rtl8723bs/include/basic_types.h
+++ b/drivers/staging/rtl8723bs/include/basic_types.h
@@ -14,7 +14,6 @@
#include <linux/stddef.h>
#define SIZE_PTR __kernel_size_t
-#define SSIZE_PTR __kernel_ssize_t
/* port from fw by thomas */
/* TODO: Belows are Sync from SD7-Driver. It is necessary to check correctness */
@@ -26,12 +25,8 @@
* 3. After read integer from IO.
*/
-/* */
/* Byte Swapping routine. */
-/* */
#define EF1Byte (u8)
-#define EF2Byte le16_to_cpu
-#define EF4Byte le32_to_cpu
/* Convert little data endian to host ordering */
#define EF1BYTE(_val) \
@@ -163,9 +158,6 @@
); \
}
-/* Get the N-bytes alignent offset from the current length */
-#define N_BYTE_ALIGMENT(__Value, __Aligment) ((__Aligment == 1) ? (__Value) : (((__Value + __Aligment - 1) / __Aligment) * __Aligment))
-
#define TEST_FLAG(__Flag, __testFlag) (((__Flag) & (__testFlag)) != 0)
#define SET_FLAG(__Flag, __setFlag) ((__Flag) |= __setFlag)
#define CLEAR_FLAG(__Flag, __clearFlag) ((__Flag) &= ~(__clearFlag))
diff --git a/drivers/staging/rtl8723bs/include/cmd_osdep.h b/drivers/staging/rtl8723bs/include/cmd_osdep.h
index 91d933d71945..a7b526a658a9 100644
--- a/drivers/staging/rtl8723bs/include/cmd_osdep.h
+++ b/drivers/staging/rtl8723bs/include/cmd_osdep.h
@@ -9,8 +9,8 @@
int rtw_init_cmd_priv(struct cmd_priv *pcmdpriv);
int rtw_init_evt_priv(struct evt_priv *pevtpriv);
-extern void _rtw_free_evt_priv(struct evt_priv *pevtpriv);
-extern void _rtw_free_cmd_priv(struct cmd_priv *pcmdpriv);
-extern struct cmd_obj *_rtw_dequeue_cmd(struct __queue *queue);
+void _rtw_free_evt_priv(struct evt_priv *pevtpriv);
+void _rtw_free_cmd_priv(struct cmd_priv *pcmdpriv);
+struct cmd_obj *_rtw_dequeue_cmd(struct __queue *queue);
#endif
diff --git a/drivers/staging/rtl8723bs/include/drv_types.h b/drivers/staging/rtl8723bs/include/drv_types.h
index 20265770ed77..7f7d4fbad4bd 100644
--- a/drivers/staging/rtl8723bs/include/drv_types.h
+++ b/drivers/staging/rtl8723bs/include/drv_types.h
@@ -151,8 +151,6 @@ struct registry_priv {
u8 enable80211d;
- u8 ifname[16];
-
u8 notch_filter;
/* define for tx power adjust */
@@ -209,7 +207,6 @@ struct dvobj_priv {
s32 processing_dev_remove;
/* for local/global synchronization */
- /* */
spinlock_t lock;
int macid[NUM_STA];
@@ -277,7 +274,6 @@ struct adapter {
struct mlme_ext_priv mlmeextpriv;
struct cmd_priv cmdpriv;
struct evt_priv evtpriv;
- /* struct io_queue *pio_queue; */
struct io_priv iopriv;
struct xmit_priv xmitpriv;
struct recv_priv recvpriv;
@@ -377,9 +373,7 @@ struct adapter {
#define adapter_to_pwrctl(adapter) (dvobj_to_pwrctl(adapter->dvobj))
#define adapter_wdev_data(adapter) (&((adapter)->wdev_data))
-/* */
/* Function disabled. */
-/* */
#define DF_TX_BIT BIT(0)
#define DF_RX_BIT BIT(1)
#define DF_IO_BIT BIT(2)
diff --git a/drivers/staging/rtl8723bs/include/hal_com.h b/drivers/staging/rtl8723bs/include/hal_com.h
index 7bbf62cfd825..6cf4f7f678d2 100644
--- a/drivers/staging/rtl8723bs/include/hal_com.h
+++ b/drivers/staging/rtl8723bs/include/hal_com.h
@@ -15,10 +15,9 @@
/*------------------------------ Tx Desc definition Macro ------------------------*/
/* pragma mark -- Tx Desc related definition. -- */
-/* */
-/* */
+
/* Rate */
-/* */
+
/* CCK Rates, TxHT = 0 */
#define DESC_RATE1M 0x00
#define DESC_RATE2M 0x01
@@ -112,7 +111,7 @@ u8 HwRateToMRate(u8 rate);
void HalSetBrateCfg(
struct adapter *Adapter,
- u8 *mBratesOS,
+ u8 *basic_rates,
u16 *pBrateCfg);
bool
diff --git a/drivers/staging/rtl8723bs/include/hal_com_h2c.h b/drivers/staging/rtl8723bs/include/hal_com_h2c.h
index a59d13090565..889b12719e2e 100644
--- a/drivers/staging/rtl8723bs/include/hal_com_h2c.h
+++ b/drivers/staging/rtl8723bs/include/hal_com_h2c.h
@@ -14,9 +14,7 @@
#define H2C_MACID_CFG_LEN 7
#define H2C_RSSI_SETTING_LEN 4
-/* */
/* Structure -------------------------------------------------- */
-/* */
struct rsvdpage_loc {
u8 LocProbeRsp;
u8 LocPsPoll;
diff --git a/drivers/staging/rtl8723bs/include/hal_com_phycfg.h b/drivers/staging/rtl8723bs/include/hal_com_phycfg.h
index cb7c7ed74146..a20b4c233de8 100644
--- a/drivers/staging/rtl8723bs/include/hal_com_phycfg.h
+++ b/drivers/staging/rtl8723bs/include/hal_com_phycfg.h
@@ -97,7 +97,7 @@ s8 phy_get_tx_pwr_lmt(struct adapter *adapter, u32 RegPwrTblSel,
void PHY_SetTxPowerLimit(struct adapter *Adapter, u8 *Regulation, u8 *Bandwidth,
u8 *RateSection, u8 *RfPath, u8 *Channel, u8 *PowerLimit);
-void PHY_ConvertTxPowerLimitToPowerIndex(struct adapter *Adapter);
+void phy_tx_power_limit_to_index(struct adapter *Adapter);
void PHY_InitTxPowerLimit(struct adapter *Adapter);
diff --git a/drivers/staging/rtl8723bs/include/hal_com_reg.h b/drivers/staging/rtl8723bs/include/hal_com_reg.h
index 4671fdfff916..352280ed3c56 100644
--- a/drivers/staging/rtl8723bs/include/hal_com_reg.h
+++ b/drivers/staging/rtl8723bs/include/hal_com_reg.h
@@ -7,11 +7,7 @@
#ifndef __HAL_COMMON_REG_H__
#define __HAL_COMMON_REG_H__
-/* */
-/* */
/* 0x0000h ~ 0x00FFh System Configuration */
-/* */
-/* */
#define REG_SYS_FUNC_EN 0x0002
#define REG_APS_FSMCO 0x0004
#define REG_SYS_CLKR 0x0008
@@ -36,11 +32,7 @@
#define REG_SYS_CFG 0x00F0
#define REG_GPIO_OUTSTS 0x00F4 /* For RTL8723 only. */
-/* */
-/* */
/* 0x0100h ~ 0x01FFh MACTOP General Configuration */
-/* */
-/* */
#define REG_CR 0x0100
#define REG_PBP 0x0104
#define REG_TRXDMA_CTRL 0x010C
@@ -53,31 +45,18 @@
#define REG_HMETFR 0x01CC
#define REG_HMEBOX_0 0x01D0
-/* */
-/* */
/* 0x0200h ~ 0x027Fh TXDMA Configuration */
-/* */
-/* */
#define REG_RQPN 0x0200
#define REG_TDECTRL 0x0208
#define REG_TXDMA_STATUS 0x0210
#define REG_RQPN_NPQ 0x0214
#define REG_AUTO_LLT 0x0224
-
-/* */
-/* */
/* 0x0280h ~ 0x02FFh RXDMA Configuration */
-/* */
-/* */
#define REG_RXDMA_AGG_PG_TH 0x0280
#define REG_RXPKT_NUM 0x0284
-/* */
-/* */
/* 0x0400h ~ 0x047Fh Protocol Configuration */
-/* */
-/* */
#define REG_TXPKT_EMPTY 0x041A
#define REG_FWHW_TXQ_CTRL 0x0420
#define REG_HWSEQ_CTRL 0x0423
@@ -92,11 +71,7 @@
#define REG_MACID_SLEEP 0x04D4
#define REG_NQOS_SEQ 0x04DC
-/* */
-/* */
/* 0x0500h ~ 0x05FFh EDCA Configuration */
-/* */
-/* */
#define REG_EDCA_VO_PARAM 0x0500
#define REG_EDCA_VI_PARAM 0x0504
#define REG_EDCA_BE_PARAM 0x0508
@@ -108,7 +83,7 @@
#define REG_SLOT 0x051B
#define REG_TXPAUSE 0x0522
#define REG_RD_CTRL 0x0524
-/* */
+
/* Format for offset 540h-542h: */
/* [3:0]: TBTT prohibit setup in unit of 32us. The time for HW getting beacon content before TBTT. */
/* [7:4]: Reserved. */
@@ -122,7 +97,6 @@
/* TBTT */
/* Note: We cannot update beacon content to HW or send any AC packets during the time between Setup and Hold. */
/* Described by Designer Tim and Bruce, 2011-01-14. */
-/* */
#define REG_TBTT_PROHIBIT 0x0540
#define REG_BCN_CTRL 0x0550
#define REG_BCN_CTRL_1 0x0551
@@ -137,11 +111,7 @@
#define REG_TSFTR 0x0560
#define REG_ACMHWCTRL 0x05C0
-/* */
-/* */
/* 0x0600h ~ 0x07FFh WMAC Configuration */
-/* */
-/* */
#define REG_BWOPMODE 0x0603
#define REG_TCR 0x0604
#define REG_RCR 0x0608
@@ -158,7 +128,6 @@
#define REG_ACKTO 0x0640
-/* */
/* Note: */
/* The NAV upper value is very important to WiFi 11n 5.2.3 NAV test. The default value is */
/* always too small, but the WiFi TestPlan test by 25, 000 microseconds of NAV through sending */
@@ -166,7 +135,6 @@
/* The offset of NAV_UPPER in 8192C Spec is incorrect, and the offset should be 0x0652. Commented */
/* by SD1 Scott. */
/* By Bruce, 2011-07-18. */
-/* */
#define REG_NAV_UPPER 0x0652 /* unit of 128 */
/* WMA, BA, CCX */
@@ -184,35 +152,25 @@
#define REG_RXFLTMAP2 0x06A4
#define REG_BCN_PSR_RPT 0x06A8
-/* */
-/* */
/* Redefine 8192C register definition for compatibility */
-/* */
-/* */
#define EFUSE_CTRL REG_EFUSE_CTRL /* E-Fuse Control. */
#define EFUSE_TEST REG_EFUSE_TEST /* E-Fuse Test. */
#define MSR (REG_CR + 2) /* Media Status register */
#define PBP REG_PBP
-/* */
/* 9. Security Control Registers (Offset:) */
-/* */
#define RWCAM REG_CAMCMD /* IN 8190 Data Sheet is called CAMcmd */
#define WCAMI REG_CAMWRITE /* Software write CAM input content */
-/* */
/* 8723/8188E Host System Interrupt Status Register (offset 0x5C, 32 byte) */
-/* */
#define HSISR_GPIO12_0_INT BIT(0)
#define HSISR_SPS_OCP_INT BIT(5)
#define HSISR_RON_INT BIT(6)
#define HSISR_PDNINT BIT(7)
#define HSISR_GPIO9_INT BIT(25)
-/* */
/* Response Rate Set Register (offset 0x440, 24bits) */
-/* */
#define RRSR_1M BIT(0)
#define RRSR_2M BIT(1)
#define RRSR_5_5M BIT(2)
@@ -223,9 +181,7 @@
#define RRSR_CCK_RATES (RRSR_11M|RRSR_5_5M|RRSR_2M|RRSR_1M)
-/* */
/* Rate Definition */
-/* */
/* CCK */
#define RATE_1M BIT(0)
#define RATE_2M BIT(1)
@@ -247,14 +203,10 @@
/* Only use CCK 1M rate for ACK */
#define RATE_RRSR_CCK_ONLY_1M 0xFFFF1
-/* */
/* BW_OPMODE bits (Offset 0x603, 8bit) */
-/* */
#define BW_OPMODE_20MHZ BIT(2)
-/* */
/* CAM Config Setting (offset 0x680, 1 byte) */
-/* */
#define CAM_VALID BIT(15)
#define CAM_CONTENT_COUNT 8
@@ -266,13 +218,9 @@
#define CAM_WRITE BIT(16)
#define CAM_POLLINIG BIT(31)
-/* */
/* 12. Host Interrupt Status Registers */
-/* */
-/* */
/* 8192C (RCR) Receive Configuration Register (Offset 0x608, 32 bits) */
-/* */
#define RCR_APPFCS BIT(31) /* WMAC append FCS after payload */
#define RCR_APP_MIC BIT(30) /* MACRX will retain the MIC at the bottom of the packet. */
#define RCR_APP_ICV BIT(29) /* MACRX will retain the ICV at the bottom of the packet. */
@@ -289,11 +237,7 @@
#define RCR_APM BIT(1) /* Accept physical match packet */
-/* */
-/* */
/* 0x0000h ~ 0x00FFh System Configuration */
-/* */
-/* */
/* 2 SYS_FUNC_EN */
#define FEN_BBRSTB BIT(0)
@@ -350,11 +294,7 @@
/* 2 REG_GPIO_OUTSTS (For RTL8723 only) */
#define RF_RL_ID (BIT(31)|BIT(30)|BIT(29)|BIT(28))
-/* */
-/* */
/* 0x0100h ~ 0x01FFh MACTOP General Configuration */
-/* */
-/* */
/* 2 Function Enable Registers */
/* 2 CR */
@@ -397,11 +337,8 @@
#define QUEUE_NORMAL 2
#define QUEUE_HIGH 3
-/* */
-/* */
/* 0x0200h ~ 0x027Fh TXDMA Configuration */
-/* */
-/* */
+
/* 2 RQPN */
#define _HPQ(x) ((x) & 0xFF)
#define _LPQ(x) (((x) & 0xFF) << 8)
@@ -413,11 +350,7 @@
/* 2 AUTO_LLT */
#define BIT_AUTO_INIT_LLT BIT(16)
-/* */
-/* */
/* 0x0280h ~ 0x028Bh RX DMA Configuration */
-/* */
-/* */
/* 2 REG_RXDMA_CONTROL, 0x0286h */
/* Write only. When this bit is set, RXDMA will decrease RX PKT counter by one. Before */
@@ -435,11 +368,8 @@
#define RXDMA_IDLE BIT(17)
#define RW_RELEASE_EN BIT(18)
-/* */
-/* */
/* 0x0400h ~ 0x047Fh Protocol Configuration */
-/* */
-/* */
+
/* 2 FWHW_TXQ_CTRL */
#define EN_AMPDU_RTY_NEW BIT(7)
@@ -452,11 +382,7 @@
#define RETRY_LIMIT_SHORT_SHIFT 8
#define RETRY_LIMIT_LONG_SHIFT 0
-/* */
-/* */
/* 0x0500h ~ 0x05FFh EDCA Configuration */
-/* */
-/* */
#define _LRL(x) ((x) & 0x3F)
#define _SRL(x) (((x) & 0x3F) << 8)
@@ -476,11 +402,7 @@
#define AcmHw_ViqEn BIT(2)
#define AcmHw_VoqEn BIT(3)
-/* */
-/* */
/* 0x0600h ~ 0x07FFh WMAC Configuration */
-/* */
-/* */
/* 2 TCR */
#define TSFRST BIT(0)
@@ -497,11 +419,7 @@
#define SCR_RXBCUSEDK BIT(7) /* Force Rx Broadcast packets Use Default Key */
#define SCR_CHK_KEYID BIT(8)
-/* */
-/* */
/* SDIO Bus Specification */
-/* */
-/* */
/* I/O bus domain address mapping */
#define SDIO_LOCAL_BASE 0x10250000
@@ -578,11 +496,7 @@
/* SDIO Tx FIFO related */
#define SDIO_TX_FREE_PG_QUEUE 4 /* The number of Tx FIFO free page */
-/* */
-/* */
/* 0xFE00h ~ 0xFE55h USB Configuration */
-/* */
-/* */
/* 2REG_C2HEVT_CLEAR */
#define C2H_EVT_HOST_CLOSE 0x00 /* Set by driver and notify FW that the driver has read the C2H command message */
diff --git a/drivers/staging/rtl8723bs/include/hal_data.h b/drivers/staging/rtl8723bs/include/hal_data.h
index f67ca496902a..c345b632bf53 100644
--- a/drivers/staging/rtl8723bs/include/hal_data.h
+++ b/drivers/staging/rtl8723bs/include/hal_data.h
@@ -12,17 +12,6 @@
#include <hal_sdio.h>
-enum rt_ampdu_burst {
- RT_AMPDU_BURST_NONE = 0,
- RT_AMPDU_BURST_92D = 1,
- RT_AMPDU_BURST_88E = 2,
- RT_AMPDU_BURST_8812_4 = 3,
- RT_AMPDU_BURST_8812_8 = 4,
- RT_AMPDU_BURST_8812_12 = 5,
- RT_AMPDU_BURST_8812_15 = 6,
- RT_AMPDU_BURST_8723B = 7,
-};
-
#define CHANNEL_MAX_NUMBER (14) /* 14 is the max channel number */
#define CHANNEL_MAX_NUMBER_2G 14
#define MAX_PG_GROUP 13
@@ -58,7 +47,6 @@ struct dm_priv {
u8 DMFlag;
u8 InitDMFlag;
- /* u8 RSVD_1; */
u32 InitODMFlag;
/* Upper and Lower Signal threshold for Rate Adaptive */
@@ -90,7 +78,6 @@ struct dm_priv {
u8 ThermalValue_IQK;
u8 ThermalValue_DPK;
u8 bRfPiEnable;
- /* u8 RSVD_2; */
/* for APK */
u32 APKoutput[2][2]; /* path A/B; output1_1a/output1_2a */
@@ -99,9 +86,6 @@ struct dm_priv {
u8 bDPdone;
u8 bDPPathAOK;
u8 bDPPathBOK;
- /* u8 RSVD_3; */
- /* u8 RSVD_4; */
- /* u8 RSVD_5; */
/* for IQK */
u32 ADDA_backup[IQK_ADDA_REG_NUM];
@@ -120,7 +104,6 @@ struct dm_priv {
u8 OFDM_index_HP[2];
u8 ThermalValue_HP[HP_THERMAL_NUM];
u8 ThermalValue_HP_index;
- /* u8 RSVD_6; */
/* for TxPwrTracking2 */
s32 RegE94;
@@ -185,7 +168,6 @@ struct hal_com_data {
/* RF: at most 2 = AB = 0/1 */
/* CCK = 0 OFDM = 1 HT-MCS 0-7 = 2 */
s8 TxPwrByRateOffset[MAX_RF_PATH_NUM][TX_PWR_BY_RATE_NUM_RATE];
- /* */
/* Power Limit Table for 2.4G */
s8 TxPwrLimit_2_4G[MAX_REGULATION_NUM]
@@ -234,17 +216,12 @@ struct hal_com_data {
u8 u1ForcedIgiLb; /* forced IGI lower bound */
- /* 2010/08/09 MH Add CU power down mode. */
- bool pwrdown;
-
u8 OutEpQueueSel;
u8 OutEpNumber;
/* Auto FSM to Turn On, include clock, isolation, power control for MAC only */
u8 bMacPwrCtrlOn;
- enum rt_ampdu_burst AMPDUBurstMode; /* 92C maybe not use, but for compile successfully */
-
u32 sdio_himr;
u32 sdio_hisr;
diff --git a/drivers/staging/rtl8723bs/include/hal_intf.h b/drivers/staging/rtl8723bs/include/hal_intf.h
index a7ae8c006f0c..7b63116525ca 100644
--- a/drivers/staging/rtl8723bs/include/hal_intf.h
+++ b/drivers/staging/rtl8723bs/include/hal_intf.h
@@ -191,7 +191,7 @@ u8 rtw_hal_check_ips_status(struct adapter *padapter);
int rtw_hal_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe);
s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe);
-s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe);
+int rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe);
s32 rtw_hal_init_xmit_priv(struct adapter *padapter);
void rtw_hal_free_xmit_priv(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/hal_pg.h b/drivers/staging/rtl8723bs/include/hal_pg.h
index 32e66fe451b0..6f8c8307eaa7 100644
--- a/drivers/staging/rtl8723bs/include/hal_pg.h
+++ b/drivers/staging/rtl8723bs/include/hal_pg.h
@@ -38,7 +38,7 @@
#define EEPROM_RF_BOARD_OPTION_8723B 0xC1
#define EEPROM_RF_BT_SETTING_8723B 0xC3
-#define EEPROM_DEFAULT_DIFF 0XFE
+#define EEPROM_DEFAULT_DIFF -2
/* RTL8723BS */
#define EEPROM_MAC_ADDR_8723BS 0x11A
diff --git a/drivers/staging/rtl8723bs/include/hal_phy.h b/drivers/staging/rtl8723bs/include/hal_phy.h
index abc0f27fdaa4..2e519a3044d8 100644
--- a/drivers/staging/rtl8723bs/include/hal_phy.h
+++ b/drivers/staging/rtl8723bs/include/hal_phy.h
@@ -6,10 +6,9 @@
******************************************************************************/
#ifndef __HAL_PHY_H__
#define __HAL_PHY_H__
-/* */
+
/* Antenna detection method, i.e., using single tone detection or RSSI reported from each antenna detected. */
/* Added by Roger, 2013.05.22. */
-/* */
#define ANT_DETECT_BY_SINGLE_TONE BIT(0)
#define ANT_DETECT_BY_RSSI BIT(1)
#define IS_ANT_DETECT_SUPPORT_SINGLE_TONE(__Adapter) ((GET_HAL_DATA(__Adapter)->AntDetection) & ANT_DETECT_BY_SINGLE_TONE)
@@ -17,16 +16,6 @@
/*--------------------------Define Parameters-------------------------------*/
-enum {
- RF_TYPE_MIN = 0, /* 0 */
- RF_8225 = 1, /* 1 11b/g RF for verification only */
- RF_8256 = 2, /* 2 11b/g/n */
- RF_8258 = 3, /* 3 11a/b/g/n RF */
- RF_6052 = 4, /* 4 11b/g/n RF */
- RF_PSEUDO_11N = 5, /* 5, It is a temporality RF. */
- RF_TYPE_MAX
-};
-
enum rf_path {
RF_PATH_A = 0,
RF_PATH_B,
@@ -34,12 +23,6 @@ enum rf_path {
};
#define TX_1S 0
-#define TX_2S 1
-#define TX_3S 2
-#define TX_4S 3
-
-#define RF_PATH_MAX_92C_88E 2
-#define RF_PATH_MAX_90_8812 4 /* Max RF number 90 support */
enum wireless_mode {
WIRELESS_MODE_UNKNOWN = 0x00,
diff --git a/drivers/staging/rtl8723bs/include/ieee80211.h b/drivers/staging/rtl8723bs/include/ieee80211.h
index 9f421e4875b7..9767013887af 100644
--- a/drivers/staging/rtl8723bs/include/ieee80211.h
+++ b/drivers/staging/rtl8723bs/include/ieee80211.h
@@ -22,7 +22,6 @@ enum {
RTL871X_HOSTAPD_ADD_STA = 2,
RTL871X_HOSTAPD_REMOVE_STA = 3,
RTL871X_HOSTAPD_GET_INFO_STA = 4,
- /* REMOVED: PRISM2_HOSTAPD_RESET_TXEXC_STA = 5, */
RTL871X_HOSTAPD_GET_WPAIE_STA = 5,
RTL871X_SET_ENCRYPTION = 6,
RTL871X_GET_ENCRYPTION = 7,
@@ -610,17 +609,8 @@ enum rtw_ieee80211_channel_flags {
/* Represent channel details, subset of ieee80211_channel */
struct rtw_ieee80211_channel {
- /* enum nl80211_band band; */
- /* u16 center_freq; */
u16 hw_value;
u32 flags;
- /* int max_antenna_gain; */
- /* int max_power; */
- /* int max_reg_power; */
- /* bool beacon_found; */
- /* u32 orig_flags; */
- /* int orig_mag; */
- /* int orig_mpwr; */
};
/* Parsed Information Elements */
diff --git a/drivers/staging/rtl8723bs/include/ioctl_cfg80211.h b/drivers/staging/rtl8723bs/include/ioctl_cfg80211.h
index a1fc18cd247b..15c14b28165e 100644
--- a/drivers/staging/rtl8723bs/include/ioctl_cfg80211.h
+++ b/drivers/staging/rtl8723bs/include/ioctl_cfg80211.h
@@ -16,7 +16,6 @@ struct rtw_wdev_priv {
spinlock_t scan_req_lock;
struct net_device *pmon_ndev;/* for monitor interface */
- char ifname_mon[IFNAMSIZ + 1]; /* interface name for monitor interface */
bool block;
bool power_mgmt;
diff --git a/drivers/staging/rtl8723bs/include/osdep_intf.h b/drivers/staging/rtl8723bs/include/osdep_intf.h
index 83a25598e962..f1e7a303a286 100644
--- a/drivers/staging/rtl8723bs/include/osdep_intf.h
+++ b/drivers/staging/rtl8723bs/include/osdep_intf.h
@@ -20,7 +20,6 @@ u32 rtw_start_drv_threads(struct adapter *padapter);
void rtw_stop_drv_threads(struct adapter *padapter);
void rtw_cancel_all_timer(struct adapter *padapter);
-int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname);
struct net_device *rtw_init_netdev(struct adapter *padapter);
void rtw_unregister_netdevs(struct dvobj_priv *dvobj);
diff --git a/drivers/staging/rtl8723bs/include/osdep_service.h b/drivers/staging/rtl8723bs/include/osdep_service.h
index 2f5011a8210c..e2eebd46cb5c 100644
--- a/drivers/staging/rtl8723bs/include/osdep_service.h
+++ b/drivers/staging/rtl8723bs/include/osdep_service.h
@@ -15,7 +15,7 @@
#include <osdep_service_linux.h>
-extern int RTW_STATUS_CODE(int error_code);
+int RTW_STATUS_CODE(int error_code);
int _rtw_netif_rx(struct net_device *ndev, struct sk_buff *skb);
@@ -29,7 +29,7 @@ static inline void flush_signals_thread(void)
#define _RND(sz, r) ((((sz)+((r)-1))/(r))*(r))
-extern void rtw_free_netdev(struct net_device *netdev);
+void rtw_free_netdev(struct net_device *netdev);
/* Macros for handling unaligned memory accesses */
diff --git a/drivers/staging/rtl8723bs/include/osdep_service_linux.h b/drivers/staging/rtl8723bs/include/osdep_service_linux.h
index c8274da940ff..cc5eaf6a2c61 100644
--- a/drivers/staging/rtl8723bs/include/osdep_service_linux.h
+++ b/drivers/staging/rtl8723bs/include/osdep_service_linux.h
@@ -113,6 +113,6 @@ static inline struct adapter *rtw_netdev_priv(struct net_device *netdev)
}
struct net_device *rtw_alloc_etherdev_with_old_priv(int sizeof_priv, void *old_priv);
-extern struct net_device *rtw_alloc_etherdev(int sizeof_priv);
+struct net_device *rtw_alloc_etherdev(int sizeof_priv);
#endif
diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_cmd.h b/drivers/staging/rtl8723bs/include/rtl8723b_cmd.h
index 6b2d79e19088..5e8fc814bbe7 100644
--- a/drivers/staging/rtl8723bs/include/rtl8723b_cmd.h
+++ b/drivers/staging/rtl8723bs/include/rtl8723b_cmd.h
@@ -7,9 +7,7 @@
#ifndef __RTL8723B_CMD_H__
#define __RTL8723B_CMD_H__
-/* */
/* H2C CMD DEFINITION ------------------------------------------------ */
-/* */
enum {
/* Common Class: 000 */
@@ -71,9 +69,9 @@ enum {
H2C_8723B_RESET_TSF = 0xC0,
H2C_8723B_MAXID,
};
-/* */
+
/* H2C CMD CONTENT -------------------------------------------------- */
-/* */
+
/* _RSVDPAGE_LOC_CMD_0x00 */
#define SET_8723B_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(__pH2CCmd, __Value) SET_BITS_TO_LE_1BYTE_8BIT(__pH2CCmd, 0, 8, __Value)
#define SET_8723B_H2CCMD_RSVDPAGE_LOC_PSPOLL(__pH2CCmd, __Value) SET_BITS_TO_LE_1BYTE_8BIT((__pH2CCmd)+1, 0, 8, __Value)
@@ -158,9 +156,7 @@ enum {
#define SET_8723B_H2CCMD_BT_FW_PATCH_ADDR2(__pH2CCmd, __Value) SET_BITS_TO_LE_1BYTE((__pH2CCmd)+4, 0, 8, __Value)
#define SET_8723B_H2CCMD_BT_FW_PATCH_ADDR3(__pH2CCmd, __Value) SET_BITS_TO_LE_1BYTE((__pH2CCmd)+5, 0, 8, __Value)
-/* */
/* Function Statement -------------------------------------------------- */
-/* */
/* host message to firmware cmd */
void rtl8723b_set_FwPwrMode_cmd(struct adapter *padapter, u8 Mode);
@@ -168,7 +164,6 @@ void rtl8723b_set_FwJoinBssRpt_cmd(struct adapter *padapter, u8 mstatus);
void rtl8723b_set_rssi_cmd(struct adapter *padapter, u8 *param);
void rtl8723b_Add_RateATid(struct adapter *padapter, u32 bitmap, u8 *arg, u8 rssi_level);
void rtl8723b_fw_try_ap_cmd(struct adapter *padapter, u32 need_ack);
-/* s32 rtl8723b_set_lowpwr_lps_cmd(struct adapter *padapter, u8 enable); */
void rtl8723b_set_FwPsTuneParam_cmd(struct adapter *padapter);
void rtl8723b_set_FwMacIdConfig_cmd(struct adapter *padapter, u8 mac_id, u8 raid, u8 bw, u8 sgi, u32 mask);
void rtl8723b_set_FwMediaStatusRpt_cmd(struct adapter *padapter, u8 mstatus, u8 macid);
diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_dm.h b/drivers/staging/rtl8723bs/include/rtl8723b_dm.h
index 50ab7aed079e..cc94edcaeb3c 100644
--- a/drivers/staging/rtl8723bs/include/rtl8723b_dm.h
+++ b/drivers/staging/rtl8723bs/include/rtl8723b_dm.h
@@ -6,21 +6,13 @@
******************************************************************************/
#ifndef __RTL8723B_DM_H__
#define __RTL8723B_DM_H__
-/* */
+
/* Description: */
-/* */
/* This file is for 8723B dynamic mechanism only */
-/* */
-/* */
-/* */
-/* */
/* structure and define */
-/* */
-/* */
/* function prototype */
-/* */
void rtl8723b_init_dm_priv(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_hal.h b/drivers/staging/rtl8723bs/include/rtl8723b_hal.h
index c442f01aa585..8d1d721a6d72 100644
--- a/drivers/staging/rtl8723bs/include/rtl8723b_hal.h
+++ b/drivers/staging/rtl8723bs/include/rtl8723b_hal.h
@@ -19,9 +19,7 @@
#include "Hal8192CPhyReg.h"
#include "hal_phy_cfg.h"
-/* */
/* RTL8723B From header */
-/* */
#define FW_8723B_SIZE 0x8000
#define FW_8723B_START_ADDRESS 0x1000
@@ -150,9 +148,7 @@ struct rt_firmware_hdr {
#define EFUSE_ACCESS_ON 0x69 /* For RTL8723 only. */
#define EFUSE_ACCESS_OFF 0x00 /* For RTL8723 only. */
-/* */
/* EFUSE for BT definition */
-/* */
#define EFUSE_BT_REAL_BANK_CONTENT_LEN 512
#define EFUSE_BT_REAL_CONTENT_LEN 1536 /* 512*3 */
#define EFUSE_BT_MAP_LEN 1024 /* 1k bytes */
@@ -193,7 +189,7 @@ enum { /* tag_Package_Definition */
PACKAGE_TFBGA79
};
-/* rtl8723a_hal_init.c */
+/* rtl8723b_hal_init.c */
s32 rtl8723b_FirmwareDownload(struct adapter *padapter, bool bUsedWoWLANFw);
void rtl8723b_FirmwareSelfReset(struct adapter *padapter);
void rtl8723b_InitializeFirmwareVars(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_spec.h b/drivers/staging/rtl8723bs/include/rtl8723b_spec.h
index 7f749e32a5b9..a5ca5ae1a934 100644
--- a/drivers/staging/rtl8723bs/include/rtl8723b_spec.h
+++ b/drivers/staging/rtl8723bs/include/rtl8723b_spec.h
@@ -9,11 +9,7 @@
#define HAL_NAV_UPPER_UNIT_8723B 128 /* micro-second */
-/* */
-/* */
/* 0x0000h ~ 0x00FFh System Configuration */
-/* */
-/* */
#define REG_RSV_CTRL_8723B 0x001C /* 3 Byte */
#define REG_BT_WIFI_ANTENNA_SWITCH_8723B 0x0038
#define REG_HSISR_8723B 0x005c
@@ -29,11 +25,7 @@
#define REG_HISR1_8723B 0x00BC
#define REG_PMC_DBG_CTRL2_8723B 0x00CC
-/* */
-/* */
/* 0x0100h ~ 0x01FFh MACTOP General Configuration */
-/* */
-/* */
#define REG_C2HEVT_CMD_ID_8723B 0x01A0
#define REG_C2HEVT_CMD_LEN_8723B 0x01AE
#define REG_WOWLAN_WAKE_REASON 0x01C7
@@ -45,25 +37,14 @@
#define REG_HMEBOX_EXT2_8723B 0x01F8
#define REG_HMEBOX_EXT3_8723B 0x01FC
-/* */
-/* */
/* 0x0200h ~ 0x027Fh TXDMA Configuration */
-/* */
-/* */
-/* */
-/* */
/* 0x0280h ~ 0x02FFh RXDMA Configuration */
-/* */
-/* */
+
#define REG_RXDMA_CONTROL_8723B 0x0286 /* Control the RX DMA. */
#define REG_RXDMA_MODE_CTRL_8723B 0x0290
-/* */
-/* */
/* 0x0300h ~ 0x03FFh PCIe */
-/* */
-/* */
#define REG_PCIE_CTRL_REG_8723B 0x0300
#define REG_INT_MIG_8723B 0x0304 /* Interrupt Migration */
#define REG_BCNQ_DESA_8723B 0x0308 /* TX Beacon Descriptor Address */
@@ -86,49 +67,27 @@
#define REG_PCIE_HCPWM_8723B 0x0363 /* PCIe CPWM */
#define REG_PCIE_MULTIFET_CTRL_8723B 0x036A /* PCIE Multi-Fethc Control */
-/* */
-/* */
/* 0x0400h ~ 0x047Fh Protocol Configuration */
-/* */
-/* */
#define REG_TXPKTBUF_BCNQ_BDNY_8723B 0x0424
#define REG_TXPKTBUF_MGQ_BDNY_8723B 0x0425
#define REG_TXPKTBUF_WMAC_LBK_BF_HD_8723B 0x045D
#define REG_AMPDU_BURST_MODE_8723B 0x04BC
-/* */
-/* */
/* 0x0500h ~ 0x05FFh EDCA Configuration */
-/* */
-/* */
#define REG_SECONDARY_CCA_CTRL_8723B 0x0577
-/* */
-/* */
/* 0x0600h ~ 0x07FFh WMAC Configuration */
-/* */
-/* */
-/* */
/* SDIO Bus Specification */
-/* */
-/* */
/* SDIO CMD Address Mapping */
-/* */
-/* */
/* I/O bus domain (Host) */
-/* */
-/* */
/* SDIO register */
-/* */
#define SDIO_REG_HCPWM1_8723B 0x025 /* HCI Current Power Mode 1 */
-/* */
/* 8723 Register Bit and Content definition */
-/* */
/* 2 HSISR */
/* interrupt mask which needs to clear */
@@ -138,54 +97,27 @@
HSISR_PDNINT |\
HSISR_GPIO9_INT)
-/* */
-/* */
/* 0x0100h ~ 0x01FFh MACTOP General Configuration */
-/* */
-/* */
-/* */
-/* */
/* 0x0200h ~ 0x027Fh TXDMA Configuration */
-/* */
-/* */
-/* */
-/* */
/* 0x0280h ~ 0x02FFh RXDMA Configuration */
-/* */
-/* */
#define BIT_USB_RXDMA_AGG_EN BIT(31)
#define RXDMA_AGG_MODE_EN BIT(1)
-/* */
-/* */
/* 0x0400h ~ 0x047Fh Protocol Configuration */
-/* */
-/* */
-/* */
/* 8723B REG_CCK_CHECK (offset 0x454) */
-/* */
+
#define BIT_BCN_PORT_SEL BIT(5)
-/* */
-/* */
/* 0x0500h ~ 0x05FFh EDCA Configuration */
-/* */
-/* */
-/* */
-/* */
/* 0x0600h ~ 0x07FFh WMAC Configuration */
-/* */
-/* */
#define EEPROM_RF_GAIN_OFFSET 0xC1
#define EEPROM_RF_GAIN_VAL 0x1F6
-/* */
/* 8195 IMR/ISR bits (offset 0xB0, 8bits) */
-/* */
#define IMR_DISABLED_8723B 0
/* IMR DW0(0x00B0-00B3) Bit 0-31 */
#define IMR_TIMER2_8723B BIT(31) /* Timeout interrupt 2 */
diff --git a/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h b/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h
index ddf868c7899b..d02ead67777a 100644
--- a/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h
+++ b/drivers/staging/rtl8723bs/include/rtl8723b_xmit.h
@@ -7,9 +7,7 @@
#ifndef __RTL8723B_XMIT_H__
#define __RTL8723B_XMIT_H__
-/* */
/* Queue Select Value in TxDesc */
-/* */
#define QSLT_BK 0x2/* 0x01 */
#define QSLT_BE 0x0
#define QSLT_VI 0x5/* 0x4 */
@@ -56,9 +54,7 @@
/* OFFSET 20 */
#define SGI BIT(6)
-/* */
/* defined for TX DESC Operation */
-/* */
struct txdesc_8723b {
/* Offset 0 */
u32 pktlen:16;
@@ -364,11 +360,9 @@ struct txdesc_8723b {
#define SET_EARLYMODE_LEN3_8723B(__pAddr, __Value) SET_BITS_TO_LE_4BYTE(__pAddr+4, 17, 15, __Value)
#endif
-/* */
-/* */
+
/* Rate */
-/* */
-/* */
+
/* CCK Rates, TxHT = 0 */
#define DESC8723B_RATE1M 0x00
#define DESC8723B_RATE2M 0x01
diff --git a/drivers/staging/rtl8723bs/include/rtw_ap.h b/drivers/staging/rtl8723bs/include/rtw_ap.h
index 866aa8386931..07f092fd54d9 100644
--- a/drivers/staging/rtl8723bs/include/rtw_ap.h
+++ b/drivers/staging/rtl8723bs/include/rtw_ap.h
@@ -9,7 +9,6 @@
void init_mlme_ap_info(struct adapter *padapter);
void free_mlme_ap_info(struct adapter *padapter);
-/* void update_BCNTIM(struct adapter *padapter); */
void update_beacon(struct adapter *padapter, u8 ie_id, u8 tx);
void add_ratid(struct adapter *padapter, struct sta_info *psta, u8 rssi_level);
void expire_timeout_chk(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtw_cmd.h b/drivers/staging/rtl8723bs/include/rtw_cmd.h
index 2e791da7e815..75a774f8c4f3 100644
--- a/drivers/staging/rtl8723bs/include/rtw_cmd.h
+++ b/drivers/staging/rtl8723bs/include/rtw_cmd.h
@@ -49,7 +49,6 @@
u32 cmd_done_cnt;
u32 rsp_cnt;
atomic_t cmdthd_running;
- /* u8 cmdthd_running; */
u8 stop_req;
struct adapter *padapter;
struct mutex sctx_mutex;
@@ -107,16 +106,16 @@ struct c2h_evt_hdr_88xx {
#define c2h_evt_valid(c2h_evt) ((c2h_evt)->id || (c2h_evt)->plen)
int rtw_enqueue_cmd(struct cmd_priv *pcmdpriv, struct cmd_obj *obj);
-extern struct cmd_obj *rtw_dequeue_cmd(struct cmd_priv *pcmdpriv);
-extern void rtw_free_cmd_obj(struct cmd_obj *pcmd);
+struct cmd_obj *rtw_dequeue_cmd(struct cmd_priv *pcmdpriv);
+void rtw_free_cmd_obj(struct cmd_obj *pcmd);
void rtw_stop_cmd_thread(struct adapter *adapter);
int rtw_cmd_thread(void *context);
-extern void rtw_free_cmd_priv(struct cmd_priv *pcmdpriv);
+void rtw_free_cmd_priv(struct cmd_priv *pcmdpriv);
-extern void rtw_free_evt_priv(struct evt_priv *pevtpriv);
-extern void rtw_evt_notify_isr(struct evt_priv *pevtpriv);
+void rtw_free_evt_priv(struct evt_priv *pevtpriv);
+void rtw_evt_notify_isr(struct evt_priv *pevtpriv);
enum {
NONE_WK_CID,
@@ -159,80 +158,75 @@ enum {
};
/*
-Caller Mode: Infra, Ad-HoC
-
-Notes: To join a known BSS.
-
-Command-Event Mode
-
-*/
+ * Caller Mode: Infra, Ad-HoC
+ *
+ * Notes: To join a known BSS.
+ *
+ * Command-Event Mode
+ */
/*
-Caller Mode: Infra, Ad-Hoc
-
-Notes: To join the specified bss
-
-Command Event Mode
-
-*/
+ * Caller Mode: Infra, Ad-Hoc
+ *
+ * Notes: To join the specified bss
+ *
+ * Command Event Mode
+ */
struct joinbss_parm {
struct wlan_bssid_ex network;
};
/*
-Caller Mode: Infra, Ad-HoC(C)
-
-Notes: To disconnect the current associated BSS
-
-Command Mode
-
-*/
+ * Caller Mode: Infra, Ad-HoC(C)
+ *
+ * Notes: To disconnect the current associated BSS
+ *
+ * Command Mode
+ */
struct disconnect_parm {
u32 deauth_timeout_ms;
};
/*
-Caller Mode: AP, Ad-HoC(M)
-
-Notes: To create a BSS
-
-Command Mode
-*/
+ * Caller Mode: AP, Ad-HoC(M)
+ *
+ * Notes: To create a BSS
+ *
+ * Command Mode
+ */
struct createbss_parm {
struct wlan_bssid_ex network;
};
/*
-Caller Mode: AP, Ad-HoC, Infra
-
-Notes: To set the NIC mode of RTL8711
-
-Command Mode
-
-The definition of mode:
-
-#define IW_MODE_AUTO 0 Let the driver decides which AP to join
-#define IW_MODE_ADHOC 1 Single cell network (Ad-Hoc Clients)
-#define IW_MODE_INFRA 2 Multi cell network, roaming, ..
-#define IW_MODE_MASTER 3 Synchronisation master or Access Point
-#define IW_MODE_REPEAT 4 Wireless Repeater (forwarder)
-#define IW_MODE_SECOND 5 Secondary master/repeater (backup)
-#define IW_MODE_MONITOR 6 Passive monitor (listen only)
-
-*/
+ * Caller Mode: AP, Ad-HoC, Infra
+ *
+ * Notes: To set the NIC mode of RTL8711
+ *
+ * Command Mode
+ *
+ * The definition of mode:
+ *
+ * #define IW_MODE_AUTO 0 Let the driver decides which AP to join
+ * #define IW_MODE_ADHOC 1 Single cell network (Ad-Hoc Clients)
+ * #define IW_MODE_INFRA 2 Multi cell network, roaming, ..
+ * #define IW_MODE_MASTER 3 Synchronisation master or Access Point
+ * #define IW_MODE_REPEAT 4 Wireless Repeater (forwarder)
+ * #define IW_MODE_SECOND 5 Secondary master/repeater (backup)
+ * #define IW_MODE_MONITOR 6 Passive monitor (listen only)
+ */
struct setopmode_parm {
u8 mode;
u8 rsvd[3];
};
/*
-Caller Mode: AP, Ad-HoC, Infra
-
-Notes: To ask RTL8711 performing site-survey
-
-Command-Event Mode
-
-*/
+ * Caller Mode: AP, Ad-HoC, Infra
+ *
+ * Notes: To ask RTL8711 performing site-survey
+ *
+ * Command-Event Mode
+ */
#define RTW_SSID_SCAN_AMOUNT 9 /* for WEXT_CSCAN_AMOUNT 9 */
#define RTW_CHANNEL_SCAN_AMOUNT (14+37)
@@ -245,13 +239,12 @@ struct sitesurvey_parm {
};
/*
-Caller Mode: Any
-
-Notes: To set the auth type of RTL8711. open/shared/802.1x
-
-Command Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To set the auth type of RTL8711. open/shared/802.1x
+ *
+ * Command Mode
+ */
struct setauth_parm {
u8 mode; /* 0: legacy open, 1: legacy shared 2: 802.1x */
u8 _1x; /* 0: PSK, 1: TLS */
@@ -259,17 +252,16 @@ struct setauth_parm {
};
/*
-Caller Mode: Infra
-
-a. algorithm: wep40, wep104, tkip & aes
-b. keytype: grp key/unicast key
-c. key contents
-
-when shared key ==> keyid is the camid
-when 802.1x ==> keyid [0:1] ==> grp key
-when 802.1x ==> keyid > 2 ==> unicast key
-
-*/
+ * Caller Mode: Infra
+ *
+ * a. algorithm: wep40, wep104, tkip & aes
+ * b. keytype: grp key/unicast key
+ * c. key contents
+ *
+ * when shared key ==> keyid is the camid
+ * when 802.1x ==> keyid [0:1] ==> grp key
+ * when 802.1x ==> keyid > 2 ==> unicast key
+ */
struct setkey_parm {
u8 algorithm; /* encryption algorithm, could be none, wep40, TKIP, CCMP, wep104 */
u8 keyid;
@@ -279,14 +271,13 @@ struct setkey_parm {
};
/*
-When in AP or Ad-Hoc mode, this is used to
-allocate an sw/hw entry for a newly associated sta.
-
-Command
-
-when shared key ==> algorithm/keyid
-
-*/
+ * When in AP or Ad-Hoc mode, this is used to
+ * allocate an sw/hw entry for a newly associated sta.
+ *
+ * Command
+ *
+ * when shared key ==> algorithm/keyid
+ */
struct set_stakey_parm {
u8 addr[ETH_ALEN];
u8 algorithm;
@@ -301,15 +292,14 @@ struct set_stakey_rsp {
};
/*
-Caller Ad-Hoc/AP
-
-Command -Rsp(AID == CAMID) mode
-
-This is to force fw to add an sta_data entry per driver's request.
-
-FW will write an cam entry associated with it.
-
-*/
+ * Caller Ad-Hoc/AP
+ *
+ * Command -Rsp(AID == CAMID) mode
+ *
+ * This is to force fw to add an sta_data entry per driver's request.
+ *
+ * FW will write an cam entry associated with it.
+ */
struct set_assocsta_parm {
u8 addr[ETH_ALEN];
};
@@ -320,27 +310,25 @@ struct set_assocsta_rsp {
};
/*
- Caller Ad-Hoc/AP
+ * Caller Ad-Hoc/AP
- Command mode
+ * Command mode
- This is to force fw to del an sta_data entry per driver's request
+ * This is to force fw to del an sta_data entry per driver's request
- FW will invalidate the cam entry associated with it.
-
-*/
+ * FW will invalidate the cam entry associated with it.
+ */
struct del_assocsta_parm {
u8 addr[ETH_ALEN];
};
/*
-Caller Mode: AP/Ad-HoC(M)
-
-Notes: To notify fw that given staid has changed its power state
-
-Command Mode
-
-*/
+ * Caller Mode: AP/Ad-HoC(M)
+ *
+ * Notes: To notify fw that given staid has changed its power state
+ *
+ * Command Mode
+ */
struct setstapwrstate_parm {
u8 staid;
u8 status;
@@ -348,68 +336,63 @@ struct setstapwrstate_parm {
};
/*
-Caller Mode: Any
-
-Notes: To setup the basic rate of RTL8711
-
-Command Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To setup the basic rate of RTL8711
+ *
+ * Command Mode
+ */
struct setbasicrate_parm {
u8 basicrates[NumRates];
};
/*
-Caller Mode: Any
-
-Notes: To read the current basic rate
-
-Command-Rsp Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To read the current basic rate
+ *
+ * Command-Rsp Mode
+ */
struct getbasicrate_parm {
u32 rsvd;
};
/*
-Caller Mode: Any
-
-Notes: To setup the data rate of RTL8711
-
-Command Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To setup the data rate of RTL8711
+ *
+ * Command Mode
+ */
struct setdatarate_parm {
u8 mac_id;
u8 datarates[NumRates];
};
/*
-Caller Mode: Any
-
-Notes: To read the current data rate
-
-Command-Rsp Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To read the current data rate
+ *
+ * Command-Rsp Mode
+ */
struct getdatarate_parm {
u32 rsvd;
};
/*
-Caller Mode: Any
-AP: AP can use the info for the contents of beacon frame
-Infra: STA can use the info when sitesurveying
-Ad-HoC(M): Like AP
-Ad-HoC(C): Like STA
+ * Caller Mode: Any
+ * AP: AP can use the info for the contents of beacon frame
+ * Infra: STA can use the info when sitesurveying
+ * Ad-HoC(M): Like AP
+ * Ad-HoC(C): Like STA
-Notes: To set the phy capability of the NIC
+ * Notes: To set the phy capability of the NIC
-Command Mode
-
-*/
+ * Command Mode
+ */
struct setphyinfo_parm {
struct regulatory_class class_sets[NUM_REGULATORYS];
@@ -421,27 +404,25 @@ struct getphyinfo_parm {
};
/*
-Caller Mode: Any
-
-Notes: To set the channel/modem/band
-This command will be used when channel/modem/band is changed.
-
-Command Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To set the channel/modem/band
+ * This command will be used when channel/modem/band is changed.
+ *
+ * Command Mode
+ */
struct setphy_parm {
u8 rfchannel;
u8 modem;
};
/*
-Caller Mode: Any
-
-Notes: To get the current setting of channel/modem/band
-
-Command-Rsp Mode
-
-*/
+ * Caller Mode: Any
+ *
+ * Notes: To get the current setting of channel/modem/band
+ *
+ * Command-Rsp Mode
+ */
struct getphy_parm {
u32 rsvd;
@@ -452,58 +433,57 @@ struct Tx_Beacon_param {
};
/*
- Notes: This command is used for H2C/C2H loopback testing
-
- mac[0] == 0
- ==> CMD mode, return H2C_SUCCESS.
- The following condition must be true under CMD mode
- mac[1] == mac[4], mac[2] == mac[3], mac[0]=mac[5]= 0;
- s0 == 0x1234, s1 == 0xabcd, w0 == 0x78563412, w1 == 0x5aa5def7;
- s2 == (b1 << 8 | b0);
-
- mac[0] == 1
- ==> CMD_RSP mode, return H2C_SUCCESS_RSP
-
- The rsp layout shall be:
- rsp: parm:
- mac[0] = mac[5];
- mac[1] = mac[4];
- mac[2] = mac[3];
- mac[3] = mac[2];
- mac[4] = mac[1];
- mac[5] = mac[0];
- s0 = s1;
- s1 = swap16(s0);
- w0 = swap32(w1);
- b0 = b1
- s2 = s0 + s1
- b1 = b0
- w1 = w0
-
- mac[0] == 2
- ==> CMD_EVENT mode, return H2C_SUCCESS
- The event layout shall be:
- event: parm:
- mac[0] = mac[5];
- mac[1] = mac[4];
- mac[2] = event's sequence number, starting from 1 to parm's marc[3]
- mac[3] = mac[2];
- mac[4] = mac[1];
- mac[5] = mac[0];
- s0 = swap16(s0) - event.mac[2];
- s1 = s1 + event.mac[2];
- w0 = swap32(w0);
- b0 = b1
- s2 = s0 + event.mac[2]
- b1 = b0
- w1 = swap32(w1) - event.mac[2];
-
- parm->mac[3] is the total event counts that host requested.
-
-
- event will be the same with the cmd's param.
-
-*/
+ * Notes: This command is used for H2C/C2H loopback testing
+ *
+ * mac[0] == 0
+ * ==> CMD mode, return H2C_SUCCESS.
+ * The following condition must be true under CMD mode
+ * mac[1] == mac[4], mac[2] == mac[3], mac[0]=mac[5]= 0;
+ * s0 == 0x1234, s1 == 0xabcd, w0 == 0x78563412, w1 == 0x5aa5def7;
+ * s2 == (b1 << 8 | b0);
+ *
+ * mac[0] == 1
+ * ==> CMD_RSP mode, return H2C_SUCCESS_RSP
+ *
+ * The rsp layout shall be:
+ * rsp: parm:
+ * mac[0] = mac[5];
+ * mac[1] = mac[4];
+ * mac[2] = mac[3];
+ * mac[3] = mac[2];
+ * mac[4] = mac[1];
+ * mac[5] = mac[0];
+ * s0 = s1;
+ * s1 = swap16(s0);
+ * w0 = swap32(w1);
+ * b0 = b1
+ * s2 = s0 + s1
+ * b1 = b0
+ * w1 = w0
+ *
+ * mac[0] == 2
+ * ==> CMD_EVENT mode, return H2C_SUCCESS
+ * The event layout shall be:
+ * event: parm:
+ * mac[0] = mac[5];
+ * mac[1] = mac[4];
+ * mac[2] = event's sequence number, starting from 1 to parm's marc[3]
+ * mac[3] = mac[2];
+ * mac[4] = mac[1];
+ * mac[5] = mac[0];
+ * s0 = swap16(s0) - event.mac[2];
+ * s1 = s1 + event.mac[2];
+ * w0 = swap32(w0);
+ * b0 = b1
+ * s2 = s0 + event.mac[2]
+ * b1 = b0
+ * w1 = swap32(w1) - event.mac[2];
+ *
+ * parm->mac[3] is the total event counts that host requested.
+ *
+ *
+ * event will be the same with the cmd's param.
+ */
/* CMD param Formart for driver extra cmd handler */
struct drvextra_cmd_parm {
@@ -551,15 +531,14 @@ struct RunInThread_param {
/*
-
-Result:
-0x00: success
-0x01: success, and check Response.
-0x02: cmd ignored due to duplicated sequence number
-0x03: cmd dropped due to invalid cmd code
-0x04: reserved.
-
-*/
+ *
+ * Result:
+ * 0x00: success
+ * 0x01: success, and check Response.
+ * 0x02: cmd ignored due to duplicated sequence number
+ * 0x03: cmd dropped due to invalid cmd code
+ * 0x04: reserved.
+ */
#define H2C_RSP_OFFSET 512
@@ -573,50 +552,50 @@ Result:
#define H2C_RESERVED 0x07
u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct ndis_802_11_ssid *ssid, int ssid_num, struct rtw_ieee80211_channel *ch, int ch_num);
-extern u8 rtw_createbss_cmd(struct adapter *padapter);
+u8 rtw_createbss_cmd(struct adapter *padapter);
int rtw_startbss_cmd(struct adapter *padapter, int flags);
struct sta_info;
-extern u8 rtw_setstakey_cmd(struct adapter *padapter, struct sta_info *sta, u8 unicast_key, bool enqueue);
-extern u8 rtw_clearstakey_cmd(struct adapter *padapter, struct sta_info *sta, u8 enqueue);
+u8 rtw_setstakey_cmd(struct adapter *padapter, struct sta_info *sta, u8 unicast_key, bool enqueue);
+u8 rtw_clearstakey_cmd(struct adapter *padapter, struct sta_info *sta, u8 enqueue);
-extern u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network *pnetwork);
+u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network *pnetwork);
u8 rtw_disassoc_cmd(struct adapter *padapter, u32 deauth_timeout_ms, bool enqueue);
-extern u8 rtw_setopmode_cmd(struct adapter *padapter, enum nl80211_iftype networktype, bool enqueue);
-extern u8 rtw_setrfintfs_cmd(struct adapter *padapter, u8 mode);
+u8 rtw_setopmode_cmd(struct adapter *padapter, enum nl80211_iftype networktype, bool enqueue);
+u8 rtw_setrfintfs_cmd(struct adapter *padapter, u8 mode);
-extern u8 rtw_gettssi_cmd(struct adapter *padapter, u8 offset, u8 *pval);
-extern u8 rtw_setfwdig_cmd(struct adapter *padapter, u8 type);
-extern u8 rtw_setfwra_cmd(struct adapter *padapter, u8 type);
+u8 rtw_gettssi_cmd(struct adapter *padapter, u8 offset, u8 *pval);
+u8 rtw_setfwdig_cmd(struct adapter *padapter, u8 type);
+u8 rtw_setfwra_cmd(struct adapter *padapter, u8 type);
-extern u8 rtw_addbareq_cmd(struct adapter *padapter, u8 tid, u8 *addr);
-extern u8 rtw_reset_securitypriv_cmd(struct adapter *padapter);
-extern u8 rtw_free_assoc_resources_cmd(struct adapter *padapter);
-extern u8 rtw_dynamic_chk_wk_cmd(struct adapter *adapter);
+u8 rtw_addbareq_cmd(struct adapter *padapter, u8 tid, u8 *addr);
+u8 rtw_reset_securitypriv_cmd(struct adapter *padapter);
+u8 rtw_free_assoc_resources_cmd(struct adapter *padapter);
+u8 rtw_dynamic_chk_wk_cmd(struct adapter *adapter);
u8 rtw_lps_ctrl_wk_cmd(struct adapter *padapter, u8 lps_ctrl_type, u8 enqueue);
u8 rtw_dm_in_lps_wk_cmd(struct adapter *padapter);
u8 rtw_dm_ra_mask_wk_cmd(struct adapter *padapter, u8 *psta);
-extern u8 rtw_ps_cmd(struct adapter *padapter);
+u8 rtw_ps_cmd(struct adapter *padapter);
u8 rtw_chk_hi_queue_cmd(struct adapter *padapter);
-extern u8 rtw_c2h_packet_wk_cmd(struct adapter *padapter, u8 *pbuf, u16 length);
-extern u8 rtw_c2h_wk_cmd(struct adapter *padapter, u8 *c2h_evt);
+u8 rtw_c2h_packet_wk_cmd(struct adapter *padapter, u8 *pbuf, u16 length);
+u8 rtw_c2h_wk_cmd(struct adapter *padapter, u8 *c2h_evt);
u8 rtw_drvextra_cmd_hdl(struct adapter *padapter, unsigned char *pbuf);
-extern void rtw_survey_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_disassoc_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_joinbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_createbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_getbbrfreg_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_survey_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_disassoc_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_joinbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_createbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_getbbrfreg_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_setstaKey_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_setassocsta_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
-extern void rtw_getrttbl_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_setstaKey_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_setassocsta_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
+void rtw_getrttbl_cmdrsp_callback(struct adapter *padapter, struct cmd_obj *pcmd);
struct _cmd_callback {
diff --git a/drivers/staging/rtl8723bs/include/rtw_eeprom.h b/drivers/staging/rtl8723bs/include/rtw_eeprom.h
index 9b84105af816..4294b021f1bd 100644
--- a/drivers/staging/rtl8723bs/include/rtw_eeprom.h
+++ b/drivers/staging/rtl8723bs/include/rtw_eeprom.h
@@ -34,14 +34,12 @@
#define eeprom_cis0_sz 17
#define eeprom_cis1_sz 50
-/* */
/* Customer ID, note that: */
/* This variable is initiailzed through EEPROM or registry, */
/* however, its definition may be different with that in EEPROM for */
/* EEPROM size consideration. So, we have to perform proper translation between them. */
/* Besides, CustomerID of registry has precedence of that of EEPROM. */
/* defined below. 060703, by rcnjko. */
-/* */
enum {
RT_CID_DEFAULT = 0,
RT_CID_8187_ALPHA0 = 1,
diff --git a/drivers/staging/rtl8723bs/include/rtw_efuse.h b/drivers/staging/rtl8723bs/include/rtw_efuse.h
index 808ba94a5998..865a47637b5a 100644
--- a/drivers/staging/rtl8723bs/include/rtw_efuse.h
+++ b/drivers/staging/rtl8723bs/include/rtw_efuse.h
@@ -30,13 +30,11 @@ enum {
#define EFUSE_REPEAT_THRESHOLD_ 3
-/* */
/* The following is for BT Efuse definition */
-/* */
#define EFUSE_BT_MAX_MAP_LEN 1024
#define EFUSE_MAX_BANK 4
#define EFUSE_MAX_BT_BANK (EFUSE_MAX_BANK-1)
-/* */
+
/*--------------------------Define Parameters-------------------------------*/
#define EFUSE_MAX_WORD_UNIT 4
@@ -71,8 +69,7 @@ struct efuse_hal {
u8 rtw_efuse_calculate_word_counts(u8 word_en);
u8 rtw_efuse_one_byte_read(struct adapter *padapter, u16 addr, u8 *data);
-u8 rtw_efuse_read_1_byte(struct adapter *padapter, u16 Address);
-void rtw_efuse_shadow_map_update(struct adapter *padapter, u8 efuseType);
-void rtw_efuse_shadow_read(struct adapter *padapter, u8 Type, u16 Offset, u32 *Value);
+u8 rtw_efuse_read_1_byte(struct adapter *padapter, u16 address);
+void rtw_efuse_shadow_map_update(struct adapter *padapter, u8 efuse_type);
#endif
diff --git a/drivers/staging/rtl8723bs/include/rtw_ht.h b/drivers/staging/rtl8723bs/include/rtw_ht.h
index da3efba7112a..e1c35fb450d0 100644
--- a/drivers/staging/rtl8723bs/include/rtw_ht.h
+++ b/drivers/staging/rtl8723bs/include/rtw_ht.h
@@ -14,7 +14,6 @@ struct ht_priv {
u8 tx_amsdu_enable;/* for enable Tx A-MSDU */
u8 bss_coexist;/* for 20/40 Bss coexist */
- /* u8 baddbareq_issued[16]; */
u32 tx_amsdu_maxlen; /* 1: 8k, 0:4k ; default:8k, for tx */
u32 rx_ampdu_maxlen; /* for rx reordering ctrl win_sz, updated when join_callback. */
@@ -26,7 +25,6 @@ struct ht_priv {
/* for processing Tx A-MPDU */
u8 agg_enable_bitmap;
- /* u8 ADDBA_retry_count; */
u8 candidate_tid_bitmap;
u8 ldpc_cap;
diff --git a/drivers/staging/rtl8723bs/include/rtw_io.h b/drivers/staging/rtl8723bs/include/rtw_io.h
index 3c99a2bc19bd..55bedd912993 100644
--- a/drivers/staging/rtl8723bs/include/rtw_io.h
+++ b/drivers/staging/rtl8723bs/include/rtw_io.h
@@ -43,15 +43,15 @@ struct io_priv {
};
-extern u8 rtw_read8(struct adapter *adapter, u32 addr);
-extern u16 rtw_read16(struct adapter *adapter, u32 addr);
-extern u32 rtw_read32(struct adapter *adapter, u32 addr);
+u8 rtw_read8(struct adapter *adapter, u32 addr);
+u16 rtw_read16(struct adapter *adapter, u32 addr);
+u32 rtw_read32(struct adapter *adapter, u32 addr);
-extern int rtw_write8(struct adapter *adapter, u32 addr, u8 val);
-extern int rtw_write16(struct adapter *adapter, u32 addr, u16 val);
-extern int rtw_write32(struct adapter *adapter, u32 addr, u32 val);
+int rtw_write8(struct adapter *adapter, u32 addr, u8 val);
+int rtw_write16(struct adapter *adapter, u32 addr, u16 val);
+int rtw_write32(struct adapter *adapter, u32 addr, u32 val);
-extern u32 rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem);
+u32 rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem);
int rtw_init_io_priv(struct adapter *padapter, void (*set_intf_ops)(struct adapter *padapter, struct _io_ops *pops));
diff --git a/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h b/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h
index 768e4868ecfd..020b143f36be 100644
--- a/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h
+++ b/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h
@@ -7,8 +7,6 @@
#ifndef __RTW_IOCTL_SET_H_
#define __RTW_IOCTL_SET_H_
-typedef u8 NDIS_802_11_PMKID_VALUE[16];
-
u8 rtw_set_802_11_authentication_mode(struct adapter *pdapter, enum ndis_802_11_authentication_mode authmode);
u8 rtw_set_802_11_add_wep(struct adapter *padapter, struct ndis_802_11_wep *wep);
u8 rtw_set_802_11_disassociate(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtw_mlme.h b/drivers/staging/rtl8723bs/include/rtw_mlme.h
index 6faa13535b62..4962eedc7410 100644
--- a/drivers/staging/rtl8723bs/include/rtw_mlme.h
+++ b/drivers/staging/rtl8723bs/include/rtw_mlme.h
@@ -164,10 +164,6 @@ struct mlme_priv {
/* Number of non-HT AP/stations */
int num_sta_no_ht;
- /* Number of HT AP/stations 20 MHz */
- /* int num_sta_ht_20mhz; */
-
-
int num_FortyMHzIntolerant;
struct ht_priv htpriv;
@@ -198,9 +194,6 @@ struct mlme_priv {
/* Number of HT associated stations that do not support greenfield */
int num_sta_ht_no_gf;
- /* Number of associated non-HT stations */
- /* int num_sta_no_ht; */
-
/* Number of HT associated stations 20 MHz */
int num_sta_ht_20mhz;
@@ -215,12 +208,10 @@ struct mlme_priv {
u32 assoc_rsp_len;
u8 *wps_beacon_ie;
- /* u8 *wps_probe_req_ie; */
u8 *wps_probe_resp_ie;
u8 *wps_assoc_resp_ie; /* this IE could include p2p ie / wfd ie */
u32 wps_beacon_ie_len;
- /* u32 wps_probe_req_ie_len; */
u32 wps_probe_resp_ie_len;
u32 wps_assoc_resp_ie_len; /* this IE len could include p2p ie / wfd ie */
@@ -249,32 +240,32 @@ struct hostapd_priv {
struct adapter *padapter;
};
-extern int hostapd_mode_init(struct adapter *padapter);
-extern void hostapd_mode_unload(struct adapter *padapter);
+int hostapd_mode_init(struct adapter *padapter);
+void hostapd_mode_unload(struct adapter *padapter);
-extern void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf);
-extern void rtw_survey_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_surveydone_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_joinbss_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_stassoc_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_cpwm_event_callback(struct adapter *adapter, u8 *pbuf);
-extern void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf);
+void rtw_joinbss_event_prehandle(struct adapter *adapter, u8 *pbuf);
+void rtw_survey_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_surveydone_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_joinbss_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_stassoc_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_stadel_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_cpwm_event_callback(struct adapter *adapter, u8 *pbuf);
+void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf);
-extern void rtw_join_timeout_handler(struct timer_list *t);
-extern void _rtw_scan_timeout_handler(struct timer_list *t);
+void rtw_join_timeout_handler(struct timer_list *t);
+void _rtw_scan_timeout_handler(struct timer_list *t);
int event_thread(void *context);
-extern void rtw_free_network_queue(struct adapter *adapter, u8 isfreeall);
-extern int rtw_init_mlme_priv(struct adapter *adapter);/* (struct mlme_priv *pmlmepriv); */
+void rtw_free_network_queue(struct adapter *adapter, u8 isfreeall);
+int rtw_init_mlme_priv(struct adapter *adapter);/* (struct mlme_priv *pmlmepriv); */
-extern void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv);
+void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv);
-extern signed int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv);
-extern signed int rtw_set_key(struct adapter *adapter, struct security_priv *psecuritypriv, signed int keyid, u8 set_tx, bool enqueue);
-extern signed int rtw_set_auth(struct adapter *adapter, struct security_priv *psecuritypriv);
+signed int rtw_select_and_join_from_scanned_queue(struct mlme_priv *pmlmepriv);
+signed int rtw_set_key(struct adapter *adapter, struct security_priv *psecuritypriv, signed int keyid, u8 set_tx, bool enqueue);
+signed int rtw_set_auth(struct adapter *adapter, struct security_priv *psecuritypriv);
static inline u8 *get_bssid(struct mlme_priv *pmlmepriv)
{ /* if sta_mode:pmlmepriv->cur_network.network.mac_address => bssid */
@@ -318,48 +309,46 @@ static inline void _clr_fwstate_(struct mlme_priv *pmlmepriv, signed int state)
pmlmepriv->bScanInProcess = false;
}
-extern u16 rtw_get_capability(struct wlan_bssid_ex *bss);
-extern void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *target);
-extern void rtw_disconnect_hdl_under_linked(struct adapter *adapter, struct sta_info *psta, u8 free_assoc);
-extern void rtw_generate_random_ibss(u8 *pibss);
-extern struct wlan_network *rtw_find_network(struct __queue *scanned_queue, u8 *addr);
-extern struct wlan_network *rtw_get_oldest_wlan_network(struct __queue *scanned_queue);
+u16 rtw_get_capability(struct wlan_bssid_ex *bss);
+void rtw_update_scanned_network(struct adapter *adapter, struct wlan_bssid_ex *target);
+void rtw_disconnect_hdl_under_linked(struct adapter *adapter, struct sta_info *psta, u8 free_assoc);
+void rtw_generate_random_ibss(u8 *pibss);
+struct wlan_network *rtw_find_network(struct __queue *scanned_queue, u8 *addr);
+struct wlan_network *rtw_get_oldest_wlan_network(struct __queue *scanned_queue);
struct wlan_network *_rtw_find_same_network(struct __queue *scanned_queue, struct wlan_network *network);
-extern void rtw_free_assoc_resources(struct adapter *adapter, int lock_scanned_queue);
-extern void rtw_indicate_disconnect(struct adapter *adapter);
-extern void rtw_indicate_connect(struct adapter *adapter);
+void rtw_free_assoc_resources(struct adapter *adapter, int lock_scanned_queue);
+void rtw_indicate_disconnect(struct adapter *adapter);
+void rtw_indicate_connect(struct adapter *adapter);
void rtw_indicate_scan_done(struct adapter *padapter, bool aborted);
void rtw_scan_abort(struct adapter *adapter);
-extern int rtw_restruct_sec_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, uint in_len);
-extern int rtw_restruct_wmm_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, uint in_len, uint initial_out_len);
-extern void rtw_init_registrypriv_dev_network(struct adapter *adapter);
+int rtw_restruct_sec_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, uint in_len);
+int rtw_restruct_wmm_ie(struct adapter *adapter, u8 *in_ie, u8 *out_ie, uint in_len, uint initial_out_len);
+void rtw_init_registrypriv_dev_network(struct adapter *adapter);
-extern void rtw_update_registrypriv_dev_network(struct adapter *adapter);
+void rtw_update_registrypriv_dev_network(struct adapter *adapter);
-extern void _rtw_join_timeout_handler(struct timer_list *t);
-extern void rtw_scan_timeout_handler(struct timer_list *t);
+void _rtw_join_timeout_handler(struct timer_list *t);
+void rtw_scan_timeout_handler(struct timer_list *t);
-extern void rtw_dynamic_check_timer_handler(struct adapter *adapter);
+void rtw_dynamic_check_timer_handler(struct adapter *adapter);
bool rtw_is_scan_deny(struct adapter *adapter);
void rtw_clear_scan_deny(struct adapter *adapter);
void rtw_set_scan_deny(struct adapter *adapter, u32 ms);
void rtw_free_mlme_priv_ie_data(struct mlme_priv *pmlmepriv);
-extern void _rtw_free_mlme_priv(struct mlme_priv *pmlmepriv);
-
-/* extern struct wlan_network* _rtw_dequeue_network(struct __queue *queue); */
+void _rtw_free_mlme_priv(struct mlme_priv *pmlmepriv);
-extern struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv);
+struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv);
-extern void _rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork, u8 isfreeall);
-extern void _rtw_free_network_nolock(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork);
+void _rtw_free_network(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork, u8 isfreeall);
+void _rtw_free_network_nolock(struct mlme_priv *pmlmepriv, struct wlan_network *pnetwork);
-extern struct wlan_network *_rtw_find_network(struct __queue *scanned_queue, u8 *addr);
+struct wlan_network *_rtw_find_network(struct __queue *scanned_queue, u8 *addr);
bool rtw_if_up(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h
index 179fae4d8fcc..847a1d75fe39 100644
--- a/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h
+++ b/drivers/staging/rtl8723bs/include/rtw_mlme_ext.h
@@ -70,14 +70,12 @@ extern unsigned char WMM_INFO_OUI[];
extern unsigned char WMM_PARA_OUI[];
-/* */
/* Channel Plan Type. */
/* Note: */
/* We just add new channel plan when the new channel plan is different from any of the following */
/* channel plan. */
/* If you just want to customize the actions(scan period or join actions) about one of the channel plan, */
/* customize them in rt_channel_info in the RT_CHANNEL_LIST. */
-/* */
enum {
/* old channel plan mapping ===== */
RT_CHANNEL_DOMAIN_FCC = 0x00,
@@ -207,22 +205,22 @@ enum {
};
struct mlme_handler {
- unsigned int num;
+ unsigned int num;
char *str;
unsigned int (*func)(struct adapter *padapter, union recv_frame *precv_frame);
};
struct action_handler {
- unsigned int num;
+ unsigned int num;
char *str;
unsigned int (*func)(struct adapter *padapter, union recv_frame *precv_frame);
};
struct ss_res {
- int state;
- int bss_cnt;
- int channel_idx;
- int scan_mode;
+ int state;
+ int bss_cnt;
+ int channel_idx;
+ int scan_mode;
u8 ssid_num;
u8 ch_num;
struct ndis_802_11_ssid ssid[RTW_SSID_SCAN_AMOUNT];
@@ -253,7 +251,7 @@ struct FW_Sta_Info {
u32 status;
u32 rx_pkt;
u32 retry;
- NDIS_802_11_RATES_EX SupportedRates;
+ u8 SupportedRates[NDIS_802_11_LENGTH_RATES_EX];
};
/*
@@ -369,7 +367,6 @@ struct mlme_ext_priv {
u16 sa_query_seq;
u64 mgnt_80211w_IPN;
u64 mgnt_80211w_IPN_rx;
- /* struct fw_priv fwpriv; */
unsigned char cur_channel;
unsigned char cur_bwmode;
@@ -389,7 +386,6 @@ struct mlme_ext_priv {
struct timer_list survey_timer;
struct timer_list link_timer;
struct timer_list sa_query_timer;
- /* struct timer_list ADDBA_timer; */
u16 chan_scan_time;
unsigned long last_scan_time;
u8 scan_abort;
@@ -422,15 +418,13 @@ void init_mlme_default_rate_set(struct adapter *padapter);
void init_mlme_ext_priv(struct adapter *padapter);
void init_hw_mlme_ext(struct adapter *padapter);
void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext);
-extern struct xmit_frame *alloc_mgtxmitframe(struct xmit_priv *pxmitpriv);
-
-/* void fill_fwpriv(struct adapter *padapter, struct fw_priv *pfwpriv); */
+struct xmit_frame *alloc_mgtxmitframe(struct xmit_priv *pxmitpriv);
u8 networktype_to_raid_ex(struct adapter *adapter, struct sta_info *psta);
void get_rate_set(struct adapter *padapter, unsigned char *pbssrate, int *bssrate_len);
void set_mcs_rate_by_mask(u8 *mcs_set, u32 mask);
-void update_basic_rate_table(struct adapter *padapter, u8 *mBratesOS);
+void update_basic_rate_table(struct adapter *padapter, u8 *basic_rates);
void update_basic_rate_table_soft_ap(u8 *bssrateset, u32 bssratelen);
void save_dm_func_flag(struct adapter *padapter);
@@ -516,8 +510,8 @@ s16 rtw_camid_search(struct adapter *adapter, u8 *addr, s16 kid);
s16 rtw_camid_alloc(struct adapter *adapter, struct sta_info *sta, u8 kid);
void rtw_camid_free(struct adapter *adapter, u8 cam_id);
-extern void rtw_alloc_macid(struct adapter *padapter, struct sta_info *psta);
-extern void rtw_release_macid(struct adapter *padapter, struct sta_info *psta);
+void rtw_alloc_macid(struct adapter *padapter, struct sta_info *psta);
+void rtw_release_macid(struct adapter *padapter, struct sta_info *psta);
void report_join_res(struct adapter *padapter, int res);
void report_survey_event(struct adapter *padapter, union recv_frame *precv_frame);
@@ -527,13 +521,13 @@ void report_add_sta_event(struct adapter *padapter, unsigned char *MacAddr, int
void report_wmm_edca_update(struct adapter *padapter);
u8 chk_bmc_sleepq_cmd(struct adapter *padapter);
-extern u8 set_tx_beacon_cmd(struct adapter *padapter);
+u8 set_tx_beacon_cmd(struct adapter *padapter);
unsigned int setup_beacon_frame(struct adapter *padapter, unsigned char *beacon_frame);
void update_mgnt_tx_rate(struct adapter *padapter, u8 rate);
void update_mgntframe_attrib(struct adapter *padapter, struct pkt_attrib *pattrib);
void update_mgntframe_attrib_addr(struct adapter *padapter, struct xmit_frame *pmgntframe);
void dump_mgntframe(struct adapter *padapter, struct xmit_frame *pmgntframe);
-s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntframe, int timeout_ms);
+void dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntframe, int timeout_ms);
s32 dump_mgntframe_and_wait_ack(struct adapter *padapter, struct xmit_frame *pmgntframe);
void issue_beacon(struct adapter *padapter, int timeout_ms);
@@ -541,8 +535,6 @@ void issue_probersp(struct adapter *padapter, unsigned char *da, u8 is_valid_p2p
void issue_assocreq(struct adapter *padapter);
void issue_asocrsp(struct adapter *padapter, unsigned short status, struct sta_info *pstat, int pkt_type);
void issue_auth(struct adapter *padapter, struct sta_info *psta, unsigned short status);
-void issue_probereq(struct adapter *padapter, struct ndis_802_11_ssid *pssid, u8 *da);
-s32 issue_probereq_ex(struct adapter *padapter, struct ndis_802_11_ssid *pssid, u8 *da, u8 ch, bool append_wps, int try_cnt, int wait_ms);
int issue_nulldata(struct adapter *padapter, unsigned char *da, unsigned int power_mode, int try_cnt, int wait_ms);
s32 issue_nulldata_in_interrupt(struct adapter *padapter, u8 *da);
int issue_qos_nulldata(struct adapter *padapter, unsigned char *da, u16 tid, int try_cnt, int wait_ms);
@@ -589,8 +581,6 @@ void survey_timer_hdl(struct timer_list *t);
void link_timer_hdl(struct timer_list *t);
void addba_timer_hdl(struct timer_list *t);
void sa_query_timer_hdl(struct timer_list *t);
-/* void reauth_timer_hdl(struct adapter *padapter); */
-/* void reassoc_timer_hdl(struct adapter *padapter); */
#define set_survey_timer(mlmeext, ms) \
do { \
@@ -606,12 +596,12 @@ void sa_query_timer_hdl(struct timer_list *t);
_set_timer(&(mlmeext)->sa_query_timer, (ms)); \
} while (0)
-extern void process_addba_req(struct adapter *padapter, u8 *paddba_req, u8 *addr);
+void process_addba_req(struct adapter *padapter, u8 *paddba_req, u8 *addr);
-extern void update_TSF(struct mlme_ext_priv *pmlmeext, u8 *pframe, uint len);
-extern void correct_TSF(struct adapter *padapter, struct mlme_ext_priv *pmlmeext);
-extern void adaptive_early_32k(struct mlme_ext_priv *pmlmeext, u8 *pframe, uint len);
-extern bool traffic_status_watchdog(struct adapter *padapter, bool from_timer);
+void update_TSF(struct mlme_ext_priv *pmlmeext, u8 *pframe, uint len);
+void correct_TSF(struct adapter *padapter, struct mlme_ext_priv *pmlmeext);
+void adaptive_early_32k(struct mlme_ext_priv *pmlmeext, u8 *pframe, uint len);
+bool traffic_status_watchdog(struct adapter *padapter, bool from_timer);
int rtw_chk_start_clnt_join(struct adapter *padapter, u8 *ch, u8 *bw, u8 *offset);
diff --git a/drivers/staging/rtl8723bs/include/rtw_pwrctrl.h b/drivers/staging/rtl8723bs/include/rtw_pwrctrl.h
index 182b8c88ccc8..c308fcedd632 100644
--- a/drivers/staging/rtl8723bs/include/rtw_pwrctrl.h
+++ b/drivers/staging/rtl8723bs/include/rtw_pwrctrl.h
@@ -192,7 +192,6 @@ struct pwrctrl_priv {
int ps_flag; /* used by autosuspend */
enum rt_rf_power_state rf_pwrstate;/* cur power state, only for IPS */
- /* rt_rf_power_state current_rfpwrstate; */
enum rt_rf_power_state change_rfpwrstate;
u8 bHWPowerdown; /* power down mode selection. 0:radio off, 1:power down */
@@ -212,20 +211,20 @@ struct pwrctrl_priv {
_set_timer(&(pwrctl)->pwr_state_check_timer, (ms)); \
} while (0)
-extern void rtw_init_pwrctrl_priv(struct adapter *adapter);
-extern void rtw_free_pwrctrl_priv(struct adapter *adapter);
+void rtw_init_pwrctrl_priv(struct adapter *adapter);
+void rtw_free_pwrctrl_priv(struct adapter *adapter);
s32 rtw_register_task_alive(struct adapter *adapter, u32 task);
void rtw_unregister_task_alive(struct adapter *adapter, u32 task);
-extern s32 rtw_register_tx_alive(struct adapter *padapter);
-extern void rtw_unregister_tx_alive(struct adapter *padapter);
-extern s32 rtw_register_cmd_alive(struct adapter *padapter);
-extern void rtw_unregister_cmd_alive(struct adapter *padapter);
-extern void cpwm_int_hdl(struct adapter *padapter, struct reportpwrstate_parm *preportpwrstate);
-extern void LPS_Leave_check(struct adapter *padapter);
-
-extern void LeaveAllPowerSaveMode(struct adapter *Adapter);
-extern void LeaveAllPowerSaveModeDirect(struct adapter *Adapter);
+s32 rtw_register_tx_alive(struct adapter *padapter);
+void rtw_unregister_tx_alive(struct adapter *padapter);
+s32 rtw_register_cmd_alive(struct adapter *padapter);
+void rtw_unregister_cmd_alive(struct adapter *padapter);
+void cpwm_int_hdl(struct adapter *padapter, struct reportpwrstate_parm *preportpwrstate);
+void LPS_Leave_check(struct adapter *padapter);
+
+void LeaveAllPowerSaveMode(struct adapter *Adapter);
+void LeaveAllPowerSaveModeDirect(struct adapter *Adapter);
void _ips_enter(struct adapter *padapter);
void ips_enter(struct adapter *padapter);
int _ips_leave(struct adapter *padapter);
diff --git a/drivers/staging/rtl8723bs/include/rtw_recv.h b/drivers/staging/rtl8723bs/include/rtw_recv.h
index 9c32d480a20a..b2a863e4d6ce 100644
--- a/drivers/staging/rtl8723bs/include/rtw_recv.h
+++ b/drivers/staging/rtl8723bs/include/rtw_recv.h
@@ -70,26 +70,26 @@ struct phy_info {
u8 rx_pwd_ba11;
u8 SignalQuality; /* in 0-100 index. */
- s8 rx_mimo_signal_quality[4]; /* per-path's EVM */
+ s8 rx_mimo_signal_quality[4]; /* per-path's EVM */
u8 RxMIMOEVMdbm[4]; /* per-path's EVM dbm */
u8 rx_mimo_signal_strength[4];/* in 0~100 index */
- u16 Cfo_short[4]; /* per-path's Cfo_short */
- u16 Cfo_tail[4]; /* per-path's Cfo_tail */
+ u16 Cfo_short[4]; /* per-path's Cfo_short */
+ u16 Cfo_tail[4]; /* per-path's Cfo_tail */
- s8 RxPower; /* in dBm Translate from PWdB */
- s8 RecvSignalPower;/* Real power in dBm for this packet, no beautification and aggregation. Keep this raw info to be used for the other procedures. */
+ s8 RxPower; /* in dBm Translate from PWdB */
+ s8 RecvSignalPower;/* Real power in dBm for this packet, no beautification and aggregation. Keep this raw info to be used for the other procedures. */
u8 bt_rx_rssi_percentage;
u8 SignalStrength; /* in 0-100 index. */
- s8 RxPwr[4]; /* per-path's pwdb */
+ s8 RxPwr[4]; /* per-path's pwdb */
u8 RxSNR[4]; /* per-path's SNR */
u8 BandWidth;
u8 btCoexPwrAdjust;
};
-struct rx_pkt_attrib {
+struct rx_pkt_attrib {
u16 pkt_len;
u8 physt;
u8 drvinfo_sz;
@@ -170,22 +170,22 @@ accesser of recv_priv: rtw_recv_entry(dispatch / passive level); recv_thread(pas
using enter_critical section to protect
*/
struct recv_priv {
- spinlock_t lock;
- struct __queue free_recv_queue;
- struct __queue recv_pending_queue;
- struct __queue uc_swdec_pending_queue;
+ spinlock_t lock;
+ struct __queue free_recv_queue;
+ struct __queue recv_pending_queue;
+ struct __queue uc_swdec_pending_queue;
u8 *pallocated_frame_buf;
u8 *precv_frame_buf;
uint free_recvframe_cnt;
- struct adapter *adapter;
+ struct adapter *adapter;
u32 bIsAnyNonBEPkts;
- u64 rx_bytes;
- u64 rx_pkts;
- u64 rx_drop;
- uint rx_icv_err;
- uint rx_largepacket_crcerr;
- uint rx_smallpacket_crcerr;
- uint rx_middlepacket_crcerr;
+ u64 rx_bytes;
+ u64 rx_pkts;
+ u64 rx_drop;
+ uint rx_icv_err;
+ uint rx_largepacket_crcerr;
+ uint rx_smallpacket_crcerr;
+ uint rx_middlepacket_crcerr;
struct tasklet_struct irq_prepare_beacon_tasklet;
struct tasklet_struct recv_tasklet;
@@ -194,10 +194,10 @@ struct recv_priv {
u8 *pallocated_recv_buf;
u8 *precv_buf; /* 4 alignment */
- struct __queue free_recv_buf_queue;
+ struct __queue free_recv_buf_queue;
u32 free_recv_buf_queue_cnt;
- struct __queue recv_buf_pending_queue;
+ struct __queue recv_buf_pending_queue;
/* For display the phy information */
u8 is_signal_dbg; /* for debug */
@@ -206,16 +206,10 @@ struct recv_priv {
u8 signal_strength;
u8 signal_qual;
s8 rssi; /* translate_percentage_to_dbm(ptarget_wlan->network.PhyInfo.SignalStrength); */
- /* s8 rxpwdb; */
s16 noise;
- /* int RxSNRdB[2]; */
- /* s8 RxRssi[2]; */
- /* int FalseAlmCnt_all; */
-
struct timer_list signal_stat_timer;
u32 signal_stat_sampling_interval;
- /* u32 signal_stat_converging_constant; */
struct signal_stat signal_qual_data;
struct signal_stat signal_strength_data;
};
@@ -224,21 +218,14 @@ struct recv_priv {
struct sta_recv_priv {
- spinlock_t lock;
- signed int option;
+ spinlock_t lock;
+ signed int option;
- /* struct __queue blk_strms[MAX_RX_NUMBLKS]; */
struct __queue defrag_q; /* keeping the fragment frame until defrag */
- struct stainfo_rxcache rxcache;
-
- /* uint sta_rx_bytes; */
- /* uint sta_rx_pkts; */
- /* uint sta_rx_fail; */
-
+ struct stainfo_rxcache rxcache;
};
-
struct recv_buf {
struct list_head list;
@@ -257,7 +244,7 @@ struct recv_buf {
u8 *ptail;
u8 *pend;
- struct sk_buff *pskb;
+ struct sk_buff *pskb;
u8 reuse;
};
@@ -278,11 +265,11 @@ struct recv_buf {
*/
struct recv_frame_hdr {
- struct list_head list;
- struct sk_buff *pkt;
- struct sk_buff *pkt_newalloc;
+ struct list_head list;
+ struct sk_buff *pkt;
+ struct sk_buff *pkt_newalloc;
- struct adapter *adapter;
+ struct adapter *adapter;
u8 fragcnt;
@@ -290,7 +277,7 @@ struct recv_frame_hdr {
struct rx_pkt_attrib attrib;
- uint len;
+ uint len;
u8 *rx_head;
u8 *rx_data;
u8 *rx_tail;
@@ -298,24 +285,18 @@ struct recv_frame_hdr {
void *precvbuf;
-
- /* */
struct sta_info *psta;
/* for A-MPDU Rx reordering buffer control */
struct recv_reorder_ctrl *preorder_ctrl;
};
-
union recv_frame {
union{
struct list_head list;
struct recv_frame_hdr hdr;
uint mem[RECVFRAME_HDR_ALIGN>>2];
} u;
-
- /* uint mem[MAX_RXSZ>>2]; */
-
};
enum {
@@ -328,7 +309,7 @@ enum {
extern union recv_frame *_rtw_alloc_recvframe(struct __queue *pfree_recv_queue); /* get a free recv_frame from pfree_recv_queue */
extern union recv_frame *rtw_alloc_recvframe(struct __queue *pfree_recv_queue); /* get a free recv_frame from pfree_recv_queue */
-extern int rtw_free_recvframe(union recv_frame *precvframe, struct __queue *pfree_recv_queue);
+extern int rtw_free_recvframe(union recv_frame *precvframe, struct __queue *pfree_recv_queue);
extern int _rtw_enqueue_recvframe(union recv_frame *precvframe, struct __queue *queue);
extern int rtw_enqueue_recvframe(union recv_frame *precvframe, struct __queue *queue);
@@ -438,7 +419,7 @@ static inline signed int get_recvframe_len(union recv_frame *precvframe)
static inline s32 translate_percentage_to_dbm(u32 SignalStrengthIndex)
{
- s32 SignalPower; /* in dBm. */
+ s32 SignalPower; /* in dBm. */
/* Translate to dBm (x = 0.5y-95). */
SignalPower = (s32)((SignalStrengthIndex + 1) >> 1);
@@ -452,6 +433,6 @@ struct sta_info;
extern void _rtw_init_sta_recv_priv(struct sta_recv_priv *psta_recvpriv);
-extern void mgt_dispatcher(struct adapter *padapter, union recv_frame *precv_frame);
+extern void mgt_dispatcher(struct adapter *padapter, union recv_frame *precv_frame);
#endif
diff --git a/drivers/staging/rtl8723bs/include/rtw_security.h b/drivers/staging/rtl8723bs/include/rtw_security.h
index a3bbc605e2ba..33bc1adc8d90 100644
--- a/drivers/staging/rtl8723bs/include/rtw_security.h
+++ b/drivers/staging/rtl8723bs/include/rtw_security.h
@@ -129,7 +129,6 @@ struct security_priv {
u8 binstallGrpkey;
u8 binstallBIPkey;
u8 busetkipkey;
- /* _timer tkip_timer; */
u8 bcheck_grpkey;
u8 bgrpkey_handshake;
@@ -180,7 +179,7 @@ do {\
if (bmcst)\
encry_algo = (u8)psecuritypriv->dot118021XGrpPrivacy;\
else\
- encry_algo = (u8)psta->dot118021XPrivacy;\
+ encry_algo = (u8)psta->dot118021_x_privacy;\
break;\
case dot11_auth_algrthm_wapi:\
encry_algo = (u8)psecuritypriv->dot11_privacy_algrthm;\
diff --git a/drivers/staging/rtl8723bs/include/rtw_xmit.h b/drivers/staging/rtl8723bs/include/rtw_xmit.h
index 917e846e9ce2..c5cb814789d8 100644
--- a/drivers/staging/rtl8723bs/include/rtw_xmit.h
+++ b/drivers/staging/rtl8723bs/include/rtw_xmit.h
@@ -106,11 +106,7 @@ union txdesc {
};
struct hw_xmit {
- /* spinlock_t xmit_lock; */
- /* struct list_head pending; */
struct __queue *sta_queue;
- /* struct hw_txqueue *phwtxqueue; */
- /* signed int txcmdcnt; */
int accnt;
};
@@ -166,7 +162,6 @@ struct pkt_attrib {
u8 rtsen;
u8 cts2self;
union Keytype dot11tkiptxmickey;
- /* union Keytype dot11tkiprxmickey; */
union Keytype dot118021x_UncstKey;
u8 icmp_pkt;
@@ -281,7 +276,6 @@ struct sta_xmit_priv {
signed int apsd_setting; /* When bit mask is on, the associated edca queue supports APSD. */
- /* struct tx_servq blk_q[MAX_NUMBLKS]; */
struct tx_servq be_q; /* priority == 0, 3 */
struct tx_servq bk_q; /* priority == 1, 2 */
struct tx_servq vi_q; /* priority == 4, 5 */
@@ -290,12 +284,6 @@ struct sta_xmit_priv {
struct list_head apsd;
u16 txseq_tid[16];
-
- /* uint sta_tx_bytes; */
- /* u64 sta_tx_pkts; */
- /* uint sta_tx_fail; */
-
-
};
@@ -323,35 +311,22 @@ struct xmit_priv {
struct completion xmit_comp;
struct completion terminate_xmitthread_comp;
- /* struct __queue blk_strms[MAX_NUMBLKS]; */
struct __queue be_pending;
struct __queue bk_pending;
struct __queue vi_pending;
struct __queue vo_pending;
struct __queue bm_pending;
- /* struct __queue legacy_dz_queue; */
- /* struct __queue apsd_queue; */
-
u8 *pallocated_frame_buf;
u8 *pxmit_frame_buf;
uint free_xmitframe_cnt;
struct __queue free_xmit_queue;
- /* uint mapping_addr; */
- /* uint pkt_sz; */
-
u8 *xframe_ext_alloc_addr;
u8 *xframe_ext;
uint free_xframe_ext_cnt;
struct __queue free_xframe_ext_queue;
- /* struct hw_txqueue be_txqueue; */
- /* struct hw_txqueue bk_txqueue; */
- /* struct hw_txqueue vi_txqueue; */
- /* struct hw_txqueue vo_txqueue; */
- /* struct hw_txqueue bmc_txqueue; */
-
uint frag_len;
struct adapter *adapter;
@@ -359,7 +334,6 @@ struct xmit_priv {
u8 vcs_setting;
u8 vcs;
u8 vcs_type;
- /* u16 rts_thresh; */
u64 tx_bytes;
u64 tx_pkts;
@@ -397,34 +371,36 @@ struct xmit_priv {
spinlock_t lock_sctx;
};
-extern struct xmit_frame *__rtw_alloc_cmdxmitframe(struct xmit_priv *pxmitpriv,
- enum cmdbuf_type buf_type);
+struct xmit_frame *__rtw_alloc_cmdxmitframe(struct xmit_priv *pxmitpriv,
+ enum cmdbuf_type buf_type);
#define rtw_alloc_cmdxmitframe(p) __rtw_alloc_cmdxmitframe(p, CMDBUF_RSVD)
#define rtw_alloc_bcnxmitframe(p) __rtw_alloc_cmdxmitframe(p, CMDBUF_BEACON)
-extern struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv);
-extern s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf);
+struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv);
+void rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf);
-extern struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv);
-extern s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf);
+struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv);
+void rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf);
void rtw_count_tx_stats(struct adapter *padapter, struct xmit_frame *pxmitframe, int sz);
-extern void rtw_update_protection(struct adapter *padapter, u8 *ie, uint ie_len);
-extern int rtw_make_wlanhdr(struct adapter *padapter, u8 *hdr, struct pkt_attrib *pattrib);
-extern s32 rtw_put_snap(u8 *data, u16 h_proto);
+void rtw_update_protection(struct adapter *padapter, u8 *ie, uint ie_len);
+int rtw_make_wlanhdr(struct adapter *padapter, u8 *hdr, struct pkt_attrib *pattrib);
+s32 rtw_put_snap(u8 *data, u16 h_proto);
-extern struct xmit_frame *rtw_alloc_xmitframe(struct xmit_priv *pxmitpriv);
+struct xmit_frame *rtw_alloc_xmitframe(struct xmit_priv *pxmitpriv);
struct xmit_frame *rtw_alloc_xmitframe_ext(struct xmit_priv *pxmitpriv);
struct xmit_frame *rtw_alloc_xmitframe_once(struct xmit_priv *pxmitpriv);
-extern s32 rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitframe);
-extern void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, struct __queue *pframequeue);
+void rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitframe);
+void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, struct __queue *pframequeue);
struct tx_servq *rtw_get_sta_pending(struct adapter *padapter, struct sta_info *psta, signed int up, u8 *ac);
int rtw_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe);
-extern u32 rtw_calculate_wlan_pkt_size_by_attribue(struct pkt_attrib *pattrib);
+u32 rtw_calculate_wlan_pkt_size_by_attribue(struct pkt_attrib *pattrib);
#define rtw_wlan_pkt_size(f) rtw_calculate_wlan_pkt_size_by_attribue(&f->attrib)
-extern int rtw_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, struct xmit_frame *pxmitframe);
-extern s32 rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt, struct xmit_frame *pxmitframe);
+int rtw_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt,
+ struct xmit_frame *pxmitframe);
+int rtw_mgmt_xmitframe_coalesce(struct adapter *padapter, struct sk_buff *pkt,
+ struct xmit_frame *pxmitframe);
s32 _rtw_init_hw_txqueue(struct hw_txqueue *phw_txqueue, u8 ac_tag);
void _rtw_init_sta_xmit_priv(struct sta_xmit_priv *psta_xmitpriv);
diff --git a/drivers/staging/rtl8723bs/include/sdio_ops.h b/drivers/staging/rtl8723bs/include/sdio_ops.h
index 252b0e1646e5..d9510aa598fc 100644
--- a/drivers/staging/rtl8723bs/include/sdio_ops.h
+++ b/drivers/staging/rtl8723bs/include/sdio_ops.h
@@ -7,27 +7,24 @@
#ifndef __SDIO_OPS_H__
#define __SDIO_OPS_H__
-
#include <sdio_ops_linux.h>
-extern void sdio_set_intf_ops(struct adapter *padapter, struct _io_ops *pops);
+void sdio_set_intf_ops(struct adapter *padapter, struct _io_ops *pops);
-/* extern void sdio_func1cmd52_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *rmem); */
-/* extern void sdio_func1cmd52_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *wmem); */
-extern u8 SdioLocalCmd52Read1Byte(struct adapter *padapter, u32 addr);
-extern void SdioLocalCmd52Write1Byte(struct adapter *padapter, u32 addr, u8 v);
-extern s32 sdio_local_read(struct adapter *padapter, u32 addr, u32 cnt, u8 *pbuf);
-extern s32 sdio_local_write(struct adapter *padapter, u32 addr, u32 cnt, u8 *pbuf);
+u8 SdioLocalCmd52Read1Byte(struct adapter *padapter, u32 addr);
+void SdioLocalCmd52Write1Byte(struct adapter *padapter, u32 addr, u8 v);
+s32 sdio_local_read(struct adapter *padapter, u32 addr, u32 cnt, u8 *pbuf);
+s32 sdio_local_write(struct adapter *padapter, u32 addr, u32 cnt, u8 *pbuf);
u32 _sdio_read32(struct adapter *padapter, u32 addr);
s32 _sdio_write32(struct adapter *padapter, u32 addr, u32 val);
-extern void sd_int_hdl(struct adapter *padapter);
-extern u8 CheckIPSStatus(struct adapter *padapter);
+void sd_int_hdl(struct adapter *padapter);
+u8 CheckIPSStatus(struct adapter *padapter);
-extern void InitInterrupt8723BSdio(struct adapter *padapter);
+void InitInterrupt8723BSdio(struct adapter *padapter);
void rtw_sdio_enable_interrupt(struct adapter *padapter);
void rtw_sdio_disable_interrupt(struct adapter *padapter);
-extern u8 HalQueryTxBufferStatus8723BSdio(struct adapter *padapter);
-extern void HalQueryTxOQTBufferStatus8723BSdio(struct adapter *padapter);
+u8 HalQueryTxBufferStatus8723BSdio(struct adapter *padapter);
+void HalQueryTxOQTBufferStatus8723BSdio(struct adapter *padapter);
#endif /* !__SDIO_OPS_H__ */
diff --git a/drivers/staging/rtl8723bs/include/sta_info.h b/drivers/staging/rtl8723bs/include/sta_info.h
index 0f53e77c110c..21a4ca841e6e 100644
--- a/drivers/staging/rtl8723bs/include/sta_info.h
+++ b/drivers/staging/rtl8723bs/include/sta_info.h
@@ -28,50 +28,50 @@ struct wlan_acl_pool {
int mode;
int num;
struct rtw_wlan_acl_node aclnode[NUM_ACL];
- struct __queue acl_node_q;
+ struct __queue acl_node_q;
};
struct rssi_sta {
- s32 UndecoratedSmoothedPWDB;
- s32 UndecoratedSmoothedCCK;
- s32 UndecoratedSmoothedOFDM;
- u64 PacketMap;
+ s32 UndecoratedSmoothedPWDB;
+ s32 UndecoratedSmoothedCCK;
+ s32 UndecoratedSmoothedOFDM;
+ u64 PacketMap;
u8 ValidBit;
};
-struct stainfo_stats {
+struct stainfo_stats {
u64 rx_mgnt_pkts;
- u64 rx_beacon_pkts;
- u64 rx_probereq_pkts;
- u64 rx_probersp_pkts;
- u64 rx_probersp_bm_pkts;
- u64 rx_probersp_uo_pkts;
+ u64 rx_beacon_pkts;
+ u64 rx_probereq_pkts;
+ u64 rx_probersp_pkts;
+ u64 rx_probersp_bm_pkts;
+ u64 rx_probersp_uo_pkts;
u64 rx_ctrl_pkts;
u64 rx_data_pkts;
- u64 last_rx_mgnt_pkts;
- u64 last_rx_beacon_pkts;
- u64 last_rx_probereq_pkts;
- u64 last_rx_probersp_pkts;
- u64 last_rx_probersp_bm_pkts;
- u64 last_rx_probersp_uo_pkts;
- u64 last_rx_ctrl_pkts;
- u64 last_rx_data_pkts;
-
- u64 rx_bytes;
- u64 rx_drops;
-
- u64 tx_pkts;
- u64 tx_bytes;
- u64 tx_drops;
+ u64 last_rx_mgnt_pkts;
+ u64 last_rx_beacon_pkts;
+ u64 last_rx_probereq_pkts;
+ u64 last_rx_probersp_pkts;
+ u64 last_rx_probersp_bm_pkts;
+ u64 last_rx_probersp_uo_pkts;
+ u64 last_rx_ctrl_pkts;
+ u64 last_rx_data_pkts;
+
+ u64 rx_bytes;
+ u64 rx_drops;
+
+ u64 tx_pkts;
+ u64 tx_bytes;
+ u64 tx_drops;
};
struct sta_info {
- spinlock_t lock;
- struct list_head list; /* free_sta_queue */
- struct list_head hash_list; /* sta_hash */
+ spinlock_t lock;
+ struct list_head list; /* free_sta_queue */
+ struct list_head hash_list; /* sta_hash */
struct adapter *padapter;
struct sta_xmit_priv sta_xmitpriv;
@@ -87,19 +87,18 @@ struct sta_info {
u8 hwaddr[ETH_ALEN];
bool ieee8021x_blocked;
- uint dot118021XPrivacy; /* aes, tkip... */
- union Keytype dot11tkiptxmickey;
- union Keytype dot11tkiprxmickey;
- union Keytype dot118021x_UncstKey;
- union pn48 dot11txpn; /* PN48 used for Unicast xmit */
- union pn48 dot11wtxpn; /* PN48 used for Unicast mgmt xmit. */
- union pn48 dot11rxpn; /* PN48 used for Unicast recv. */
-
+ uint dot118021_x_privacy; /* aes, tkip... */
+ union Keytype dot11tkiptxmickey;
+ union Keytype dot11tkiprxmickey;
+ union Keytype dot118021x_UncstKey;
+ union pn48 dot11txpn; /* PN48 used for Unicast xmit */
+ union pn48 dot11wtxpn; /* PN48 used for Unicast mgmt xmit. */
+ union pn48 dot11rxpn; /* PN48 used for Unicast recv. */
u8 bssrateset[16];
u32 bssratelen;
- s32 rssi;
- s32 signal_quality;
+ s32 rssi;
+ s32 signal_quality;
u8 cts2self;
u8 rtsen;
@@ -122,10 +121,8 @@ struct sta_info {
struct recv_reorder_ctrl recvreorder_ctrl[16];
/* for A-MPDU Tx */
- /* unsigned char ampdu_txen_bitmap; */
u16 BA_starting_seqctrl[16];
-
struct ht_priv htpriv;
/* Notes: */
@@ -186,21 +183,18 @@ struct sta_info {
u32 assoc_req_len;
/* for DM */
- struct rssi_sta rssi_stat;
+ struct rssi_sta rssi_stat;
/* ODM_STA_INFO_T */
/* ================ODM Relative Info ======================= */
/* Please be care, dont declare too much structure here. It will cost memory * STA support num. */
- /* */
- /* */
/* 2011/10/20 MH Add for ODM STA info. */
- /* */
/* Driver Write */
u8 bValid; /* record the sta status link or not? */
u8 IOTPeer; /* Enum value. HT_IOT_PEER_E */
/* ODM Write */
/* 1 PHY_STATUS_INFO */
- u8 RSSI_Path[4]; /* */
+ u8 RSSI_Path[4];
u8 RSSI_Ave;
u8 RXEVM[4];
u8 RXSNR[4];
@@ -209,9 +203,7 @@ struct sta_info {
/* ODM Write */
/* 1 TX_INFO (may changed by IC) */
/* TX_INFO_T pTxInfo; Define in IC folder. Move lower layer. */
- /* */
/* ================ODM Relative Info ======================= */
- /* */
/* To store the sequence number of received management frame */
u16 rx_mgmt_frame_seq_num;
@@ -254,14 +246,14 @@ struct sta_info {
#define STA_PKTS_FMT "(m:%llu, c:%llu, d:%llu)"
-struct sta_priv {
+struct sta_priv {
u8 *pallocated_stainfo_buf;
u8 *pstainfo_buf;
- struct __queue free_sta_queue;
+ struct __queue free_sta_queue;
spinlock_t sta_hash_lock;
- struct list_head sta_hash[NUM_STA];
+ struct list_head sta_hash[NUM_STA];
int asoc_sta_count;
struct __queue sleep_q;
struct __queue wakeup_q;
@@ -319,7 +311,7 @@ extern u32 _rtw_free_sta_priv(struct sta_priv *pstapriv);
int rtw_stainfo_offset(struct sta_priv *stapriv, struct sta_info *sta);
struct sta_info *rtw_get_stainfo_by_offset(struct sta_priv *stapriv, int offset);
-extern struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr);
+extern struct sta_info *rtw_alloc_stainfo(struct sta_priv *pstapriv, u8 *hwaddr);
extern u32 rtw_free_stainfo(struct adapter *padapter, struct sta_info *psta);
extern void rtw_free_all_stainfo(struct adapter *padapter);
extern struct sta_info *rtw_get_stainfo(struct sta_priv *pstapriv, u8 *hwaddr);
diff --git a/drivers/staging/rtl8723bs/include/wlan_bssdef.h b/drivers/staging/rtl8723bs/include/wlan_bssdef.h
index f4c1456f1476..d318c80c3be3 100644
--- a/drivers/staging/rtl8723bs/include/wlan_bssdef.h
+++ b/drivers/staging/rtl8723bs/include/wlan_bssdef.h
@@ -12,12 +12,8 @@
#define NDIS_802_11_LENGTH_SSID 32
-#define NDIS_802_11_LENGTH_RATES 8
#define NDIS_802_11_LENGTH_RATES_EX 16
-typedef unsigned char NDIS_802_11_RATES[NDIS_802_11_LENGTH_RATES]; /* Set of 8 data rates */
-typedef unsigned char NDIS_802_11_RATES_EX[NDIS_802_11_LENGTH_RATES_EX]; /* Set of 16 data rates */
-
struct ndis_802_11_ssid {
u32 ssid_length;
u8 ssid[32];
@@ -50,7 +46,7 @@ struct ndis_80211_var_ie {
* ETH_ALEN + 2 +
* sizeof (struct ndis_802_11_ssid) + sizeof (u32) +
* sizeof (long) +
- * sizeof (struct ndis_802_11_conf) + sizeof (NDIS_802_11_RATES_EX) + ie_length
+ * sizeof (struct ndis_802_11_conf) + NDIS_802_11_LENGTH_RATES_EX + ie_length
*
* Except for ie_length, all other fields are fixed length. Therefore, we can
* define a macro to present the partial sum.
@@ -82,14 +78,6 @@ enum {
Ndis802_11_EncrypteionWAPI
};
-#define NDIS_802_11_AI_REQFI_CAPABILITIES 1
-#define NDIS_802_11_AI_REQFI_LISTENINTERVAL 2
-#define NDIS_802_11_AI_REQFI_CURRENTAPADDRESS 4
-
-#define NDIS_802_11_AI_RESFI_CAPABILITIES 1
-#define NDIS_802_11_AI_RESFI_STATUSCODE 2
-#define NDIS_802_11_AI_RESFI_ASSOCIATIONID 4
-
/* Key mapping keys require a BSSID */
struct ndis_802_11_wep {
@@ -99,13 +87,6 @@ struct ndis_802_11_wep {
u8 key_material[16];/* variable length depending on above field */
};
-/* mask for authentication/integrity fields */
-#define NDIS_802_11_AUTH_REQUEST_AUTH_FIELDS 0x0f
-#define NDIS_802_11_AUTH_REQUEST_REAUTH 0x01
-#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE 0x02
-#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR 0x06
-#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR 0x0E
-
/* MIC check time, 60 seconds. */
#define MIC_CHECK_TIME 60000000
@@ -142,7 +123,7 @@ struct wlan_bssid_ex {
long rssi;/* in dBM, raw data , get from PHY) */
struct ndis_802_11_conf configuration;
enum nl80211_iftype infrastructure_mode;
- NDIS_802_11_RATES_EX supported_rates;
+ u8 supported_rates[NDIS_802_11_LENGTH_RATES_EX];
struct wlan_phy_info phy_info;
u32 ie_length;
u8 ies[MAX_IE_SZ]; /* timestamp, beacon interval, and capability information) */
diff --git a/drivers/staging/rtl8723bs/include/xmit_osdep.h b/drivers/staging/rtl8723bs/include/xmit_osdep.h
index ee6616880d41..9027abbd837f 100644
--- a/drivers/staging/rtl8723bs/include/xmit_osdep.h
+++ b/drivers/staging/rtl8723bs/include/xmit_osdep.h
@@ -25,19 +25,19 @@ struct sta_xmit_priv;
struct xmit_frame;
struct xmit_buf;
-extern void _rtw_xmit_entry(struct sk_buff *pkt, struct net_device *pnetdev);
-extern netdev_tx_t rtw_xmit_entry(struct sk_buff *pkt, struct net_device *pnetdev);
+void _rtw_xmit_entry(struct sk_buff *pkt, struct net_device *pnetdev);
+netdev_tx_t rtw_xmit_entry(struct sk_buff *pkt, struct net_device *pnetdev);
void rtw_os_xmit_schedule(struct adapter *padapter);
void rtw_os_xmit_resource_free(struct adapter *padapter, struct xmit_buf *pxmitbuf, u32 free_sz, u8 flag);
-extern unsigned int rtw_remainder_len(struct pkt_file *pfile);
-extern void _rtw_open_pktfile(struct sk_buff *pkt, struct pkt_file *pfile);
+unsigned int rtw_remainder_len(struct pkt_file *pfile);
+void _rtw_open_pktfile(struct sk_buff *pkt, struct pkt_file *pfile);
int _rtw_pktfile_read(struct pkt_file *pfile, u8 *rmem, unsigned int rlen);
-extern signed int rtw_endofpktfile(struct pkt_file *pfile);
+bool rtw_endofpktfile(struct pkt_file *pfile);
-extern void rtw_os_pkt_complete(struct adapter *padapter, struct sk_buff *pkt);
-extern void rtw_os_xmit_complete(struct adapter *padapter, struct xmit_frame *pxframe);
+void rtw_os_pkt_complete(struct adapter *padapter, struct sk_buff *pkt);
+void rtw_os_xmit_complete(struct adapter *padapter, struct xmit_frame *pxframe);
#endif /* __XMIT_OSDEP_H_ */
diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
index be233a471b43..cd80cc6dde49 100644
--- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
+++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
@@ -204,7 +204,6 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
{
struct ieee80211_channel *notify_channel;
struct cfg80211_bss *bss = NULL;
- /* struct ieee80211_supported_band *band; */
u16 channel;
u32 freq;
u64 notify_timestamp;
@@ -216,7 +215,7 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
struct wireless_dev *wdev = padapter->rtw_wdev;
struct wiphy *wiphy = wdev->wiphy;
- struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
+ struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
bssinf_len = pnetwork->network.ie_length + sizeof(struct ieee80211_hdr_3addr);
if (bssinf_len > MAX_BSSINFO_LEN)
@@ -232,7 +231,6 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
}
/* To reduce PBC Overlap rate */
- /* spin_lock_bh(&pwdev_priv->scan_req_lock); */
if (adapter_wdev_data(padapter)->scan_request) {
u8 *psr = NULL, sr = 0;
struct ndis_802_11_ssid *pssid = &pnetwork->network.ssid;
@@ -258,7 +256,6 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
}
}
}
- /* spin_unlock_bh(&pwdev_priv->scan_req_lock); */
channel = pnetwork->network.configuration.ds_config;
freq = rtw_ieee80211_channel_to_frequency(channel);
@@ -281,17 +278,16 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
pbuf = buf;
pwlanhdr = (struct ieee80211_hdr *)pbuf;
- fctrl = &(pwlanhdr->frame_control);
+ fctrl = &pwlanhdr->frame_control;
*(fctrl) = 0;
SetSeqNum(pwlanhdr, 0/*pmlmeext->mgnt_seq*/);
- /* pmlmeext->mgnt_seq++; */
if (pnetwork->network.reserved[0] == 1) { /* WIFI_BEACON */
eth_broadcast_addr(pwlanhdr->addr1);
SetFrameSubType(pbuf, WIFI_BEACON);
} else {
- memcpy(pwlanhdr->addr1, myid(&(padapter->eeprompriv)), ETH_ALEN);
+ memcpy(pwlanhdr->addr1, myid(&padapter->eeprompriv), ETH_ALEN);
SetFrameSubType(pbuf, WIFI_PROBERSP);
}
@@ -328,7 +324,7 @@ exit:
*/
int rtw_cfg80211_check_bss(struct adapter *padapter)
{
- struct wlan_bssid_ex *pnetwork = &(padapter->mlmeextpriv.mlmext_info.network);
+ struct wlan_bssid_ex *pnetwork = &padapter->mlmeextpriv.mlmext_info.network;
struct cfg80211_bss *bss = NULL;
struct ieee80211_channel *notify_channel = NULL;
u32 freq;
@@ -352,7 +348,7 @@ int rtw_cfg80211_check_bss(struct adapter *padapter)
void rtw_cfg80211_ibss_indicate_connect(struct adapter *padapter)
{
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct wlan_network *cur_network = &(pmlmepriv->cur_network);
+ struct wlan_network *cur_network = &pmlmepriv->cur_network;
struct wireless_dev *pwdev = padapter->rtw_wdev;
struct wiphy *wiphy = pwdev->wiphy;
int freq = (int)cur_network->network.configuration.ds_config;
@@ -362,7 +358,7 @@ void rtw_cfg80211_ibss_indicate_connect(struct adapter *padapter)
return;
if (!rtw_cfg80211_check_bss(padapter)) {
- struct wlan_bssid_ex *pnetwork = &(padapter->mlmeextpriv.mlmext_info.network);
+ struct wlan_bssid_ex *pnetwork = &padapter->mlmeextpriv.mlmext_info.network;
struct wlan_network *scanned = pmlmepriv->cur_network_scanned;
if (check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE)) {
@@ -394,7 +390,7 @@ void rtw_cfg80211_ibss_indicate_connect(struct adapter *padapter)
void rtw_cfg80211_indicate_connect(struct adapter *padapter)
{
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct wlan_network *cur_network = &(pmlmepriv->cur_network);
+ struct wlan_network *cur_network = &pmlmepriv->cur_network;
struct wireless_dev *pwdev = padapter->rtw_wdev;
if (pwdev->iftype != NL80211_IFTYPE_STATION
@@ -407,7 +403,7 @@ void rtw_cfg80211_indicate_connect(struct adapter *padapter)
return;
{
- struct wlan_bssid_ex *pnetwork = &(padapter->mlmeextpriv.mlmext_info.network);
+ struct wlan_bssid_ex *pnetwork = &padapter->mlmeextpriv.mlmext_info.network;
struct wlan_network *scanned = pmlmepriv->cur_network_scanned;
if (!scanned) {
@@ -493,7 +489,7 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
struct sta_info *psta = NULL, *pbcmc_sta = NULL;
struct adapter *padapter = rtw_netdev_priv(dev);
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
- struct security_priv *psecuritypriv = &(padapter->securitypriv);
+ struct security_priv *psecuritypriv = &padapter->securitypriv;
struct sta_priv *pstapriv = &padapter->stapriv;
char *grpkey = padapter->securitypriv.dot118021XGrpKey[param->u.crypt.idx].skey;
char *txkey = padapter->securitypriv.dot118021XGrptxmickey[param->u.crypt.idx].skey;
@@ -517,7 +513,6 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
} else {
psta = rtw_get_stainfo(pstapriv, param->sta_addr);
if (!psta)
- /* ret = -EINVAL; */
goto exit;
}
@@ -552,7 +547,7 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
psecuritypriv->dot11PrivacyKeyIndex = wep_key_idx;
}
- memcpy(&(psecuritypriv->dot11DefKey[wep_key_idx].skey[0]), param->u.crypt.key, wep_key_len);
+ memcpy(&psecuritypriv->dot11DefKey[wep_key_idx].skey[0], param->u.crypt.key, wep_key_len);
psecuritypriv->dot11DefKeylen[wep_key_idx] = wep_key_len;
@@ -578,8 +573,8 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
memcpy(grpkey, param->u.crypt.key, (param->u.crypt.key_len > 16 ? 16 : param->u.crypt.key_len));
/* set mic key */
- memcpy(txkey, &(param->u.crypt.key[16]), 8);
- memcpy(rxkey, &(param->u.crypt.key[24]), 8);
+ memcpy(txkey, &param->u.crypt.key[16], 8);
+ memcpy(rxkey, &param->u.crypt.key[24], 8);
psecuritypriv->busetkipkey = true;
@@ -595,14 +590,14 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
psecuritypriv->binstallGrpkey = true;
- psecuritypriv->dot11_privacy_algrthm = psecuritypriv->dot118021XGrpPrivacy;/* */
+ psecuritypriv->dot11_privacy_algrthm = psecuritypriv->dot118021XGrpPrivacy;
rtw_ap_set_group_key(padapter, param->u.crypt.key, psecuritypriv->dot118021XGrpPrivacy, param->u.crypt.idx);
pbcmc_sta = rtw_get_bcmc_stainfo(padapter);
if (pbcmc_sta) {
pbcmc_sta->ieee8021x_blocked = false;
- pbcmc_sta->dot118021XPrivacy = psecuritypriv->dot118021XGrpPrivacy;/* rx will use bmc_sta's dot118021XPrivacy */
+ pbcmc_sta->dot118021_x_privacy = psecuritypriv->dot118021XGrpPrivacy;/* rx will use bmc_sta's dot118021_x_privacy */
}
}
@@ -615,22 +610,22 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
memcpy(psta->dot118021x_UncstKey.skey, param->u.crypt.key, (param->u.crypt.key_len > 16 ? 16 : param->u.crypt.key_len));
if (strcmp(param->u.crypt.alg, "WEP") == 0) {
- psta->dot118021XPrivacy = _WEP40_;
+ psta->dot118021_x_privacy = _WEP40_;
if (param->u.crypt.key_len == 13)
- psta->dot118021XPrivacy = _WEP104_;
+ psta->dot118021_x_privacy = _WEP104_;
} else if (strcmp(param->u.crypt.alg, "TKIP") == 0) {
- psta->dot118021XPrivacy = _TKIP_;
+ psta->dot118021_x_privacy = _TKIP_;
/* set mic key */
- memcpy(psta->dot11tkiptxmickey.skey, &(param->u.crypt.key[16]), 8);
- memcpy(psta->dot11tkiprxmickey.skey, &(param->u.crypt.key[24]), 8);
+ memcpy(psta->dot11tkiptxmickey.skey, &param->u.crypt.key[16], 8);
+ memcpy(psta->dot11tkiprxmickey.skey, &param->u.crypt.key[24], 8);
psecuritypriv->busetkipkey = true;
} else if (strcmp(param->u.crypt.alg, "CCMP") == 0) {
- psta->dot118021XPrivacy = _AES_;
+ psta->dot118021_x_privacy = _AES_;
} else {
- psta->dot118021XPrivacy = _NO_PRIVACY_;
+ psta->dot118021_x_privacy = _NO_PRIVACY_;
}
rtw_ap_set_pairwise_key(padapter, psta);
@@ -652,8 +647,8 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
memcpy(grpkey, param->u.crypt.key, (param->u.crypt.key_len > 16 ? 16 : param->u.crypt.key_len));
/* set mic key */
- memcpy(txkey, &(param->u.crypt.key[16]), 8);
- memcpy(rxkey, &(param->u.crypt.key[24]), 8);
+ memcpy(txkey, &param->u.crypt.key[16], 8);
+ memcpy(rxkey, &param->u.crypt.key[24], 8);
psecuritypriv->busetkipkey = true;
@@ -669,14 +664,14 @@ static int rtw_cfg80211_ap_set_encryption(struct net_device *dev, struct ieee_pa
psecuritypriv->binstallGrpkey = true;
- psecuritypriv->dot11_privacy_algrthm = psecuritypriv->dot118021XGrpPrivacy;/* */
+ psecuritypriv->dot11_privacy_algrthm = psecuritypriv->dot118021XGrpPrivacy;
rtw_ap_set_group_key(padapter, param->u.crypt.key, psecuritypriv->dot118021XGrpPrivacy, param->u.crypt.idx);
pbcmc_sta = rtw_get_bcmc_stainfo(padapter);
if (pbcmc_sta) {
pbcmc_sta->ieee8021x_blocked = false;
- pbcmc_sta->dot118021XPrivacy = psecuritypriv->dot118021XGrpPrivacy;/* rx will use bmc_sta's dot118021XPrivacy */
+ pbcmc_sta->dot118021_x_privacy = psecuritypriv->dot118021XGrpPrivacy;/* rx will use bmc_sta's dot118021_x_privacy */
}
}
}
@@ -748,7 +743,7 @@ static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param
psecuritypriv->dot11PrivacyKeyIndex = wep_key_idx;
}
- memcpy(&(psecuritypriv->dot11DefKey[wep_key_idx].skey[0]), param->u.crypt.key, wep_key_len);
+ memcpy(&psecuritypriv->dot11DefKey[wep_key_idx].skey[0], param->u.crypt.key, wep_key_len);
psecuritypriv->dot11DefKeylen[wep_key_idx] = wep_key_len;
@@ -770,7 +765,7 @@ static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param
if ((padapter->securitypriv.ndisencryptstatus == Ndis802_11Encryption2Enabled) ||
(padapter->securitypriv.ndisencryptstatus == Ndis802_11Encryption3Enabled)) {
- psta->dot118021XPrivacy = padapter->securitypriv.dot11_privacy_algrthm;
+ psta->dot118021_x_privacy = padapter->securitypriv.dot11_privacy_algrthm;
}
if (param->u.crypt.set_tx == 1) { /* pairwise key */
@@ -778,19 +773,18 @@ static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param
memcpy(psta->dot118021x_UncstKey.skey, param->u.crypt.key, (param->u.crypt.key_len > 16 ? 16 : param->u.crypt.key_len));
if (strcmp(param->u.crypt.alg, "TKIP") == 0) { /* set mic key */
- memcpy(psta->dot11tkiptxmickey.skey, &(param->u.crypt.key[16]), 8);
- memcpy(psta->dot11tkiprxmickey.skey, &(param->u.crypt.key[24]), 8);
+ memcpy(psta->dot11tkiptxmickey.skey, &param->u.crypt.key[16], 8);
+ memcpy(psta->dot11tkiprxmickey.skey, &param->u.crypt.key[24], 8);
padapter->securitypriv.busetkipkey = false;
- /* _set_timer(&padapter->securitypriv.tkip_timer, 50); */
}
rtw_setstakey_cmd(padapter, psta, true, true);
} else { /* group key */
if (strcmp(param->u.crypt.alg, "TKIP") == 0 || strcmp(param->u.crypt.alg, "CCMP") == 0) {
memcpy(padapter->securitypriv.dot118021XGrpKey[param->u.crypt.idx].skey, param->u.crypt.key, (param->u.crypt.key_len > 16 ? 16 : param->u.crypt.key_len));
- memcpy(padapter->securitypriv.dot118021XGrptxmickey[param->u.crypt.idx].skey, &(param->u.crypt.key[16]), 8);
- memcpy(padapter->securitypriv.dot118021XGrprxmickey[param->u.crypt.idx].skey, &(param->u.crypt.key[24]), 8);
+ memcpy(padapter->securitypriv.dot118021XGrptxmickey[param->u.crypt.idx].skey, &param->u.crypt.key[16], 8);
+ memcpy(padapter->securitypriv.dot118021XGrprxmickey[param->u.crypt.idx].skey, &param->u.crypt.key[24], 8);
padapter->securitypriv.binstallGrpkey = true;
padapter->securitypriv.dot118021XGrpKeyid = param->u.crypt.idx;
@@ -812,7 +806,7 @@ static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param
if ((padapter->securitypriv.ndisencryptstatus == Ndis802_11Encryption2Enabled) ||
(padapter->securitypriv.ndisencryptstatus == Ndis802_11Encryption3Enabled)) {
- pbcmc_sta->dot118021XPrivacy = padapter->securitypriv.dot11_privacy_algrthm;
+ pbcmc_sta->dot118021_x_privacy = padapter->securitypriv.dot11_privacy_algrthm;
}
}
} else if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) { /* adhoc mode */
@@ -847,8 +841,6 @@ static int cfg80211_rtw_add_key(struct wiphy *wiphy, struct wireless_dev *wdev,
switch (params->cipher) {
case IW_AUTH_CIPHER_NONE:
- /* todo: remove key */
- /* remove = 1; */
alg_name = "none";
break;
case WLAN_CIPHER_SUITE_WEP40:
@@ -984,7 +976,7 @@ static int cfg80211_rtw_get_station(struct wiphy *wiphy,
/* for infra./P2PClient mode */
if (check_fwstate(pmlmepriv, WIFI_STATION_STATE)
&& check_fwstate(pmlmepriv, _FW_LINKED)) {
- struct wlan_network *cur_network = &(pmlmepriv->cur_network);
+ struct wlan_network *cur_network = &pmlmepriv->cur_network;
if (memcmp((u8 *)mac, cur_network->network.mac_address, ETH_ALEN)) {
ret = -ENOENT;
@@ -1025,7 +1017,7 @@ static int cfg80211_rtw_change_iface(struct wiphy *wiphy,
enum nl80211_iftype old_type;
struct adapter *padapter = rtw_netdev_priv(ndev);
struct wireless_dev *rtw_wdev = padapter->rtw_wdev;
- struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
+ struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
int ret = 0;
if (adapter_to_dvobj(padapter)->processing_dev_remove) {
@@ -1114,11 +1106,11 @@ void rtw_cfg80211_unlink_bss(struct adapter *padapter, struct wlan_network *pnet
void rtw_cfg80211_surveydone_event_callback(struct adapter *padapter)
{
struct list_head *plist, *phead;
- struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
- struct __queue *queue = &(pmlmepriv->scanned_queue);
+ struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
+ struct __queue *queue = &pmlmepriv->scanned_queue;
struct wlan_network *pnetwork = NULL;
- spin_lock_bh(&(pmlmepriv->scanned_queue.lock));
+ spin_lock_bh(&pmlmepriv->scanned_queue.lock);
phead = get_list_head(queue);
list_for_each(plist, phead)
@@ -1127,13 +1119,12 @@ void rtw_cfg80211_surveydone_event_callback(struct adapter *padapter)
/* report network only if the current channel set contains the channel to which this network belongs */
if (rtw_ch_set_search_ch(padapter->mlmeextpriv.channel_set, pnetwork->network.configuration.ds_config) >= 0
- && true == rtw_validate_ssid(&(pnetwork->network.ssid))) {
- /* ev =translate_scan(padapter, a, pnetwork, ev, stop); */
+ && true == rtw_validate_ssid(&pnetwork->network.ssid)) {
rtw_cfg80211_inform_bss(padapter, pnetwork);
}
}
- spin_unlock_bh(&(pmlmepriv->scanned_queue.lock));
+ spin_unlock_bh(&pmlmepriv->scanned_queue.lock);
}
static int rtw_cfg80211_set_probe_req_wpsp2pie(struct adapter *padapter, char *buf, int len)
@@ -1141,7 +1132,7 @@ static int rtw_cfg80211_set_probe_req_wpsp2pie(struct adapter *padapter, char *b
int ret = 0;
unsigned int wps_ielen = 0;
u8 *wps_ie;
- struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
+ struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
if (len > 0) {
wps_ie = rtw_get_wps_ie(buf, len, NULL, &wps_ielen);
@@ -1333,7 +1324,6 @@ static int rtw_cfg80211_set_auth_type(struct security_priv *psecuritypriv,
break;
default:
psecuritypriv->dot11_auth_algrthm = dot11_auth_algrthm_open;
- /* return -ENOTSUPP; */
}
return 0;
@@ -1379,9 +1369,6 @@ static int rtw_cfg80211_set_cipher(struct security_priv *psecuritypriv, u32 ciph
if (ucast) {
psecuritypriv->ndisencryptstatus = ndisencryptstatus;
-
- /* if (psecuritypriv->dot11_privacy_algrthm >= _AES_) */
- /* psecuritypriv->ndisauthtype = Ndis802_11AuthModeWPA2PSK; */
}
return 0;
@@ -1390,7 +1377,6 @@ static int rtw_cfg80211_set_cipher(struct security_priv *psecuritypriv, u32 ciph
static int rtw_cfg80211_set_key_mgt(struct security_priv *psecuritypriv, u32 key_mgt)
{
if (key_mgt == WLAN_AKM_SUITE_8021X)
- /* auth_type = UMAC_AUTH_TYPE_8021X; */
psecuritypriv->dot11_auth_algrthm = dot11_auth_algrthm_8021x;
else if (key_mgt == WLAN_AKM_SUITE_PSK) {
psecuritypriv->dot11_auth_algrthm = dot11_auth_algrthm_8021x;
@@ -1755,8 +1741,6 @@ static int cfg80211_rtw_connect(struct wiphy *wiphy, struct net_device *ndev,
authmode = psecuritypriv->ndisauthtype;
rtw_set_802_11_authentication_mode(padapter, authmode);
- /* rtw_set_802_11_encryption_mode(padapter, padapter->securitypriv.ndisencryptstatus); */
-
if (!rtw_set_802_11_connect(padapter, (u8 *)sme->bssid, &ndis_ssid)) {
ret = -1;
goto exit;
@@ -1833,27 +1817,26 @@ static int cfg80211_rtw_set_pmksa(struct wiphy *wiphy,
struct net_device *ndev,
struct cfg80211_pmksa *pmksa)
{
- u8 index, blInserted = false;
+ bool inserted = false;
+ u8 index;
struct adapter *padapter = rtw_netdev_priv(ndev);
struct security_priv *psecuritypriv = &padapter->securitypriv;
if (is_zero_ether_addr((u8 *)pmksa->bssid))
return -EINVAL;
- blInserted = false;
-
/* overwrite PMKID */
for (index = 0 ; index < NUM_PMKID_CACHE; index++) {
if (!memcmp(psecuritypriv->PMKIDList[index].Bssid, (u8 *)pmksa->bssid, ETH_ALEN)) {
memcpy(psecuritypriv->PMKIDList[index].PMKID, (u8 *)pmksa->pmkid, WLAN_PMKID_LEN);
psecuritypriv->PMKIDList[index].bUsed = true;
psecuritypriv->PMKIDIndex = index + 1;
- blInserted = true;
+ inserted = true;
break;
}
}
- if (!blInserted) {
+ if (!inserted) {
memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].Bssid, (u8 *)pmksa->bssid, ETH_ALEN);
memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].PMKID, (u8 *)pmksa->pmkid, WLAN_PMKID_LEN);
@@ -1870,7 +1853,8 @@ static int cfg80211_rtw_del_pmksa(struct wiphy *wiphy,
struct net_device *ndev,
struct cfg80211_pmksa *pmksa)
{
- u8 index, bMatched = false;
+ bool matched = false;
+ u8 index;
struct adapter *padapter = rtw_netdev_priv(ndev);
struct security_priv *psecuritypriv = &padapter->securitypriv;
@@ -1883,12 +1867,12 @@ static int cfg80211_rtw_del_pmksa(struct wiphy *wiphy,
eth_zero_addr(psecuritypriv->PMKIDList[index].Bssid);
memset(psecuritypriv->PMKIDList[index].PMKID, 0x00, WLAN_PMKID_LEN);
psecuritypriv->PMKIDList[index].bUsed = false;
- bMatched = true;
+ matched = true;
break;
}
}
- if (!bMatched)
+ if (!matched)
return -EINVAL;
return 0;
@@ -2058,11 +2042,9 @@ static netdev_tx_t rtw_cfg80211_monitor_if_xmit_entry(struct sk_buff *skb, struc
struct xmit_frame *pmgntframe;
struct pkt_attrib *pattrib;
unsigned char *pframe;
- /* u8 category, action, OUI_Subtype, dialogToken = 0; */
- /* unsigned char *frame_body; */
struct ieee80211_hdr *pwlanhdr;
- struct xmit_priv *pxmitpriv = &(padapter->xmitpriv);
- struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
+ struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
+ struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
u8 *buf = skb->data;
u32 len = skb->len;
u8 category, action;
@@ -2161,7 +2143,6 @@ static int rtw_cfg80211_add_monitor_if(struct adapter *padapter, char *name, str
goto out;
*ndev = pwdev_priv->pmon_ndev = mon_ndev;
- memcpy(pwdev_priv->ifname_mon, name, IFNAMSIZ + 1);
out:
if (ret && mon_wdev) {
@@ -2235,7 +2216,6 @@ static int cfg80211_rtw_del_virtual_intf(struct wiphy *wiphy,
if (ndev == pwdev_priv->pmon_ndev) {
pwdev_priv->pmon_ndev = NULL;
- pwdev_priv->ifname_mon[0] = '\0';
}
exit:
@@ -2247,7 +2227,7 @@ static int rtw_add_beacon(struct adapter *adapter, const u8 *head, size_t head_l
int ret = 0;
u8 *pbuf = NULL;
unsigned int len, wps_ielen = 0;
- struct mlme_priv *pmlmepriv = &(adapter->mlmepriv);
+ struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
if (!check_fwstate(pmlmepriv, WIFI_AP_STATE))
return -EINVAL;
@@ -2339,7 +2319,7 @@ static int cfg80211_rtw_del_station(struct wiphy *wiphy,
u8 updated = false;
struct sta_info *psta = NULL;
struct adapter *padapter = rtw_netdev_priv(wdev->netdev);
- struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
+ struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct sta_priv *pstapriv = &padapter->stapriv;
const u8 *mac = params->mac;
@@ -2464,8 +2444,8 @@ static int _cfg80211_rtw_mgmt_tx(struct adapter *padapter, u8 tx_ch, const u8 *b
int ret = _FAIL;
bool __maybe_unused ack = true;
struct ieee80211_hdr *pwlanhdr;
- struct xmit_priv *pxmitpriv = &(padapter->xmitpriv);
- struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv);
+ struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
+ struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
rtw_set_scan_deny(padapter, 1000);
@@ -2479,7 +2459,6 @@ static int _cfg80211_rtw_mgmt_tx(struct adapter *padapter, u8 tx_ch, const u8 *b
/* starting alloc mgmt frame to dump it */
pmgntframe = alloc_mgtxmitframe(pxmitpriv);
if (!pmgntframe) {
- /* ret = -ENOMEM; */
ret = _FAIL;
goto exit;
}
@@ -2742,7 +2721,6 @@ int rtw_wdev_alloc(struct adapter *padapter, struct device *dev)
pwdev_priv = adapter_wdev_data(padapter);
pwdev_priv->rtw_wdev = wdev;
pwdev_priv->pmon_ndev = NULL;
- pwdev_priv->ifname_mon[0] = '\0';
pwdev_priv->padapter = padapter;
pwdev_priv->scan_request = NULL;
spin_lock_init(&pwdev_priv->scan_req_lock);
diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/rtl8723bs/os_dep/os_intfs.c
index c15056ee207c..d220df325fa9 100644
--- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c
+++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c
@@ -20,18 +20,16 @@ static int rtw_lbkmode;/* RTL8712_AIR_TRX; */
static int rtw_network_mode = NL80211_IFTYPE_ADHOC;/* infra, ad-hoc, auto */
-/* struct ndis_802_11_ssid ssid; */
static int rtw_channel = 1;/* ad-hoc support requirement */
static int rtw_wireless_mode = WIRELESS_11BG_24N;
static int rtw_vrtl_carrier_sense = AUTO_VCS;
-static int rtw_vcs_type = RTS_CTS;/* */
-static int rtw_rts_thresh = 2347;/* */
-static int rtw_frag_thresh = 2346;/* */
+static int rtw_vcs_type = RTS_CTS;
+static int rtw_rts_thresh = 2347;
+static int rtw_frag_thresh = 2346;
static int rtw_preamble = PREAMBLE_LONG;/* long, short, auto */
static int rtw_scan_mode = 1;/* active, passive */
static int rtw_adhoc_tx_pwr = 1;
static int rtw_soft_ap;
-/* int smart_ps = 1; */
static int rtw_power_mgnt = 1;
static int rtw_ips_mode = IPS_NORMAL;
module_param(rtw_ips_mode, int, 0644);
@@ -48,7 +46,6 @@ static int rtw_radio_enable = 1;
static int rtw_long_retry_lmt = 7;
static int rtw_short_retry_lmt = 7;
static int rtw_busy_thresh = 40;
-/* int qos_enable = 0; */
static int rtw_ack_policy = NORMAL_ACK;
static int rtw_software_encrypt;
@@ -109,10 +106,6 @@ static int rtw_80211d;
static int rtw_qos_opt_enable;/* 0: disable, 1:enable */
module_param(rtw_qos_opt_enable, int, 0644);
-static char *ifname = "wlan%d";
-module_param(ifname, charp, 0644);
-MODULE_PARM_DESC(ifname, "The default name to allocate for first interface");
-
char *rtw_initmac; /* temp mac address if users want to use instead of the mac address in Efuse */
module_param(rtw_initmac, charp, 0644);
@@ -182,7 +175,6 @@ static void loadparam(struct adapter *padapter)
registry_par->chip_version = (u8)rtw_chip_version;
registry_par->rfintfs = (u8)rtw_rfintfs;
registry_par->lbkmode = (u8)rtw_lbkmode;
- /* registry_par->hci = (u8)hci; */
registry_par->network_mode = (u8)rtw_network_mode;
memcpy(registry_par->ssid.ssid, "ANY", 3);
@@ -207,7 +199,6 @@ static void loadparam(struct adapter *padapter)
registry_par->long_retry_lmt = (u8)rtw_long_retry_lmt;
registry_par->short_retry_lmt = (u8)rtw_short_retry_lmt;
registry_par->busy_thresh = (u16)rtw_busy_thresh;
- /* registry_par->qos_enable = (u8)rtw_qos_enable; */
registry_par->ack_policy = (u8)rtw_ack_policy;
registry_par->software_encrypt = (u8)rtw_software_encrypt;
registry_par->software_decrypt = (u8)rtw_software_decrypt;
@@ -254,8 +245,6 @@ static void loadparam(struct adapter *padapter)
registry_par->enable80211d = (u8)rtw_80211d;
- snprintf(registry_par->ifname, 16, "%s", ifname);
-
registry_par->notch_filter = (u8)rtw_notch_filter;
registry_par->reg_enable_tx_power_limit = (u8)rtw_tx_pwr_lmt_enable;
@@ -274,10 +263,7 @@ static int rtw_net_set_mac_address(struct net_device *pnetdev, void *p)
struct sockaddr *addr = p;
if (!padapter->bup) {
- /* addr->sa_data[4], addr->sa_data[5]); */
memcpy(padapter->eeprompriv.mac_addr, addr->sa_data, ETH_ALEN);
- /* eth_hw_addr_set(pnetdev, addr->sa_data); */
- /* padapter->bset_hwaddr = true; */
}
return 0;
@@ -289,8 +275,8 @@ static struct net_device_stats *rtw_net_get_stats(struct net_device *pnetdev)
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct recv_priv *precvpriv = &padapter->recvpriv;
- padapter->stats.tx_packets = pxmitpriv->tx_pkts;/* pxmitpriv->tx_pkts++; */
- padapter->stats.rx_packets = precvpriv->rx_pkts;/* precvpriv->rx_pkts++; */
+ padapter->stats.tx_packets = pxmitpriv->tx_pkts;
+ padapter->stats.rx_packets = precvpriv->rx_pkts;
padapter->stats.tx_dropped = pxmitpriv->tx_drop;
padapter->stats.rx_dropped = precvpriv->rx_drop;
padapter->stats.tx_bytes = pxmitpriv->tx_bytes;
@@ -402,18 +388,6 @@ static const struct net_device_ops rtw_netdev_ops = {
.ndo_get_stats = rtw_net_get_stats,
};
-int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname)
-{
- if (dev_alloc_name(pnetdev, ifname) < 0) {
- pr_err("dev_alloc_name, fail for %s\n", ifname);
- return 1;
- }
- netif_carrier_off(pnetdev);
- /* rtw_netif_stop_queue(pnetdev); */
-
- return 0;
-}
-
struct net_device *rtw_init_netdev(struct adapter *old_padapter)
{
struct adapter *padapter;
@@ -431,11 +405,8 @@ struct net_device *rtw_init_netdev(struct adapter *old_padapter)
padapter = rtw_netdev_priv(pnetdev);
padapter->pnetdev = pnetdev;
- /* pnetdev->init = NULL; */
-
pnetdev->netdev_ops = &rtw_netdev_ops;
- /* pnetdev->tx_timeout = NULL; */
pnetdev->watchdog_timeo = HZ * 3; /* 3 second timeout */
/* step 2. */
@@ -512,7 +483,6 @@ static void rtw_init_default_value(struct adapter *padapter)
pxmitpriv->vcs_setting = pregistrypriv->vrtl_carrier_sense;
pxmitpriv->vcs = pregistrypriv->vcs_type;
pxmitpriv->vcs_type = pregistrypriv->vcs_type;
- /* pxmitpriv->rts_thresh = pregistrypriv->rts_thresh; */
pxmitpriv->frag_len = pregistrypriv->frag_thresh;
/* recv_priv */
@@ -520,9 +490,6 @@ static void rtw_init_default_value(struct adapter *padapter)
/* mlme_priv */
pmlmepriv->scan_mode = SCAN_ACTIVE;
- /* qos_priv */
- /* pmlmepriv->qospriv.qos_option = pregistrypriv->wmm_enable; */
-
/* ht_priv */
pmlmepriv->htpriv.ampdu_enable = false;/* set to disabled */
@@ -659,9 +626,6 @@ u8 rtw_init_drv_sw(struct adapter *padapter)
goto free_xmit_priv;
spin_lock_init(&padapter->security_key_mutex);
- /* We don't need to memset padapter->XXX to zero, because adapter is allocated by vzalloc(). */
- /* memset((unsigned char *)&padapter->securitypriv, 0, sizeof (struct security_priv)); */
-
if (_rtw_init_sta_priv(&padapter->stapriv) == _FAIL)
goto free_recv_priv;
@@ -730,8 +694,6 @@ u8 rtw_free_drv_sw(struct adapter *padapter)
rtw_free_pwrctrl_priv(padapter);
- /* kfree((void *)padapter); */
-
rtw_hal_data_deinit(padapter);
/* free the old_pnetdev */
@@ -747,14 +709,12 @@ u8 rtw_free_drv_sw(struct adapter *padapter)
return _SUCCESS;
}
-static int _rtw_drv_register_netdev(struct adapter *padapter, char *name)
+static int _rtw_drv_register_netdev(struct adapter *padapter)
{
int ret = _SUCCESS;
struct net_device *pnetdev = padapter->pnetdev;
- /* alloc netdev name */
- if (rtw_init_netdev_name(pnetdev, name))
- return _FAIL;
+ netif_carrier_off(pnetdev);
eth_hw_addr_set(pnetdev, padapter->eeprompriv.mac_addr);
@@ -779,9 +739,8 @@ int rtw_drv_register_netdev(struct adapter *if1)
{
struct dvobj_priv *dvobj = if1->dvobj;
struct adapter *padapter = dvobj->padapters;
- char *name = if1->registrypriv.ifname;
- return _rtw_drv_register_netdev(padapter, name);
+ return _rtw_drv_register_netdev(padapter);
}
static int _netdev_open(struct net_device *pnetdev)
@@ -862,13 +821,11 @@ int netdev_open(struct net_device *pnetdev)
static int ips_netdrv_open(struct adapter *padapter)
{
int status = _SUCCESS;
- /* struct pwrctrl_priv *pwrpriv = adapter_to_pwrctl(padapter); */
padapter->net_closed = false;
padapter->driver_stopped = false;
padapter->bCardDisableWOHSM = false;
- /* padapter->bup = true; */
status = rtw_hal_init(padapter);
if (status == _FAIL)
@@ -930,7 +887,6 @@ static int netdev_close(struct net_device *pnetdev)
struct pwrctrl_priv *pwrctl = adapter_to_pwrctl(padapter);
if (pwrctl->bInternalAutoSuspend) {
- /* rtw_pwr_wakeup(padapter); */
if (pwrctl->rf_pwrstate == rf_off)
pwrctl->ps_flag = true;
}
@@ -1068,7 +1024,6 @@ static void rtw_suspend_normal(struct adapter *padapter)
rtw_dev_unload(padapter);
- /* sdio_deinit(adapter_to_dvobj(padapter)); */
if (padapter->intf_deinit)
padapter->intf_deinit(adapter_to_dvobj(padapter));
}
diff --git a/drivers/staging/rtl8723bs/os_dep/sdio_intf.c b/drivers/staging/rtl8723bs/os_dep/sdio_intf.c
index c61d3d12df7f..6ef3a7198533 100644
--- a/drivers/staging/rtl8723bs/os_dep/sdio_intf.c
+++ b/drivers/staging/rtl8723bs/os_dep/sdio_intf.c
@@ -122,8 +122,10 @@ static u32 sdio_init(struct dvobj_priv *dvobj)
goto release;
err = sdio_set_block_size(func, 512);
- if (err)
+ if (err) {
+ sdio_disable_func(func);
goto release;
+ }
psdio_data->block_transfer_len = 512;
psdio_data->tx_block_mode = 1;
diff --git a/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c b/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c
index e9a2f3f7ec74..15a55c05bdb4 100644
--- a/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c
+++ b/drivers/staging/rtl8723bs/os_dep/sdio_ops_linux.c
@@ -433,7 +433,6 @@ s32 _sd_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, void *pdata)
return err;
func = psdio->func;
-/* size = sdio_align_size(func, cnt); */
if (unlikely((cnt == 1) || (cnt == 2))) {
int i;
diff --git a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c
index 3b6029c20d50..6ee2a1f29aa4 100644
--- a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c
+++ b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c
@@ -43,7 +43,7 @@ int _rtw_pktfile_read(struct pkt_file *pfile, u8 *rmem, unsigned int rlen)
return rlen;
}
-signed int rtw_endofpktfile(struct pkt_file *pfile)
+bool rtw_endofpktfile(struct pkt_file *pfile)
{
if (pfile->pkt_len == 0)
return true;
@@ -165,7 +165,6 @@ static int rtw_mlcst2unicst(struct adapter *padapter, struct sk_buff *skb)
}
} else {
pxmitpriv->tx_drop++;
- /* dev_kfree_skb_any(skb); */
return false; /* Caller shall tx this multicast frame via normal way. */
}
}
diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
index 8b93bfeb217b..21e310274330 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -13,7 +13,7 @@ static int g_hwcursor = 1;
static int g_noaccel __ro_after_init;
static int g_nomtrr __ro_after_init;
static const char *g_fbmode[] = {NULL, NULL};
-static const char *g_def_fbmode = "1024x768-32@60";
+static const char * const g_def_fbmode = "1024x768-32@60";
static char *g_settings;
static int g_dualview __ro_after_init;
static char *g_option;
@@ -384,7 +384,7 @@ static inline unsigned int chan_to_field(unsigned int chan,
return chan << bf->offset;
}
-static int __maybe_unused lynxfb_suspend(struct device *dev)
+static int lynxfb_suspend(struct device *dev)
{
struct fb_info *info;
struct sm750_dev *sm750_dev;
@@ -405,7 +405,7 @@ static int __maybe_unused lynxfb_suspend(struct device *dev)
return 0;
}
-static int __maybe_unused lynxfb_resume(struct device *dev)
+static int lynxfb_resume(struct device *dev)
{
struct pci_dev *pdev = to_pci_dev(dev);
struct fb_info *info;
@@ -479,7 +479,7 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
/* check if current fb's video memory big enough to hold the onscreen*/
request = var->xres_virtual * (var->bits_per_pixel >> 3);
- /* defaulty crtc->channel go with par->index */
+ /* default crtc->channel go with par->index */
request = ALIGN(request, crtc->line_pad);
request = request * var->yres_virtual;
@@ -825,6 +825,11 @@ exit:
return ret;
}
+static void lynxfb_unset_fbinfo(struct fb_info *info)
+{
+ fb_dealloc_cmap(&info->cmap);
+}
+
/* chip specific g_option configuration routine */
static void sm750fb_setup(struct sm750_dev *sm750_dev, char *src)
{
@@ -910,6 +915,7 @@ static void sm750fb_framebuffer_release(struct sm750_dev *sm750_dev)
while (sm750_dev->fb_count) {
fb_info = sm750_dev->fbinfo[sm750_dev->fb_count - 1];
unregister_framebuffer(fb_info);
+ lynxfb_unset_fbinfo(fb_info);
framebuffer_release(fb_info);
sm750_dev->fb_count--;
}
@@ -936,12 +942,14 @@ static int sm750fb_framebuffer_alloc(struct sm750_dev *sm750_dev, int fbidx)
err = register_framebuffer(fb_info);
if (err < 0)
- goto release_fb;
+ goto unset_fb;
sm750_dev->fb_count++;
return 0;
+unset_fb:
+ lynxfb_unset_fbinfo(fb_info);
release_fb:
framebuffer_release(fb_info);
return err;
@@ -1094,14 +1102,14 @@ static const struct pci_device_id smi_pci_table[] = {
MODULE_DEVICE_TABLE(pci, smi_pci_table);
-static SIMPLE_DEV_PM_OPS(lynxfb_pm_ops, lynxfb_suspend, lynxfb_resume);
+static DEFINE_SIMPLE_DEV_PM_OPS(lynxfb_pm_ops, lynxfb_suspend, lynxfb_resume);
static struct pci_driver lynxfb_driver = {
.name = "sm750fb",
.id_table = smi_pci_table,
.probe = lynxfb_pci_probe,
.remove = lynxfb_pci_remove,
- .driver.pm = &lynxfb_pm_ops,
+ .driver.pm = pm_sleep_ptr(&lynxfb_pm_ops),
};
static int __init lynxfb_init(void)
diff --git a/drivers/staging/sm750fb/sm750_accel.h b/drivers/staging/sm750fb/sm750_accel.h
index efceefaaafb0..6db54c6526dc 100644
--- a/drivers/staging/sm750fb/sm750_accel.h
+++ b/drivers/staging/sm750fb/sm750_accel.h
@@ -195,7 +195,8 @@ int sm750_hw_fillrect(struct lynx_accel *accel,
u32 color, u32 rop);
/**
- * sm750_hm_copyarea
+ * sm750_hw_copyarea
+ * @accel: Acceleration device data
* @source_base: Address of source: offset in frame buffer
* @source_pitch: Pitch value of source surface in BYTE
* @sx: Starting x coordinate of source surface
@@ -219,6 +220,7 @@ int sm750_hw_copyarea(struct lynx_accel *accel,
/**
* sm750_hw_imageblit
+ * @accel: Acceleration device data
* @src_buf: pointer to start of source buffer in system memory
* @start_bit: Mono data can start at any bit in a byte, this value should be
*>----- 0 to 7
diff --git a/drivers/staging/vme_user/vme_tsi148.c b/drivers/staging/vme_user/vme_tsi148.c
index c695ad9b4ca2..9447c00bc013 100644
--- a/drivers/staging/vme_user/vme_tsi148.c
+++ b/drivers/staging/vme_user/vme_tsi148.c
@@ -26,6 +26,7 @@
#include <linux/io.h>
#include <linux/uaccess.h>
#include <linux/byteorder/generic.h>
+#include <linux/string_choices.h>
#include "vme.h"
#include "vme_bridge.h"
@@ -2458,7 +2459,7 @@ static int tsi148_probe(struct pci_dev *pdev, const struct pci_device_id *id)
geoid);
dev_info(&pdev->dev, "VME Write and flush and error check is %s\n",
- err_chk ? "enabled" : "disabled");
+ str_enabled_disabled(err_chk));
retval = tsi148_crcsr_init(tsi148_bridge, pdev);
if (retval) {