Commit Graph

72424 Commits

Author SHA1 Message Date
Mukul Sharma
9f4dcdc973 qcacld-3.0: Fix defects detected by Static code analyser
qcacld-2.0 to qcacld-3.0 propagation

Static code analyser detects uninitialized pointer/structure
access and dereferencing a pointer without null check.
As part of this fix host will initialize pointer/structure before
accessing it and put a null check for pointer access.

Change-Id: I5647b36a6ba0e84354d39799bf68a28df633cf20
CRs-Fixed: 836071
2015-11-22 14:41:13 -08:00
Mukul Sharma
531361dfea qcacld-3.0: Do not Update MC list in ftm mode
qcacld-2.0 to qcacld-3.0 propagation

Host should avoid to Update MC list in ftm mode because
as a part of MC list updation, host will access the
pMac roam sessions, as these sessions are not initialized
in FTM mode which lead to Null data access.

Change-Id: I2ac82e76c1c7de8d1bf0fd7e291bf5445e9d0f4b
CRs-fixed: 897871
2015-11-22 14:41:13 -08:00
Mukul Sharma
910bb98ca8 qcacld-3.0: Check privilege permission for SET_VAR_INTS_GETNONE
qcacld-2.0 to qcacld-3.0 propagation

Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing SET_VAR_INTS_GETNONE, making
sure user task has right permission to process the command.

Change-Id: Icbdfe69c18c1ab3b75d63e046d5251307a794817
CRs-Fixed: 930942
2015-11-22 14:41:13 -08:00
Mukul Sharma
72ed1edcaa qcacld-3.0: Check privilege permission for QCSAP_IOCTL_SETWPSIE
qcacld-2.0 to qcacld-3.0 propagation

Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing QCSAP_IOCTL_SETWPSIE IOCTL,
making sure user task has right permission to process the command.

Change-Id: Ie1c945afb0f109892beda66bab25647d70cc62d7
CRs-Fixed: 930944
2015-11-22 14:41:12 -08:00
Mukul Sharma
711b9fa512 qcacld-3.0: Check priviledge permission for SET_BAND_CONFIG IOCTL
qcacld-2.0 to qcacld-3.0 propagation

Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing SET_BAND_CONFIG IOCTL, making
sure user task has right permission to process the command.

Change-Id: Ie8a36bfa07a7b21601364b27b3c4bc888a6a5b4e
CRs-Fixed: 930952
2015-11-22 14:41:12 -08:00
Mukul Sharma
535fc9960d qcacld-3.0: Handle excessive logging during hostap select queue
qcacld-2.0 to qcacld-3.0 propagation

As a part of unload hdd is stopping the netdev queue.
But still N/W layer 3 is calling the select queue netdev
ops, where error print for sap context is Null appears
excessively.
As a part of this fix hostap select queue need to validate
Hdd context to take care of SSR and load / unload cases.

Change-Id: Id6d93a3a83de7d95a283ff57b6fa2c44f08a9ee3
CRs-Fixed: 857220
2015-11-22 14:41:12 -08:00
Abhishek Singh
77ec98c2f9 qcacld-3.0:IBSS:Update HT secondary channel offset from beacon in pStaDs
qcacld-2.0 to qcacld-3.0 propagation

While adding pStaDs for IBSS when peer beacon is received, HT
secondary channel offset is not copied from beacon. This leads to
false change capability indication while processing the same beacon
and thus update cb mode is sent with staid 255(default),
leading to crash.

Update HT secondary channel offset from beacon and add a check in
cbmode update to ignore update if staid is 255.

CRs-Fixed: 885747
Change-Id: I66dedb38aadde473b99b2f8fc4a7a9b855a10b2a
2015-11-22 14:41:12 -08:00
Edhar, Mahesh Kumar
7cbbe59672 qcacld-3.0: Optimize processing of DFS phy events
qcacld-2.0 to qcacld-3.0 propagation

Optimize by avoiding processing of DFS phy events in below scenario's

1)Once radar indication given to UMAC.
2)Vdev restart in SAP interface

Change-Id: Ib175feed4a611a5c7185202e3d50abc3e84fc781
CRs-Fixed: 910586
2015-11-22 14:41:12 -08:00
Edhar, Mahesh Kumar
952ec474d8 qcacld-3.0: synchronize concurrent access of shared variable
qcacld-2.0 to qcacld-3.0 propagation

Currently DFS variables are accessed in different context without
protection leading to NULL pointer dereferences.

Ensure lock is taken before accessing the DFS shared variable.

Change-Id: Ie78dd50ff4b32ef52f78e2944d175a6c10577882
CRs-Fixed: 910586
2015-11-22 14:41:12 -08:00
Yue Ma
c5535fcf15 qcacld-3.0: Do not update WLAN status to LPASS when disconnect during unload
qcacld-2.0 to qcacld-3.0 propagation

Host driver updates WLAN status to LPASS with connected false and WLAN on
when disconnection happens. Host driver also updates WLAN status right
after driver unload is triggered with connected false and WLAN off. There
is a scenario that disconnection callback comes during driver unloading
which causes LPASS misbehavior. Fix this by only updating disconnection
status to LAPSS when driver is not unloading.

Change-Id: Ie72ba094283a64c06e8c74523314d6de92a0f08b
CRs-fixed: 928365
2015-11-22 14:41:12 -08:00
Yue Ma
d8ed108d14 qcacld-3.0: Increase SSR timeout to 30 seconds
qcacld-2.0 to qcacld-3.0 propagation

Increase SSR timeout from 15 seconds to 30 seconds in order to handle
some corner cases which may cause SSR to take longer time. E.g. CPU is
busy/stuck with other tasks.

Change-Id: I6837f2d5e87090ede15e514d1c4f978d34931f32
CRs-fixed: 927722
2015-11-22 14:41:12 -08:00
Yue Ma
b9ea56ed9e qcacld-3.0: Modify bus bandwidth vote criterion
qcacld-2.0 to qcacld-3.0 propagation

If total TX/RX packets are less than bus bandwidth low threshold, there
is no need to vote separately from WLAN side.

Change-Id: I02284d035e58471b3933a84c778d4d44bd6b19ba
CRs-fixed: 918723
2015-11-22 14:41:12 -08:00
Yue Ma
b6fcc9fb6a qcacld-3.0: CL 1359727 1369758 - update fw debug log file
qcacld-2.0 to qcacld-3.0 propagation

- ADD dbglog IDs for WMI TLV parsing.
- Add ROAM_STA_KICKOUT_RECV dbglog ID.

Change-Id: I3fdae0def4a99f75bbe9a8d772d7a61fa10ee7d5
CRs-fixed: 908561
2015-11-22 14:41:12 -08:00
Yue Ma
ba532aaaf0 qcacld-3.0: Ignore VOS_BUG if recovery is already going on during suspend
qcacld-2.0 to qcacld-3.0 propagation

There is no need for host driver to do VOS_BUG if FW has already requested
recovery during suspend.

Change-Id: I0c77210316fea978fe686201f42b9501612e9a1e
CRs-fixed: 904909
2015-11-22 14:41:12 -08:00
Yue Ma
4d366ff94d qcacld-3.0: Recover if fail to receive HTC ACK from FW for PDEV suspend
qcacld-2.0 to qcacld-3.0 propagation

If self-recovery is enabled in ini file, recover if host driver fails to
receive HTC ACK from FW for PDEV suspend, otherwise do VOS_BUG.

Change-Id: Ieddb22c5806067ec1a1166b60e1642e6cdf74a4c
CRs-fixed: 894187
2015-11-22 14:41:12 -08:00
Yue Ma
020896275e qcacld-3.0: Fix several SSR related issues
qcacld-2.0 to qcacld-3.0 propagation

- Kill wlan_tasklet before freeing TLshim free queue. This can avoid
  race condition between SSR and wlan_tasklet which is still processing
  Rx packets in the case of self-recovery when FW doesn't really crash.

- In additional to connected state, add disconnected/disconnecting states
  to send notification to supplicant for re-issuing connect after SSR.
  This is to avoid corner cases that while FW crashes, disconnection is
  happening or disconnection fails because of FW crash, the HDD state is
  changed from connected to disconnecting/disconnected.

Change-Id: I8ff295a443e946e8775354dcf4331ad024776cb7
CRs-fixed: 899479
2015-11-22 14:41:12 -08:00
Prakash Dhavali
7090c5fd8d qcacld-3.0: Initial snapshot of ihelium wlan driver
qcacld-3.0: Initial snapshot of ihelium wlan driver
to match code-scanned SU Release 5.0.0.139. This is
open-source version of wlan for next Android release.

Change-Id: Icf598ca97da74f84bea607e4e902d1889806f507
2015-11-17 17:52:53 -08:00
Prakash Dhavali
d5c9f1c70d qcacld-3.0: Initial snapshot of ihelium wlan driver
qcacld-3.0: Initial snapshot of ihelium wlan driver
This is SU Release 5.0.0.139.

Change-Id: Icf598ca97da74f84bea607e4e902d1889806f507
2015-11-08 19:04:44 -08:00
nxpandroid
f3fca28a9a Updated I2C Driver with Power Management Changes 2015-06-22 17:11:10 +05:30
Sunil Jogi
915fb00cfc Adding Makefile and Kconfig. 2015-04-22 14:02:32 -07:00
nxpandroid
2f5a46733e Updated name of included header 2015-04-22 19:35:45 +05:30
nxpandroid
b0f6048082 Initial I2C Driver Commit for opensource 2015-04-21 14:54:58 +05:30
nxpandroid
69f10430b5 Initial commit 2015-04-21 13:21:24 +05:30
Prakash Dhavali
8508e16801 Initial readme for WLAN Host Driver for iHelium
Initial readme for WLAN Host Driver for iHelium

Change-Id: Iab1f96e54881d3efa5c80b47d0772fa05d2ddcb7
2015-04-06 11:45:23 -07:00