Commit Graph

1746 Commits

Author SHA1 Message Date
Sourav Mohapatra
ffbd027f6b qcacld-3.0: Refactor HDD callers as per changes to cdp_clear_peer
Currently, the cdp API cdp_clear_peer takes as input the sta_id. As a
part of cleaning up the usage of sta_id, replace it by peer mac address.

Change-Id: I4f8bee21ae42d8c9929da8fe2fcfa534778647ed
CRs-Fixed: 2503139
2019-08-13 04:17:08 -07:00
Alan Chen
32c6048ab6 qcacld-3.0: Abort system suspend when idle restart occurs
Wifi turn-on will timeout and fail if system suspend occurs during idle
restart. To solve this, abort system suspend during idle restart.

Change-Id: I0a4a1fc9525b5fb19f51a289ca0b8a76c73038e6
CRs-Fixed: 2506716
2019-08-11 02:11:31 -07:00
Sourav Mohapatra
24f0ae41f6 qcacld-3.0: Remove unused function hdd_get_peer_idx
Currently the function hdd_get_peer_idx is not being called from
anywhere. As the use of sta_id is being depreceted, the function can be
safely removed.

Clean up the unused function.

Change-Id: I6896d03ad2e8b427147e2259b737836cd3f44ca0
CRs-Fixed: 2484699
2019-08-09 02:50:07 -07:00
wadesong
c48ea29e3d qcacld-3.0: Remove channel from struct hdd_mon_set_ch_info
1) Remove channel from struct hdd_mon_set_ch_info. All client
   code will use freq within the same struct from now on.

2) Replace the usage of channel ID(op_chan) with channel
   frequency(op_freq) in function hdd_mon_select_cbmode's
   parameter list.

3) Fix a number of camel cases detected in function
   hdd_select_cbmode.

Change-Id: Ib7c1ee453b34647e983749a713b33017b92103ac
CRs-Fixed: 2504779
2019-08-08 09:52:40 -07:00
Sravan Kumar Kairam
777a7dde6e qcacld-3.0: Start bus bw computer timer for NAN
Currently for NDI interface bus bandwidth timer is not
started. As part of this change start the timer when new
ndp peer is created and stop the timer when last ndp peer
connected is deleted.

Change-Id: Ia710ec9872636ee3cefa30815692c2f8c9816687
CRs-Fixed: 2499548
2019-08-06 10:16:14 -07:00
gaurank kathpalia
cdc3b574d1 qcacld-3.0: Modify NUD tracking ini for disconnect/roam
Modify the nud tracking ini so that the driver
does a disconnection/roaming after NUD failure
is detected.
According to the ini specified, the driver would
either disconnect or do roaming.

Change-Id: I6af1c819322a702605d92ada735298a124127533
CRs-Fixed: 2497153
2019-08-05 10:55:40 -07:00
Paul Zhang
9d117c8b85 qcacld-3.0: Replace channel with channel frequency
Replace pre_cac_chan with pre_cac_freq and mon_chan
with mon_chan_freq in struct hdd_adapter.

Change-Id: I413ff83c244e1ebb7deaa2dec52df76b4b957f53
CRs-Fixed: 2496812
2019-08-02 00:43:41 -07:00
Paul Zhang
427962da57 qcacld-3.0: Replace chan with chan_freq
Replace chan with chan_freq in hdd_chan_change_params.

Change-Id: I6e3b4de0e1322cb35500aa86fa4119c60faee36e
CRs-Fixed: 2496790
2019-08-02 00:43:32 -07:00
Nirav Shah
a43f6dc3cf qcacld-3.0: Featurize DHCP indication for SAP
Featurize DHCP indication for SAP and disable it
for QCN7605 as this feature is broken for HL
Data Path.

Change-Id: If1db649131d887a2aab18461187403b4b9a2c5b4
CRs-Fixed: 2496032
2019-08-01 00:02:17 -07:00
wadesong
59e727ce43 qcacld-3.0: Add channel frequency into struct hdd_mon_set_ch_info
Add channel frequency(freq) into struct hdd_mon_set_ch_info and
populate its value where channel in the same structure is
populated.

Remove a few camel cases detected by checkpatch.

Change-Id: I5f0d64a88c054476739bc06887bffd37238b10fc
CRs-Fixed: 2496707
2019-07-29 13:46:42 -07:00
Ashish Kumar Dhanotiya
64b3fa9645 qcacld-3.0: Fix memory leak in driver dump
Currently when driver gets a command to dump the
driver info, it allocates the memory and retrieves
the information in that allocated memory. Maximum data
that can be copied to user space buffer is equal to
one PAGE_SIZE. In the command driver gets the size of
the data which user space wants to read, minimum of the
user space requested size or one PAGE_SIZE of the data
is copied to user space buffer and current position of
the driver buffer till which the data is copied is
updated to user space is also updated.

Driver copies the retrieved information to the user
space buffer as explained above and updates the position
pointer to the user space. In the next request driver
expects from user space to request the remaining data
from the updated position in last request, once all the
data is copied to user space, driver frees internally
allocated memory.

In case if driver does not get the request to read
remaining data after first request, it does not free
the memory. Current handling of this memory is done
in init domain after stop modules, but since this
memory is allocated in active domain, driver should free
the memory in active domain.
Since with current implementation memory allocated in
active domain is not freed in active domain, memleak is
getting detected.

To resolve above issue, move mem cleanup logic for
driver dump info command from init domain to active domain in stop
modules.

Change-Id: Idb4f35f0a599ad55eebe13348b68562fa401fd7e
CRs-Fixed: 2489877
2019-07-29 11:23:03 -07:00
Min Liu
00956e8408 qcacld-3.0: Replace channel with freq in hdd_context
Replacing channel with freq in the following structures:

hdd_context: last_acs_channel_list -> last_acs_freq_list
sap_context: channelList -> freq_list
sap_acs_scan_complete_event: channellist -> freq_list

Change-Id: If04ba42831b5134952e0d71a18b207d0a6f3c5b2
CRs-Fixed: 2497615
2019-07-29 09:55:25 -07:00
hqu
28f68df635 qcacld-3.0: Remove void pointer usage for part of DP code
Add code to use cdp_vdev instead of void pointer for
txrx_vdev and ol_tx_data.

Change-Id: I3d3b7cc8012981a7c883c8113d88fa387711d41e
CRs-Fixed: 2483388
2019-07-27 13:42:14 -07:00
Jeff Johnson
8e9b88529a qcacld-3.0: Remove obsolete bExplicitCfg bitmap
The bExplicitCfg bitmap in struct hdd_config was originally used to
track which INI items had been explicitly configured from the INI
file. But now that the INI processing is distributed this bitmap is no
longer used, so remove it.

Change-Id: I101ffa82b3309209cdc2eea954d1467b68b6138d
CRs-Fixed: 2496393
2019-07-26 21:21:19 -07:00
Rakshith Suresh Patkar
db53c8f047 qcacld-3.0: Add new HDD callback for dp RX MIC error
As per existing design, dp rx mic error information is
posted to HDD via SME. HDD inturn indicates the mic error
to supplicant.

Define new HDD callback hdd_rx_mic_error_ind for
rx mic error, registered through the CDP API
cdp_register_rx_mic_error_ind_handler. This will
enable datapath to directly post mic error info to HDD,
eliminating processing by corestack.

Change-Id: I6561dc5e66e7059c249c1eeeabdbf754989221d2
CRs-Fixed: 2488455
2019-07-22 11:36:15 -07:00
Alan Chen
5b19c21c72 qcacld-3.0: Prevent suspend to allow for wifi to turn off
When wifi is turned off, system suspend might occur during the timer delay,
which would stop the timer and prevent wifi from being turned off, leading
to battery drain. To fix this issue, prevent the suspend and turn off the
wifi before allowing suspend to happen.

Change-Id: Id4fbb13f3ab350b4e2545f65e38d9baaba5ed7ab
CRs-Fixed: 2493487
2019-07-19 21:49:47 -07:00
Alan Chen
e523cd9f23 qcacld-3.0: Add lock/unlock for idle restart to prevent suspend
During idle restart, system suspend is happening, which is leading
to timeout because idle restart task is frozen during system suspend.
To avoid the timeout, add a wakelock for idle restart to prevent
system suspend.

Change-Id: Iffb6151452680df8cb4fb98e8646112e780881f8
CRs-Fixed: 2490321
2019-07-18 16:45:25 -07:00
Mohit Khanna
6dbf9c8301 qcacld-3.0: Add BW level PLD_BUS_WIDTH_VERY_HIGH
Add additional bandwidth level for "very high" bandwidth. As per the
default configuration if the total number of tx/rx packets exceeds
bus_bw_very_high_threshold, the bus bandwidth requirement is designated
as PLD_BUS_WIDTH_VERY_HIGH and PLD API is called with this value.

Default value of 7000 is chosen for bus_bw_very_high_threshold, which
amounts to 820Mbps of throughput considering a 1500 byte packet and
100ms bandwidth timer interval.

Change-Id: I3bd904429a02ec4935ba12da7c2cfd37eec738ed
CRs-Fixed: 2489362
2019-07-18 09:16:10 -07:00
Qun Zhang
a055e9cb3b qcacld-3.0: Align the output of getChannelList under sta/hostapd mode
As requirement, it's also needed to print country code in iwpriv
getChannelList under hostapd mode, align the output of getChannelList
in sta/hostapd mode. At the same time, in __iw_get_channel_list(),
the wrqu->data.length should be (the actual channel number+1), not
sizeof(struct channel_list_info), otherwise there would be many
zeros if call iw_get_channel_list() directly.

Change-Id: I1e0fc1a026bf6c3fff2947ab4712a1800214ec0c
CRs-Fixed: 2476458
2019-07-18 01:07:11 -07:00
Paul Zhang
da2970b777 qcacld-3.0: Add OEM DATA vendor command support
This command is used to send OEM data binary blobs
from application/service to firmware.

Change-Id: I0b5d7dd5a030b70e59c8581fb51d99079b38385f
CRs-Fixed: 2477332
2019-07-11 00:52:04 -07:00
Ashish Kumar Dhanotiya
eadb28bbdc qcacld-3.0: Add support for updated FW version
FW version information which driver used to get
is updated to add release branch version also.
To give that information to userspace, parse the
release branch information also from the extended
FW version.

Change-ID: I45d06bac5ef0e57d1db8dbfe7ff6a0d7e2144b88
CRs-Fixed: 2482835
2019-07-05 10:26:24 -07:00
Ashish Kumar Dhanotiya
30ec2959d5 qcacld-3.0: Remove legacy congestion stats implementation
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for congestion stats command
as part of cleanup.

Change-Id: Ia8b919ad7cea4f47d5480b9f8e0f4636783ce6c3
CRs-Fixed: 2480246
2019-06-29 10:56:46 -07:00
Yeshwanth Sriram Guntuka
9d7b25a072 qcacld-3.0: Update default value of force max nss action OUI ini
Update default value of force max nss action OUI ini
to include AP that advertises rx nss as 1 before
connection and advertises rx nss as 4 in association
response and in beacons or probe responses immediately
after connection.

Change-Id: Ica6314547a2aa39d4887ac4231745d6a59cd6b0a
CRs-Fixed: 2466562
2019-06-20 11:59:48 -07:00
Ashish Kumar Dhanotiya
34507e052f qcacld-3.0: Update correct wiphy band capabilities
Driver is updating wiphy band capabilities incorrectly as
it is always updating 2G band as always supported, in case
if 2G band is disabled from ini "BandCapability", driver
should not update 2G band capabilities to wiphy.

To avoid above issue, add a api to check if 2G band is
supported and then only update 2G band capabilities to
wiphy.

Change-Id: Ib921fa106158d93bfdb7aa57cfd5aa4370fab7d8
CRs-Fixed: 2470067
2019-06-19 16:46:21 -07:00
Tiger Yu
e40e7836a5 qcacld-3.0: Add support for TCP delayed ack in driver
qcacld-2.0 to qcacld-3.0 propagation

This change adds support for driver supported TCP
delayed ack to increase TCP RX performance in
third-party platform which does't support kernel
TCP delayed ack feature.

TCP delayed ack is dependent on count and timer
values. Whatever is achieved first will trigger
sending TCP ack.

This feature can be controlled through ini values.
gDriverDelAckTimerValue - timer value in ms
gDriverDelAckPktCount - delayed ack count
gDriverDelAckEnable - enable/disable feature

Change-Id: I8105bbb90965295b5a4aefeb00d344a90155974d
CRs-fixed: 2414224
2019-06-18 22:27:35 -07:00
Abhinav Kumar
e85ae55537 qcacld-3.0: Handle BEACON_REPORTING_DO_NOT_RESUME vendor attribute
Optionally set by userspace to request the driver not to resume
beacon reporting after a pause is completed, when the
QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_OP_TYPE is set to
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START.

If this flag is set, the driver will not resume beacon reporting
after beacon reporting pause is completed. Userspace has to
send QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command again in order
to initiate beacon reporting again.

If this flag is set in the recent
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command, then in the
subsequent QCA_WLAN_VENDOR_BEACON_REPORTING_OP_PAUSE event (if any)
the QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_AUTO_RESUMES shall not be
set by the driver.

Change-Id: I371a218cb513dcb077b7df675c549818c2b657b2
CRs-Fixed: 2466480
2019-06-18 07:51:15 -07:00
Abhinav Kumar
8475bc3f61 qcacld-3.0: Allow fw to send all beacons of connected AP
In order to process QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING
vendor command, driver sends remove beacon filter cmd to fw to
allow fw to send all beacons of connected AP to driver.
But in some cases fw may wakeup host in wow mode.
To avoid these cases, with this change beacon reporting feature
will use WMI_VDEV_PARAM_NTH_BEACON_TO_HOST
command to FW instead of WMI_RMV_BCN_FILTER_CMDID
With WMI_VDEV_PARAM_NTH_BEACON_TO_HOST, in case of active reporting,
fw should send all beacons of connected AP to HOST
and also no wakeup of driver should happen in wow mode.

Change-Id: I9d0e255a6d4accb523bf4613146574239e7e0d09
CRs-Fixed: 2471627
2019-06-18 07:51:10 -07:00
guangde
4853c40d31 qcacld-3.0: Add get antenna isolation command
Propagation from qcacld2.0 to qcacld3.0.
The WMI CMD and EVENT of "get antenna isolation" are already defined,
but not used before in qcacld3.0.
Now, The host driver uses vendor command to get this information
instead of iwpriv command in qcacld-2.0.
The attribution of this feature is already defined in file
"qca_vendor.h". The name is "QCA_WLAN_VENDOR_ATTR_ANTENNA_ISOLATION".
So host driver will use vendor command
"QCA_NL80211_VENDOR_SUBCMD_GET_HW_CAPABILITY" to get the information
from lower layer.

Change-Id: I915768f622ddc9a70a95ce4fe952f19917a8f901
CRs-Fixed: 2447360
2019-06-14 01:49:41 -07:00
hangtian
b9c9136eaf qcacld-3.0: Fix QCA_LL_PDEV_TX_FLOW_CONTROL invalid memory access
Add QCA_LL_PDEV_TX_FLOW_CONTROL for both
QCA_LL_LEGACY_TX_FLOW_CONTROL and QCA_LL_TX_FLOW_CONTROL_V2
disabled platform, avoid frame drop in driver which leads to bad TCP
TX throughput. Change NUM_TX_QUEUES to 5 for this case to avoid invalid
memory access in wlan_hdd_netif_queue_control().

Change-Id: Ifa649e31a41d1bf89eadc8cc7e9520f0e27b9fe4
CRs-Fixed: 2466996
2019-06-13 04:10:25 -07:00
Nirav Shah
0b33219e88 qcacld-3.0: Add logging macros without function/line info
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.

Change-Id: I0bd9248122b4f49274ee05a225ce6f880fede0cb
CRs-Fixed: 2468414
2019-06-11 17:37:28 -07:00
Pragaspathi Thilagaraj
7a1a08e6b6 qcacld-3.0: Replace typedef eCsrAuthType
eCsrAuthType is the enum of AKMs to be used during connection.
So the name eCsrAuthType is misleading as akm and auth algo are
different.
Also the Linux Coding Style doesn't allow mixed-case names and
so-called Hungarian notation, so rename the enum eCsrAuthType to
be compliant.

Change-Id: I35e18d1f84babd0ef2928ae9d7258028d4c9b3c5
CRs-Fixed: 2463813
2019-06-08 06:29:25 -07:00
Yeshwanth Sriram Guntuka
22ed80066a qcacld-3.0: Advertise max NSS capability with few IOT APs
Few IOT APs advertise reduced NSS capabilities on ending
up in bad state. These APs can later recover to support
the actual NSS capabilities. In this scenario, when STA
initiates connection to these APs, which are in bad state,
reduced NSS capabilities is advertised. STA cannot later
upgrade NSS capabilities to the minimum of STA max NSS
capability and APs actual NSS capability, once AP recovers.

Fix is to advertise max NSS capability during connection
with these IOT APs based on vendor OUIs and downgrade if
AP still advertises reduced NSS capability in association
response.

Change-Id: I49ea13534b1a44fd9ffadd1e8fb44e9d782147c4
CRs-Fixed: 2453938
2019-05-31 05:17:09 -07:00
Vevek Venkatesan
3b6be82e9b qcacld-3.0: abstract Linux identifiers from IPA component
Abstract Linux based OS identifiers from IPA component in
HDD/OSIF layer.

Change-Id: I82a5db8c796d47d552757b1a450df10c72061177
2019-05-31 02:29:49 -07:00
Yeshwanth Sriram Guntuka
a5af4491d5 qcacld-3.0: Modify default value for switch to 11n action OUI ini
The current default value for gActionOUISwitchTo11nMode ini
leads to forcing 11n connection with vendor APs which don't
require the WAR.

Fix is to update the default value of the ini to restrict
the WAR to appropriate vendor AP.

Change-Id: Ia148da288ee16a62a8b32e54b1801bb9d19031e2
CRs-Fixed: 2461414
2019-05-30 19:29:30 -07:00
Vevek Venkatesan
78f7f09a57 qcacld-3.0: fix CFI failure by abstracting the callback
Abstract the callback hdd_softap_ipa_start_xmit by
hdd_softap_ipa_start_xmit, to match the return type of
wlan_ipa_softap_xmit pointer, to fix a CFI failure.

Change-Id: If1cb1a80801558d5c7831ec89ad5281b0bbe36f3
2019-05-28 08:19:59 -07:00
Jiani Liu
6d3b6a16ab qcacld-3.0: Add PTP timestamp socket options TX support
Host need to fill netbuf with qtime instead of tsf. So
host need to add tsf64 enable/disable related functions
and definitions to sync with FW.

The tsf64_time is new added to fw/host structure, so host
need to add parse functions to get tsf64_time from tx_desc.

Change-Id: Ieea0d8f905eb57629d279f8da0e811857b760b1f
CRs-Fixed: 2444456
2019-05-23 22:57:27 -07:00
Abhinav Kumar
392221599a qcacld-3.0: Process vendor cmd for BEACON_REPORTING_OP_STOP
Userspace request driver to report details of each beacon
received whose bssid is same as currently connected BSS's
mac address. The driver encapsulates the details of these
beacons as an asynchronous event within vendor command:
QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING with operation
type QCA_WLAN_VENDOR_BEACON_REPORTING_OP_STOP until
userspace requests to stop sending beacons.

When driver gets stop indication from userspace, it does
the following things:
1. De-register all callback which is registered while handling
start indication
2. Add beacon filter and send it to fw

If driver is in WOW mode and WMI_ADD_BCN_FILTER_CMDID is
NOT configured, fw wakeup HOST and sends connected AP beacon.
Fw should not wakeup host if host is in wow mode. In order
to support this, configure WOW_BEACON_EVENT for STA and P2P.

Change-Id: Ie7c768fa957d02e1361e1ecb95435ba3f06034b0
CRs-Fixed: 2431360
2019-05-23 09:30:32 -07:00
Jiani Liu
a8fd170e7a qcacld-3.0: Add PTP timestamp socket options RX support
Host need to fill netbuf with qtime instead of tsf. So host first
need to set enable_ppdu_end to 1, so that FW will pass ppdu_end
contents to host, and host can translate tsf64_time into qtime.
The tsf64_time is new added to fw struture, so host will need
add it accordingly to struct hdd_adapter, and keep it updated
in time synchronization function <hdd_update_timestamp>.

Change-Id: Ib19ac1411c4e17624c012f188297c9f2122642d2
CRs-Fixed: 2444456
2019-05-21 16:45:09 -07:00
Wu Gao
8dd9f50552 qcacld-3.0: Add INI to set module log level
All INI configuration about modules log level which removed in
previous change "Change-Id: I9c519cf2509e3dc22282f0c7ea6f52cbd2913ccd",
add one INI item for log level of all modules.

Change-Id: Icaedb6bd61a18a81cea9e75e076fe64b11e5bde0
CRs-Fixed: 2442788
2019-05-20 22:15:41 -07:00
Rajeev Kumar Sirasanagandla
01d49efc8a qcacld-3.0: Fix missing gActionOUIConnect1x1 entry
Action OUI entry in gActionOUIConnect1x1 which was added as a part of
Idc0f3238e3521bb20c592b44de77216125e69504 was missed in the ini
convergence I6984096719a5abd7fa4f0a4f6641a17d29348332.

To fix this, add action_oui entry "001018 06 02FF009C0000 BC 25 48"
in gActionOUIConnect1x1.

Change-Id: Id8dcf2a21409bedbaecd0ab72ecca8d44a622c86
CRs-Fixed: 2452506
2019-05-16 12:43:06 -07:00
Mohit Khanna
a8c9f569ea qcacld-3.0: INI support for RX softirq time limit
Add changes to configure params for RX softirq time limit feature via
INI file.

Change-Id: I714a64e3d4ba7f094a81b4d11dab9bc63c7ee2de
CRs-Fixed: 2423622
2019-05-14 18:39:43 -07:00
Rajeev Kumar
473f9afe2a qcacld-3.0: Serialize psoc idle shutdown and restart via PLD
Serialize psoc interface inactivity idle shutdown and restart via PLD
such that platfrom driver can serialize psoc idle shutdown and restart
to driver unload and SSR events to avoid any race conditions.

Change-Id: Ibac40158ad5b94468b09c53eaf7f3d9a3cb8badf
CRs-Fixed: 2430868
2019-05-13 03:31:17 -07:00
Abhinav Kumar
4d1f9f442d qcacld-3.0: Send connected AP beacon data to userspace
Once driver gets QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING vendor
command with an attribute for start, firmware sends all
beacons to host for the connected peer. Host extract required info
(SSID, BSSID, Channel number, Beacon Interval, Timestamp, System
timestamp) from incoming beacon for connected AP and sends it to
userspace. Userspace needs this data for WIPS.

Change-Id: I9d6dd068a076bda79881043946be3133ee87fe84
CRs-Fixed: 2431354
2019-05-10 19:07:01 -07:00
Abhinav Kumar
dbbfd2c3ff qcacld-3.0: Support asynchronous beacon reporting feature
Add new vendor cmd : QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING.
This subcommand is used to implement asynchronous beacon
reporting feature. Userspace can request driver/firmware to
report details of each beacon received whose bssid is same as
currently connected BSS's mac address. The driver will encapsulate
the details of these beacons as an asynchronous event within this
command id until userspace requests to stop sending beacons.

Change-Id: I9a32fe5431767b077983c7db90a2f825709f368c
CRs-Fixed: 2431351
2019-05-10 19:06:56 -07:00
Rajeev Kumar
3a7c3400aa qcacld-3.0: Add an ini item to disable wow feature
WoW feature may need to be disabled for certain targets
hence add an INI item gDisableWow to disable wow feature
for all modes.

Change-Id: I0f79731a750c9d759bcd5593f11a740572e9d4ad
CRs-Fixed: 2446226
2019-05-03 05:45:13 -07:00
Rajeev Kumar Sirasanagandla
e709bca3e5 qcacld-3.0: Add rx rate info in connect_info debugfs
Currently in connect_info debugfs file, only tx rate info is presented.

Add rx_bit_rate to present rx rate info.

Change-Id: I24ceb287880a60896b49b69d40646b549fd9a3d1
CRs-Fixed: 2440285
2019-05-02 03:09:04 -07:00
Pragaspathi Thilagaraj
c248c9e3ae qcacld-3.0: Cleanup legacy ini x-macro and parsing infra in HDD
Before CFG/INI convergence to the new cfg module, hdd maintained
the infrastructure to parse ini items from WCNSS_qcom_cfg.ini and
push the value to hdd_config members. With all the cfg/ini moved
to the new converged CFG component, this infra is not required.

So cleanup the legacy ini infrastructure in HDD.

Change-Id: Ia028edd10682a0ac8ed6a663c20ba5f67b962f1d
CRs-Fixed: 2445314
2019-05-02 01:24:50 -07:00
Ashish Kumar Dhanotiya
9549818d86 qcacld-3.0: Add ini support for SAR version
Currently SAR feature version is decided based on
feature flag WLAN_FEATURE_SARV1_TO_SARV2, if this
flag is enabled SAR version 2 is used.
Add an ini support to specify the SAR version.

Change-Id: Ib3ac8a3e7320d3e7f303ae14828d2b0428ca2993
CRs-fixed:
2019-05-01 10:18:23 -07:00
Ashish Kumar Dhanotiya
9d9816952c qcacld-3.0: Add support to cache peer rssi and mc_bc count
Use updated cp stats component to get peer rssi and tx rate,
rx rate for big data logging as legacy infrastructure is
deprecated.
Additionally add support for RX multicast broadcast packets from FW.

Change-Id: Idcab4a022a4e7e34bd15878f95ad8248ca3aa9dd
CRs-fixed: 2428582
2019-05-01 10:18:15 -07:00
Yu Wang
7d866f6906 qcacld-3.0: add build flag DYNAMIC_SINGLE_CHIP
Introduces a new build flag 'DYNAMIC_SINGLE_CHIP':
If DYNAMIC_SINGLE_CHIP is defined, which means there
are multiple possible drivers, but only requires one
instance of driver at a time. In such case, leave
MULTI_IF_NAME undefined, no matter what the module
name is, only prepend DYNAMIC_SINGLE_CHIP to names
of firmware/mac/ini files.

Take path of driverdump and ini file for example:
If both MULTI_IF_NAME and DYNAMIC_SINGLE_CHIP are not
defined, the paths are:
driverdump: '/proc/debugdriver/driverdump'
ini: '/<fw_root>/wlan/qca_cld/WCNSS_qcom_cfg.ini'

If DYNAMIC_SINGLE_CHIP is defined as 'qca6174':
driverdump: '/proc/debugdriver/driverdump'
ini: '/<fw_root>/wlan/qca_cld/qca6174/WCNSS_qcom_cfg.ini'

If MULTI_IF_NAME is defined as 'qca6174' and
DYNAMIC_SINGLE_CHIP is not defined:
driverdump: '/proc/debugdriverqca6174/driverdump'
ini: '/<fw_root>/wlan/qca_cld/qca6174/WCNSS_qcom_cfg.ini'

On LA platform, DYNAMIC_SINGLE_CHIP is controlled by
TARGET_WLAN_CHIP and TARGET_MULTI_WLAN:

If more than one WLAN devices are enabled in TARGET_WLAN_CHIP,
and TARGET_MULTI_WLAN is not set to 'true',
DYNAMIC_SINGLE_CHIP will be set to the device name, to
avoid name conflicts of firmware/mac/ini files;
meanwhile, MODNAME is set to 'wlan', then paths for
debugging are not changed.
Otherwise, MULTI_IF_NAME will be defined if requires
multiple instances of driver.

Change-Id: I22ed34d80d3540451bf8b891243c6cdac5a73d7e
CRs-Fixed: 2402432
2019-04-30 22:27:24 -07:00