Add changes to support new definition of
send_roam_scan_offload_mode_cmd() in connection manager.
Change-Id: Iea10907756ea785b0b0de72d01375f50ac3dbd6a
CRs-Fixed: 2758318
SKB frag debug framework is required for debug purpose of frag based
approach in monitor mode
Change-Id: Ic7a5a2c3d7397c4d7dd2c5db32802b0f694e6101
CRs-Fixed: 2736136
In defconfig build(QDF_LOCK_STATS = 1 for slub debug enabled) increase
spin lock bh max time allowed to 2 seconds to accommodate for cache thrashing
and slow execution because of many debug features getting enabled.
Change-Id: I817d63a264079d25fed8a7ba1dbd9db5391abcdd
CRs-Fixed: 2754993
Introduce the feature to hide 2nd, 3rd and 4th octet of the
MAC address in the logs.
To enable this feature set CONFIG_WLAN_TRACE_HIDE_MAC_ADDRESS to y.
For example, if this feature is enabled, then
mac address ae:45:9c:f1:c0:98 shall be printed as ae:**:**:**:c0:98
If this feature is disabled, then QDF_MAC_ADDR_FMT translates to
"%pM".
Change-Id: I7b3823d33748120b0fa5eb372f7957de59760536
CRs-Fixed: 2751002
For static display case, BUS BW work periodically wakes up the
APPS because bus bw work is created as DELAYED_WORK.
This has the power impact in case of static display.
Use DEFERRABLE_WORK instead of DELAYED_WORK for bus bw work.
DEFERRABLE_WORK won't wake up the APPS periodically in static
display case.
Change-Id: Id812907cc6962ab7a9bb2ce8a7417ca0546363ab
CRs-Fixed: 2748373
Replace the lim_default_hmac_sha256_kdf() & lim_create_fils_rik()
API with crypto API since both these API are primarily for
cryptographic derivation of re-authentication integrity key(rIK)
Use the new crypto APIs qdf_default_hmac_sha256_kdf(),
wlan_crypto_create_fils_rik() for this.
Change-Id: I1c8f38ee0124b8b3eb527d4b01d39add134e181b
CRs-Fixed: 2752635
Add export function symbol for functions and compile
qdf_func_tracker.c file, required for code instrumentation.
These functions print the dump of function call map and are
called during CBT test case execution, to find errors and
trace function calls.
Change-Id: Idc79de7111398956b4995d3d7cbefa45a079b100
CRs-Fixed: 2748686
Currently in_use and unmapped flag from rx_desc can not know is
the rx nbuf has done IPA smmu map/unmap accurately.
add rx nbuf IPA smmu map/unmap flag in qdf_nbuf_cb, and use
this flag to check if IPA smmu map/unmap need to be done or not.
Change-Id: I19bbc6cc69ba752ef7c58d41fbe26299ca96d29e
CRs-Fixed: 2731313
Implementation of QDF API to allocate skb to avoid recycler pool
and extending skb debug framework support.
QDF API: qdf_nbuf_alloc_no_recycler
Change-Id: I32ccae7337000c899e8fba8127aa9fb3c8551783
CRs-Fixed: 2734717
lock_cookie_freelist is global static, which means it is set as NULL when
loading driver module. It works well when there is only one driver module.
For the CE platform with CONFIG_WLAN_RESIDENT_DRIVER defined, driver is
split into two modules, one module keeps variables and functions in
kernel, the other module is used to trigger rmmod/insmod function. In this
case, lock_cookie_freelist is not NULL when insmod is triggered the second
time through the second module.
Set lock_cookie_freelist as NULL in qdf_lock_stats_deinit.
Change-Id: Ia20fcc230c3a43eed9b646689348ad37b77811f2
CRs-Fixed: 2742118
Uninitialize QDF_NBUF_TRACK structure members printing junk
data, it may lead to slab-out-of-bounds
Initialize QDF_NBUF_TRACK structure members with default value
in API qdf_net_buf_debug_add_node
CRs-Fixed: 2720988
Change-Id: I377a82a5e91b752516cd42089a66549d84d1c2dd
Pointer 'hif_ctx' returned from call to function 'cds_get_context'
may be NULL. Check for NULL pointer before de-referencing it.
Change-Id: I6c909b2c62e1bf6945a4cc40315e8fdad4a0aa83
CRs-Fixed: 2726335
Currently for qdf trace api data type of code is uint8_t, some of
the modules are inserting message id of type uint16_t because of
which some information is getting lost and post processing cmm
script is not able to parse these messages correctly.
To address above issue, change the data type of code for
qdf trace function.
CRs-Fixed: 2719767
Change-Id: I4461dc9c2f45e691317d318870dfdbce93929e12
Add QDF API to check platform capability if DRV is supported or not.
Then component enables wow support based on it.
Change-Id: I9045b1982acfc4ed4cdce724b48430cb20e03274
CRs-Fixed: 2722639
Original changes have problems and have been reverted.
This is improved fix, the difference is set event done flag
before complete
Original submit is I31f947169153ccbeb8435c539faab1059c055c04
Revert submit is If8318b28883ae8ddd4fee36013f28c45f30fa426
Change-Id: I72814381a3ee932c9ff43fdae7d2dda5619baa48
Add code to use IS_ENABLED for CONFIG_WCNSS_MEM_PRE_ALLOC
kernel modules and remove inclusion of reduntant header
file cnss.h.
Change-Id: If1d098c7c6f326d12700f06318909a7fc0e7895a
CRs-fixed: 2702368
If QDF_TRACE is called with wrong verbose level then
the actual print is supressed and a error log will be
printed indicating wrong verbose level
This change is introduced because of an issue wherein
the prints flooded with wrong verbose level and could
not identify the incorrect caller
Add change to concatenate the actual print along with
failure message to help identify such incorrect callers
CRs-Fixed: 2716564
Change-Id: I19c4e80958c1ab5d621eea3a6d32308ce4c51558
Fix proper format specifier for qdf_debugfs_printf in
qdf_dpt_dump_stats_debugfs.
Change-Id: I3d357cb677c6419e13c3c2333b43d4cae2f2df41
CRs-Fixed: 2717408
Adding support for iot_sim drop operation.
Drop operation will be handled in Rx direction.
Change-Id: If2e1c9663a69fcd16715cdd1d28639a388ea1c0c
CRs-Fixed: 2686309
In driver there are multiple implementations to read the number of
1's set, have a generic qdf implementation to get the same.
Change-Id: Idf769c221b33e867720943fb8c42158edd9600de
CRs-Fixed: 2716525
This reverts commit I31f947169153ccbeb8435c539faab1059c055c04 since
it has introduced, use after free issue during dp_rx_thread shutdown.
Change-Id: If8318b28883ae8ddd4fee36013f28c45f30fa426
CRs-Fixed: 2707451
Add logs in driver to log current memory footprint
in init functions. Add wlan_mem_stats to sysfs node
in both perf and defconfig builds.
The stats are included under MCL feature
DCONFIG_WLAN_SYSFS_MEM_STATS.
Change-Id: I79c6d418a5762cddf52ab3bc0b0c93993fa7fd84
CRs-Fixed: 2635192
Add driver command support to dump all the function call mapping
which is cached in global buffer.
Change-Id: I6df9273c641e2cf3ecefe64c8f3c15d8ec2f9b20
CRs-Fixed: 2677981
According to Kernel comment, no one checks the return value of routines:
debugfs_create_u8
debugfs_create_u16
debugfs_create_u32
debugfs_create_u64
debugfs_create_atomic_t
so remove return value of related qdf api.
Change-Id: I7d260bccfce463dddae963c54a776813df116eac
CRs-Fixed: 2666506
rtc_time64_to_tm in defined from kernel 4.0+. Use rtc_time64_to_tm
instead of rtc_time_to_tm from kernel 4.0+.
Change-Id: I6335150300cd4cd7a91d771dd86bf11592d1ff11
CRs-Fixed: 2666521
Add support in code to use IS_ENABLED, if CONFIG_ARM_SMMU
config as kernel module.
Change-Id: I64c1e0c7918d520ed36a7a9e22fdf39f66e1c150
CRs-Fixed: 2701645
If wlan logging is enabled then register a notifier block
to kernel's panic notifier chain. Notifier block contains a
callback function to print buffered wlan logs in the event
of kernel panic.
Change-Id: Id8cae651afe45e411e1ddf122c2bc9b5f6688327
CRs-Fixed: 2692163
sizeof_field is defined from kernel 4.16. So use sizeof_field
instead of FIELD_SIZEOF from kernel 4.16.
Change-Id: I291531ea86499a7c0ba52fbb6607b19dff533111
CRs-Fixed: 2666512
The packet tx complete status from wlan fw define in htt_tx_status
doesn't match with packet trace feature used in qdf_dp_tx_rx_status,
Meanwhile A_STATUS also doesn't convert to correct qdf_dp_tx_rx_status,
so add two according APIs to fix it
Change-Id: Ic250175dd270632f40af14ad9499ddcafbb3033b
ktime_get_real_ts64 is defined from kernel 3.17.0.
Use ktime_get_real_ts64 instead of ktime_get_ts from
kernel 3.17.0.
Change-Id: Ica72545fe5224966fbb350813bf3c2d849946dbc
CRs-Fixed: 2666404
"qdf_complete_wait_events" set force_set flag for all event in
"qdf_wait_event_list". This cause qdf_wait_for_event_completion
return QDF_STATUS_E_FAULT, even if event have completed
Add new flag "done" to record event completed. Use this flag to
detect event have completed or not.
Change-Id: I31f947169153ccbeb8435c539faab1059c055c04
Currently, if TCP PSH flag is set in TSO packet then
PSH flag is set for each TSO segment in the driver.
This causes GRO flush for each segment received in the receiver side.
Set this PSH flag only in last TSO segment so that GRO flush
happens for the last segment in the receiver end.
Change-Id: I6d6b34fab71ab2984ea68d8197f2979d25b36c6b
CRs-Fixed: 2692251
Add qdf API to check if a given bitmap is empty and API to compute
bitwise AND operation of two given bitmaps.
1. qdf_bitmap_and
2. qdf_bitmap_empty
Change-Id: Ibc26e0f515c3804f1b627e8eaa8bf6f796c40324
CRs-Fixed: 2635330