From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752095AbcBKSZJ (ORCPT ); Thu, 11 Feb 2016 13:25:09 -0500 Received: from mail-lf0-f67.google.com ([209.85.215.67]:36739 "EHLO mail-lf0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752050AbcBKSY5 (ORCPT ); Thu, 11 Feb 2016 13:24:57 -0500 Date: Fri, 12 Feb 2016 01:24:22 +0700 From: Ivan Safonov To: Greg Kroah-Hartman Cc: Ivan Safonov , Dan Carpenter , Vatika Harlalka , Amitoj Kaur Chawla , devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] staging: rtl8188eu: remove pfirmware and fwsize of the hal_data_8188e structure Message-ID: <20160211182422.GA3200@alpha.sfu-kras.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The pfirmware is used only in rtl88eu_download_fw function (except the kfree(rtlhal->pfirmware) in netdev_close). The fwsize not used after initialization at all. The pfirmvare replaced by fw_data and fwsize removed. Signed-off-by: Ivan Safonov --- drivers/staging/rtl8188eu/hal/fw.c | 20 +++++++++----------- drivers/staging/rtl8188eu/include/rtl8188e_hal.h | 2 -- drivers/staging/rtl8188eu/os_dep/os_intfs.c | 4 ---- 3 files changed, 9 insertions(+), 17 deletions(-) diff --git a/drivers/staging/rtl8188eu/hal/fw.c b/drivers/staging/rtl8188eu/hal/fw.c index 25cecae..55c17df 100644 --- a/drivers/staging/rtl8188eu/hal/fw.c +++ b/drivers/staging/rtl8188eu/hal/fw.c @@ -158,13 +158,12 @@ exit: int rtl88eu_download_fw(struct adapter *adapt) { - struct hal_data_8188e *rtlhal = GET_HAL_DATA(adapt); struct dvobj_priv *dvobj = adapter_to_dvobj(adapt); struct device *device = dvobj_to_dev(dvobj); const struct firmware *fw; const char fw_name[] = "rtlwifi/rtl8188eufw.bin"; struct rtl92c_firmware_header *pfwheader = NULL; - u8 *download_data; + u8 *download_data, *fw_data; size_t download_size; unsigned int trailing_zeros_length; @@ -181,22 +180,20 @@ int rtl88eu_download_fw(struct adapter *adapt) trailing_zeros_length = (4 - fw->size % 4) % 4; - rtlhal->fwsize = fw->size; - rtlhal->pfirmware = kmalloc(fw->size + trailing_zeros_length, - GFP_KERNEL); - if (!rtlhal->pfirmware) + fw_data = kmalloc(fw->size + trailing_zeros_length, GFP_KERNEL); + if (!fw_data) return -ENOMEM; - memcpy(rtlhal->pfirmware, fw->data, fw->size); - memset(rtlhal->pfirmware + fw->size, 0, trailing_zeros_length); + memcpy(fw_data, fw->data, fw->size); + memset(fw_data + fw->size, 0, trailing_zeros_length); - pfwheader = (struct rtl92c_firmware_header *)rtlhal->pfirmware; + pfwheader = (struct rtl92c_firmware_header *)fw_data; if (IS_FW_HEADER_EXIST(pfwheader)) { - download_data = rtlhal->pfirmware + 32; + download_data = fw_data + 32; download_size = fw->size + trailing_zeros_length - 32; } else { - download_data = rtlhal->pfirmware; + download_data = fw_data; download_size = fw->size + trailing_zeros_length; } @@ -211,5 +208,6 @@ int rtl88eu_download_fw(struct adapter *adapt) _rtl88e_write_fw(adapt, download_data, download_size); _rtl88e_enable_fw_download(adapt, false); + kfree(fw_data); return _rtl88e_fw_free_to_go(adapt); } diff --git a/drivers/staging/rtl8188eu/include/rtl8188e_hal.h b/drivers/staging/rtl8188eu/include/rtl8188e_hal.h index cbad364..9f5050e 100644 --- a/drivers/staging/rtl8188eu/include/rtl8188e_hal.h +++ b/drivers/staging/rtl8188eu/include/rtl8188e_hal.h @@ -191,8 +191,6 @@ struct txpowerinfo24g { struct hal_data_8188e { struct HAL_VERSION VersionID; u16 CustomerID; - u8 *pfirmware; - u32 fwsize; u16 FirmwareVersion; u16 FirmwareVersionRev; u16 FirmwareSubVersion; diff --git a/drivers/staging/rtl8188eu/os_dep/os_intfs.c b/drivers/staging/rtl8188eu/os_dep/os_intfs.c index 3b25acf..7986e67 100644 --- a/drivers/staging/rtl8188eu/os_dep/os_intfs.c +++ b/drivers/staging/rtl8188eu/os_dep/os_intfs.c @@ -1155,7 +1155,6 @@ int pm_netdev_open(struct net_device *pnetdev, u8 bnormal) static int netdev_close(struct net_device *pnetdev) { struct adapter *padapter = (struct adapter *)rtw_netdev_priv(pnetdev); - struct hal_data_8188e *rtlhal = GET_HAL_DATA(padapter); RT_TRACE(_module_os_intfs_c_, _drv_info_, ("+88eu_drv - drv_close\n")); @@ -1188,9 +1187,6 @@ static int netdev_close(struct net_device *pnetdev) rtw_led_control(padapter, LED_CTL_POWER_OFF); } - kfree(rtlhal->pfirmware); - rtlhal->pfirmware = NULL; - RT_TRACE(_module_os_intfs_c_, _drv_info_, ("-88eu_drv - drv_close\n")); DBG_88E("-88eu_drv - drv_close, bup =%d\n", padapter->bup); return 0; -- 2.4.10