Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751923AbdFPFb7 (ORCPT ); Fri, 16 Jun 2017 01:31:59 -0400 Received: from mail-pg0-f67.google.com ([74.125.83.67]:33835 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750865AbdFPFb6 (ORCPT ); Fri, 16 Jun 2017 01:31:58 -0400 From: sunil.m@techveda.org To: gregkh@linuxfoundation.org Cc: sergio.paracuellos@gmail.com, geo.emmnl@gmail.com, sfaragnaus@gmail.com, karniksayli1995@gmail.com, fransklaver@gmail.com, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, Suniel Mahesh Subject: [PATCH v3] staging: wlan-ng: Fix struct definition's and variable type Date: Fri, 16 Jun 2017 11:01:45 +0530 Message-Id: <1497591105-4867-1-git-send-email-sunil.m@techveda.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2698 Lines: 92 From: Suniel Mahesh le16_to_cpu() accepts argument of type __le16 and cpu_to_le16() returns an argument of type __le16. This patch fixes: (a) the type of the variable that end's up getting return from cpu_to_le16(). (b) the member types of struct hfa384x_host_scan_request_data, struct hfa384x_bytestr32 and struct hfa384x_hscan_result_sub. The following type mismatch warnings reported by sparse have been fixed: warning: incorrect type in assignment (different base types) warning: cast to restricted __le16 Signed-off-by: Suniel Mahesh --- Changes for v3: - Edited subject and description of the patch to fit with the changes done in the code base, as suggested by Frans Klaver. Changes for v2: - Reworked on the patch and modified commit message as per the recommendations from Frans Klaver and Greg K-H. - Patch was tested and built on next-20170609 and staging-testing. --- drivers/staging/wlan-ng/hfa384x.h | 18 +++++++++--------- drivers/staging/wlan-ng/prism2mgmt.c | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/staging/wlan-ng/hfa384x.h b/drivers/staging/wlan-ng/hfa384x.h index 310e2c4..f99cc04 100644 --- a/drivers/staging/wlan-ng/hfa384x.h +++ b/drivers/staging/wlan-ng/hfa384x.h @@ -358,7 +358,7 @@ struct hfa384x_bytestr { } __packed; struct hfa384x_bytestr32 { - u16 len; + __le16 len; u8 data[32]; } __packed; @@ -399,8 +399,8 @@ struct hfa384x_caplevel { /*-- Configuration Record: HostScanRequest (data portion only) --*/ struct hfa384x_host_scan_request_data { - u16 channel_list; - u16 tx_rate; + __le16 channel_list; + __le16 tx_rate; struct hfa384x_bytestr32 ssid; } __packed; @@ -682,16 +682,16 @@ struct hfa384x_ch_info_result { /*-- Inquiry Frame, Diagnose: Host Scan Results & Subfields--*/ struct hfa384x_hscan_result_sub { - u16 chid; - u16 anl; - u16 sl; + __le16 chid; + __le16 anl; + __le16 sl; u8 bssid[WLAN_BSSID_LEN]; - u16 bcnint; - u16 capinfo; + __le16 bcnint; + __le16 capinfo; struct hfa384x_bytestr32 ssid; u8 supprates[10]; /* 802.11 info element */ u16 proberesp_rate; - u16 atim; + __le16 atim; } __packed; struct hfa384x_hscan_result { diff --git a/drivers/staging/wlan-ng/prism2mgmt.c b/drivers/staging/wlan-ng/prism2mgmt.c index f4d6e48..c4aa9e7 100644 --- a/drivers/staging/wlan-ng/prism2mgmt.c +++ b/drivers/staging/wlan-ng/prism2mgmt.c @@ -213,7 +213,7 @@ int prism2mgmt_scan(struct wlandevice *wlandev, void *msgp) goto exit; } if (word == HFA384x_PORTSTATUS_DISABLED) { - u16 wordbuf[17]; + __le16 wordbuf[17]; result = hfa384x_drvr_setconfig16(hw, HFA384x_RID_CNFROAMINGMODE, -- 1.9.1