mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 22:54:05 +08:00
Staging bugfixes for 3.8-rc4
Here are some bugfixes for the drivers/staging tree for 3.8-rc4. Nothing major, just a number of small fixes for problems that people have reported, including finally tracking down the root of the 64/32 bit problem with the vt6656 that has been driving people crazy for a while. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iEYEABECAAYFAlD5pQkACgkQMUfUDdst+ylQjQCgkTxHcFHZLN9qNGgJctYPKIS8 JWgAnRRK4xVzRMJ1FuyoK/PJWJo7qmHC =g3G7 -----END PGP SIGNATURE----- Merge tag 'staging-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging Pull staging driver bugfixes from Greg Kroah-Hartman: "Here are some bugfixes for the drivers/staging tree for 3.8-rc4. Nothing major, just a number of small fixes for problems that people have reported, including finally tracking down the root of the 64/32 bit problem with the vt6656 that has been driving people crazy for a while" * tag 'staging-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: staging/sb105x: PARPORT config is not good enough must use PARPORT_PC staging: wlan-ng: Fix clamping of returned SSID length staging: vt6656: Fix inconsistent structure packing staging:iio:adis16080: Perform sign extension iio: mxs-lradc: indexes are unsigned
This commit is contained in:
commit
abad21a8ba
@ -239,7 +239,7 @@ static irqreturn_t mxs_lradc_trigger_handler(int irq, void *p)
|
||||
struct mxs_lradc *lradc = iio_priv(iio);
|
||||
const uint32_t chan_value = LRADC_CH_ACCUMULATE |
|
||||
((LRADC_DELAY_TIMER_LOOP - 1) << LRADC_CH_NUM_SAMPLES_OFFSET);
|
||||
int i, j = 0;
|
||||
unsigned int i, j = 0;
|
||||
|
||||
for_each_set_bit(i, iio->active_scan_mask, iio->masklength) {
|
||||
lradc->buffer[j] = readl(lradc->base + LRADC_CH(j));
|
||||
|
@ -69,7 +69,7 @@ static int adis16080_spi_read(struct iio_dev *indio_dev,
|
||||
ret = spi_read(st->us, st->buf, 2);
|
||||
|
||||
if (ret == 0)
|
||||
*val = ((st->buf[0] & 0xF) << 8) | st->buf[1];
|
||||
*val = sign_extend32(((st->buf[0] & 0xF) << 8) | st->buf[1], 11);
|
||||
mutex_unlock(&st->buf_lock);
|
||||
|
||||
return ret;
|
||||
|
@ -3054,7 +3054,7 @@ static int init_mp_dev(struct pci_dev *pcidev, mppcibrd_t brd)
|
||||
sbdev->nr_ports = ((portnum_hex/16)*10) + (portnum_hex % 16);
|
||||
}
|
||||
break;
|
||||
#ifdef CONFIG_PARPORT
|
||||
#ifdef CONFIG_PARPORT_PC
|
||||
case PCI_DEVICE_ID_MP2S1P :
|
||||
sbdev->nr_ports = 2;
|
||||
|
||||
|
@ -90,7 +90,6 @@ typedef struct tagSRSNCapObject {
|
||||
} SRSNCapObject, *PSRSNCapObject;
|
||||
|
||||
// BSS info(AP)
|
||||
#pragma pack(1)
|
||||
typedef struct tagKnownBSS {
|
||||
// BSS info
|
||||
BOOL bActive;
|
||||
|
@ -34,7 +34,6 @@
|
||||
#include "device.h"
|
||||
|
||||
/*--------------------- Export Definitions -------------------------*/
|
||||
#pragma pack(1)
|
||||
typedef struct tagSINTData {
|
||||
BYTE byTSR0;
|
||||
BYTE byPkt0;
|
||||
|
@ -95,13 +95,12 @@ typedef enum tagWZONETYPE {
|
||||
// Ioctl interface structure
|
||||
// Command structure
|
||||
//
|
||||
#pragma pack(1)
|
||||
typedef struct tagSCmdRequest {
|
||||
u8 name[16];
|
||||
void *data;
|
||||
u16 wResult;
|
||||
u16 wCmdCode;
|
||||
} SCmdRequest, *PSCmdRequest;
|
||||
} __packed SCmdRequest, *PSCmdRequest;
|
||||
|
||||
//
|
||||
// Scan
|
||||
@ -111,7 +110,7 @@ typedef struct tagSCmdScan {
|
||||
|
||||
u8 ssid[SSID_MAXLEN + 2];
|
||||
|
||||
} SCmdScan, *PSCmdScan;
|
||||
} __packed SCmdScan, *PSCmdScan;
|
||||
|
||||
//
|
||||
// BSS Join
|
||||
@ -126,7 +125,7 @@ typedef struct tagSCmdBSSJoin {
|
||||
BOOL bPSEnable;
|
||||
BOOL bShareKeyAuth;
|
||||
|
||||
} SCmdBSSJoin, *PSCmdBSSJoin;
|
||||
} __packed SCmdBSSJoin, *PSCmdBSSJoin;
|
||||
|
||||
//
|
||||
// Zonetype Setting
|
||||
@ -137,7 +136,7 @@ typedef struct tagSCmdZoneTypeSet {
|
||||
BOOL bWrite;
|
||||
WZONETYPE ZoneType;
|
||||
|
||||
} SCmdZoneTypeSet, *PSCmdZoneTypeSet;
|
||||
} __packed SCmdZoneTypeSet, *PSCmdZoneTypeSet;
|
||||
|
||||
typedef struct tagSWPAResult {
|
||||
char ifname[100];
|
||||
@ -145,7 +144,7 @@ typedef struct tagSWPAResult {
|
||||
u8 key_mgmt;
|
||||
u8 eap_type;
|
||||
BOOL authenticated;
|
||||
} SWPAResult, *PSWPAResult;
|
||||
} __packed SWPAResult, *PSWPAResult;
|
||||
|
||||
typedef struct tagSCmdStartAP {
|
||||
|
||||
@ -157,7 +156,7 @@ typedef struct tagSCmdStartAP {
|
||||
BOOL bShareKeyAuth;
|
||||
u8 byBasicRate;
|
||||
|
||||
} SCmdStartAP, *PSCmdStartAP;
|
||||
} __packed SCmdStartAP, *PSCmdStartAP;
|
||||
|
||||
typedef struct tagSCmdSetWEP {
|
||||
|
||||
@ -167,7 +166,7 @@ typedef struct tagSCmdSetWEP {
|
||||
BOOL bWepKeyAvailable[WEP_NKEYS];
|
||||
u32 auWepKeyLength[WEP_NKEYS];
|
||||
|
||||
} SCmdSetWEP, *PSCmdSetWEP;
|
||||
} __packed SCmdSetWEP, *PSCmdSetWEP;
|
||||
|
||||
typedef struct tagSBSSIDItem {
|
||||
|
||||
@ -180,14 +179,14 @@ typedef struct tagSBSSIDItem {
|
||||
BOOL bWEPOn;
|
||||
u32 uRSSI;
|
||||
|
||||
} SBSSIDItem;
|
||||
} __packed SBSSIDItem;
|
||||
|
||||
|
||||
typedef struct tagSBSSIDList {
|
||||
|
||||
u32 uItem;
|
||||
SBSSIDItem sBSSIDList[0];
|
||||
} SBSSIDList, *PSBSSIDList;
|
||||
} __packed SBSSIDList, *PSBSSIDList;
|
||||
|
||||
|
||||
typedef struct tagSNodeItem {
|
||||
@ -208,7 +207,7 @@ typedef struct tagSNodeItem {
|
||||
u32 uTxAttempts;
|
||||
u16 wFailureRatio;
|
||||
|
||||
} SNodeItem;
|
||||
} __packed SNodeItem;
|
||||
|
||||
|
||||
typedef struct tagSNodeList {
|
||||
@ -216,7 +215,7 @@ typedef struct tagSNodeList {
|
||||
u32 uItem;
|
||||
SNodeItem sNodeList[0];
|
||||
|
||||
} SNodeList, *PSNodeList;
|
||||
} __packed SNodeList, *PSNodeList;
|
||||
|
||||
|
||||
typedef struct tagSCmdLinkStatus {
|
||||
@ -229,7 +228,7 @@ typedef struct tagSCmdLinkStatus {
|
||||
u32 uChannel;
|
||||
u32 uLinkRate;
|
||||
|
||||
} SCmdLinkStatus, *PSCmdLinkStatus;
|
||||
} __packed SCmdLinkStatus, *PSCmdLinkStatus;
|
||||
|
||||
//
|
||||
// 802.11 counter
|
||||
@ -247,7 +246,7 @@ typedef struct tagSDot11MIBCount {
|
||||
u32 ReceivedFragmentCount;
|
||||
u32 MulticastReceivedFrameCount;
|
||||
u32 FCSErrorCount;
|
||||
} SDot11MIBCount, *PSDot11MIBCount;
|
||||
} __packed SDot11MIBCount, *PSDot11MIBCount;
|
||||
|
||||
|
||||
|
||||
@ -355,13 +354,13 @@ typedef struct tagSStatMIBCount {
|
||||
u32 ullTxBroadcastBytes[2];
|
||||
u32 ullTxMulticastBytes[2];
|
||||
u32 ullTxDirectedBytes[2];
|
||||
} SStatMIBCount, *PSStatMIBCount;
|
||||
} __packed SStatMIBCount, *PSStatMIBCount;
|
||||
|
||||
typedef struct tagSCmdValue {
|
||||
|
||||
u32 dwValue;
|
||||
|
||||
} SCmdValue, *PSCmdValue;
|
||||
} __packed SCmdValue, *PSCmdValue;
|
||||
|
||||
//
|
||||
// hostapd & viawget ioctl related
|
||||
@ -431,7 +430,7 @@ struct viawget_hostapd_param {
|
||||
u8 ssid[32];
|
||||
} scan_req;
|
||||
} u;
|
||||
};
|
||||
} __packed;
|
||||
|
||||
/*--------------------- Export Classes ----------------------------*/
|
||||
|
||||
|
@ -67,12 +67,11 @@ enum {
|
||||
|
||||
|
||||
|
||||
#pragma pack(1)
|
||||
typedef struct viawget_wpa_header {
|
||||
u8 type;
|
||||
u16 req_ie_len;
|
||||
u16 resp_ie_len;
|
||||
} viawget_wpa_header;
|
||||
} __packed viawget_wpa_header;
|
||||
|
||||
struct viawget_wpa_param {
|
||||
u32 cmd;
|
||||
@ -113,9 +112,8 @@ struct viawget_wpa_param {
|
||||
u8 *buf;
|
||||
} scan_results;
|
||||
} u;
|
||||
};
|
||||
} __packed;
|
||||
|
||||
#pragma pack(1)
|
||||
struct viawget_scan_result {
|
||||
u8 bssid[6];
|
||||
u8 ssid[32];
|
||||
@ -130,7 +128,7 @@ struct viawget_scan_result {
|
||||
int noise;
|
||||
int level;
|
||||
int maxrate;
|
||||
};
|
||||
} __packed;
|
||||
|
||||
/*--------------------- Export Classes ----------------------------*/
|
||||
|
||||
|
@ -406,7 +406,7 @@ int prism2mgmt_scan_results(wlandevice_t *wlandev, void *msgp)
|
||||
/* SSID */
|
||||
req->ssid.status = P80211ENUM_msgitem_status_data_ok;
|
||||
req->ssid.data.len = le16_to_cpu(item->ssid.len);
|
||||
req->ssid.data.len = min_t(u16, req->ssid.data.len, WLAN_BSSID_LEN);
|
||||
req->ssid.data.len = min_t(u16, req->ssid.data.len, WLAN_SSID_MAXLEN);
|
||||
memcpy(req->ssid.data.data, item->ssid.data, req->ssid.data.len);
|
||||
|
||||
/* supported rates */
|
||||
|
Loading…
Reference in New Issue
Block a user