mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-26 08:31:13 +00: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
8 changed files with 23 additions and 28 deletions
|
@ -239,7 +239,7 @@ static irqreturn_t mxs_lradc_trigger_handler(int irq, void *p)
|
||||||
struct mxs_lradc *lradc = iio_priv(iio);
|
struct mxs_lradc *lradc = iio_priv(iio);
|
||||||
const uint32_t chan_value = LRADC_CH_ACCUMULATE |
|
const uint32_t chan_value = LRADC_CH_ACCUMULATE |
|
||||||
((LRADC_DELAY_TIMER_LOOP - 1) << LRADC_CH_NUM_SAMPLES_OFFSET);
|
((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) {
|
for_each_set_bit(i, iio->active_scan_mask, iio->masklength) {
|
||||||
lradc->buffer[j] = readl(lradc->base + LRADC_CH(j));
|
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);
|
ret = spi_read(st->us, st->buf, 2);
|
||||||
|
|
||||||
if (ret == 0)
|
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);
|
mutex_unlock(&st->buf_lock);
|
||||||
|
|
||||||
return ret;
|
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);
|
sbdev->nr_ports = ((portnum_hex/16)*10) + (portnum_hex % 16);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#ifdef CONFIG_PARPORT
|
#ifdef CONFIG_PARPORT_PC
|
||||||
case PCI_DEVICE_ID_MP2S1P :
|
case PCI_DEVICE_ID_MP2S1P :
|
||||||
sbdev->nr_ports = 2;
|
sbdev->nr_ports = 2;
|
||||||
|
|
||||||
|
|
|
@ -90,7 +90,6 @@ typedef struct tagSRSNCapObject {
|
||||||
} SRSNCapObject, *PSRSNCapObject;
|
} SRSNCapObject, *PSRSNCapObject;
|
||||||
|
|
||||||
// BSS info(AP)
|
// BSS info(AP)
|
||||||
#pragma pack(1)
|
|
||||||
typedef struct tagKnownBSS {
|
typedef struct tagKnownBSS {
|
||||||
// BSS info
|
// BSS info
|
||||||
BOOL bActive;
|
BOOL bActive;
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
|
|
||||||
/*--------------------- Export Definitions -------------------------*/
|
/*--------------------- Export Definitions -------------------------*/
|
||||||
#pragma pack(1)
|
|
||||||
typedef struct tagSINTData {
|
typedef struct tagSINTData {
|
||||||
BYTE byTSR0;
|
BYTE byTSR0;
|
||||||
BYTE byPkt0;
|
BYTE byPkt0;
|
||||||
|
|
|
@ -95,13 +95,12 @@ typedef enum tagWZONETYPE {
|
||||||
// Ioctl interface structure
|
// Ioctl interface structure
|
||||||
// Command structure
|
// Command structure
|
||||||
//
|
//
|
||||||
#pragma pack(1)
|
|
||||||
typedef struct tagSCmdRequest {
|
typedef struct tagSCmdRequest {
|
||||||
u8 name[16];
|
u8 name[16];
|
||||||
void *data;
|
void *data;
|
||||||
u16 wResult;
|
u16 wResult;
|
||||||
u16 wCmdCode;
|
u16 wCmdCode;
|
||||||
} SCmdRequest, *PSCmdRequest;
|
} __packed SCmdRequest, *PSCmdRequest;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Scan
|
// Scan
|
||||||
|
@ -111,7 +110,7 @@ typedef struct tagSCmdScan {
|
||||||
|
|
||||||
u8 ssid[SSID_MAXLEN + 2];
|
u8 ssid[SSID_MAXLEN + 2];
|
||||||
|
|
||||||
} SCmdScan, *PSCmdScan;
|
} __packed SCmdScan, *PSCmdScan;
|
||||||
|
|
||||||
//
|
//
|
||||||
// BSS Join
|
// BSS Join
|
||||||
|
@ -126,7 +125,7 @@ typedef struct tagSCmdBSSJoin {
|
||||||
BOOL bPSEnable;
|
BOOL bPSEnable;
|
||||||
BOOL bShareKeyAuth;
|
BOOL bShareKeyAuth;
|
||||||
|
|
||||||
} SCmdBSSJoin, *PSCmdBSSJoin;
|
} __packed SCmdBSSJoin, *PSCmdBSSJoin;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Zonetype Setting
|
// Zonetype Setting
|
||||||
|
@ -137,7 +136,7 @@ typedef struct tagSCmdZoneTypeSet {
|
||||||
BOOL bWrite;
|
BOOL bWrite;
|
||||||
WZONETYPE ZoneType;
|
WZONETYPE ZoneType;
|
||||||
|
|
||||||
} SCmdZoneTypeSet, *PSCmdZoneTypeSet;
|
} __packed SCmdZoneTypeSet, *PSCmdZoneTypeSet;
|
||||||
|
|
||||||
typedef struct tagSWPAResult {
|
typedef struct tagSWPAResult {
|
||||||
char ifname[100];
|
char ifname[100];
|
||||||
|
@ -145,7 +144,7 @@ typedef struct tagSWPAResult {
|
||||||
u8 key_mgmt;
|
u8 key_mgmt;
|
||||||
u8 eap_type;
|
u8 eap_type;
|
||||||
BOOL authenticated;
|
BOOL authenticated;
|
||||||
} SWPAResult, *PSWPAResult;
|
} __packed SWPAResult, *PSWPAResult;
|
||||||
|
|
||||||
typedef struct tagSCmdStartAP {
|
typedef struct tagSCmdStartAP {
|
||||||
|
|
||||||
|
@ -157,7 +156,7 @@ typedef struct tagSCmdStartAP {
|
||||||
BOOL bShareKeyAuth;
|
BOOL bShareKeyAuth;
|
||||||
u8 byBasicRate;
|
u8 byBasicRate;
|
||||||
|
|
||||||
} SCmdStartAP, *PSCmdStartAP;
|
} __packed SCmdStartAP, *PSCmdStartAP;
|
||||||
|
|
||||||
typedef struct tagSCmdSetWEP {
|
typedef struct tagSCmdSetWEP {
|
||||||
|
|
||||||
|
@ -167,7 +166,7 @@ typedef struct tagSCmdSetWEP {
|
||||||
BOOL bWepKeyAvailable[WEP_NKEYS];
|
BOOL bWepKeyAvailable[WEP_NKEYS];
|
||||||
u32 auWepKeyLength[WEP_NKEYS];
|
u32 auWepKeyLength[WEP_NKEYS];
|
||||||
|
|
||||||
} SCmdSetWEP, *PSCmdSetWEP;
|
} __packed SCmdSetWEP, *PSCmdSetWEP;
|
||||||
|
|
||||||
typedef struct tagSBSSIDItem {
|
typedef struct tagSBSSIDItem {
|
||||||
|
|
||||||
|
@ -180,14 +179,14 @@ typedef struct tagSBSSIDItem {
|
||||||
BOOL bWEPOn;
|
BOOL bWEPOn;
|
||||||
u32 uRSSI;
|
u32 uRSSI;
|
||||||
|
|
||||||
} SBSSIDItem;
|
} __packed SBSSIDItem;
|
||||||
|
|
||||||
|
|
||||||
typedef struct tagSBSSIDList {
|
typedef struct tagSBSSIDList {
|
||||||
|
|
||||||
u32 uItem;
|
u32 uItem;
|
||||||
SBSSIDItem sBSSIDList[0];
|
SBSSIDItem sBSSIDList[0];
|
||||||
} SBSSIDList, *PSBSSIDList;
|
} __packed SBSSIDList, *PSBSSIDList;
|
||||||
|
|
||||||
|
|
||||||
typedef struct tagSNodeItem {
|
typedef struct tagSNodeItem {
|
||||||
|
@ -208,7 +207,7 @@ typedef struct tagSNodeItem {
|
||||||
u32 uTxAttempts;
|
u32 uTxAttempts;
|
||||||
u16 wFailureRatio;
|
u16 wFailureRatio;
|
||||||
|
|
||||||
} SNodeItem;
|
} __packed SNodeItem;
|
||||||
|
|
||||||
|
|
||||||
typedef struct tagSNodeList {
|
typedef struct tagSNodeList {
|
||||||
|
@ -216,7 +215,7 @@ typedef struct tagSNodeList {
|
||||||
u32 uItem;
|
u32 uItem;
|
||||||
SNodeItem sNodeList[0];
|
SNodeItem sNodeList[0];
|
||||||
|
|
||||||
} SNodeList, *PSNodeList;
|
} __packed SNodeList, *PSNodeList;
|
||||||
|
|
||||||
|
|
||||||
typedef struct tagSCmdLinkStatus {
|
typedef struct tagSCmdLinkStatus {
|
||||||
|
@ -229,7 +228,7 @@ typedef struct tagSCmdLinkStatus {
|
||||||
u32 uChannel;
|
u32 uChannel;
|
||||||
u32 uLinkRate;
|
u32 uLinkRate;
|
||||||
|
|
||||||
} SCmdLinkStatus, *PSCmdLinkStatus;
|
} __packed SCmdLinkStatus, *PSCmdLinkStatus;
|
||||||
|
|
||||||
//
|
//
|
||||||
// 802.11 counter
|
// 802.11 counter
|
||||||
|
@ -247,7 +246,7 @@ typedef struct tagSDot11MIBCount {
|
||||||
u32 ReceivedFragmentCount;
|
u32 ReceivedFragmentCount;
|
||||||
u32 MulticastReceivedFrameCount;
|
u32 MulticastReceivedFrameCount;
|
||||||
u32 FCSErrorCount;
|
u32 FCSErrorCount;
|
||||||
} SDot11MIBCount, *PSDot11MIBCount;
|
} __packed SDot11MIBCount, *PSDot11MIBCount;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -355,13 +354,13 @@ typedef struct tagSStatMIBCount {
|
||||||
u32 ullTxBroadcastBytes[2];
|
u32 ullTxBroadcastBytes[2];
|
||||||
u32 ullTxMulticastBytes[2];
|
u32 ullTxMulticastBytes[2];
|
||||||
u32 ullTxDirectedBytes[2];
|
u32 ullTxDirectedBytes[2];
|
||||||
} SStatMIBCount, *PSStatMIBCount;
|
} __packed SStatMIBCount, *PSStatMIBCount;
|
||||||
|
|
||||||
typedef struct tagSCmdValue {
|
typedef struct tagSCmdValue {
|
||||||
|
|
||||||
u32 dwValue;
|
u32 dwValue;
|
||||||
|
|
||||||
} SCmdValue, *PSCmdValue;
|
} __packed SCmdValue, *PSCmdValue;
|
||||||
|
|
||||||
//
|
//
|
||||||
// hostapd & viawget ioctl related
|
// hostapd & viawget ioctl related
|
||||||
|
@ -431,7 +430,7 @@ struct viawget_hostapd_param {
|
||||||
u8 ssid[32];
|
u8 ssid[32];
|
||||||
} scan_req;
|
} scan_req;
|
||||||
} u;
|
} u;
|
||||||
};
|
} __packed;
|
||||||
|
|
||||||
/*--------------------- Export Classes ----------------------------*/
|
/*--------------------- Export Classes ----------------------------*/
|
||||||
|
|
||||||
|
|
|
@ -67,12 +67,11 @@ enum {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#pragma pack(1)
|
|
||||||
typedef struct viawget_wpa_header {
|
typedef struct viawget_wpa_header {
|
||||||
u8 type;
|
u8 type;
|
||||||
u16 req_ie_len;
|
u16 req_ie_len;
|
||||||
u16 resp_ie_len;
|
u16 resp_ie_len;
|
||||||
} viawget_wpa_header;
|
} __packed viawget_wpa_header;
|
||||||
|
|
||||||
struct viawget_wpa_param {
|
struct viawget_wpa_param {
|
||||||
u32 cmd;
|
u32 cmd;
|
||||||
|
@ -113,9 +112,8 @@ struct viawget_wpa_param {
|
||||||
u8 *buf;
|
u8 *buf;
|
||||||
} scan_results;
|
} scan_results;
|
||||||
} u;
|
} u;
|
||||||
};
|
} __packed;
|
||||||
|
|
||||||
#pragma pack(1)
|
|
||||||
struct viawget_scan_result {
|
struct viawget_scan_result {
|
||||||
u8 bssid[6];
|
u8 bssid[6];
|
||||||
u8 ssid[32];
|
u8 ssid[32];
|
||||||
|
@ -130,7 +128,7 @@ struct viawget_scan_result {
|
||||||
int noise;
|
int noise;
|
||||||
int level;
|
int level;
|
||||||
int maxrate;
|
int maxrate;
|
||||||
};
|
} __packed;
|
||||||
|
|
||||||
/*--------------------- Export Classes ----------------------------*/
|
/*--------------------- Export Classes ----------------------------*/
|
||||||
|
|
||||||
|
|
|
@ -406,7 +406,7 @@ int prism2mgmt_scan_results(wlandevice_t *wlandev, void *msgp)
|
||||||
/* SSID */
|
/* SSID */
|
||||||
req->ssid.status = P80211ENUM_msgitem_status_data_ok;
|
req->ssid.status = P80211ENUM_msgitem_status_data_ok;
|
||||||
req->ssid.data.len = le16_to_cpu(item->ssid.len);
|
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);
|
memcpy(req->ssid.data.data, item->ssid.data, req->ssid.data.len);
|
||||||
|
|
||||||
/* supported rates */
|
/* supported rates */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue