Propagation from qcacld-2.0 to qca-wifi-host-cmn.
If the module name is changed to something other than wlan in
Makefile or Kbuild, then MULTI_IF_NAME is defined to be the module name.
When MULTI_IF_NAME is defined, the names for the config files, log files,
and firmware files are prepended or appended with MULTI_IF_NAME. This
prevents file name collisions allowing multiple instances of this driver
to be loaded with different module names.
Change-Id: Id880c5fe423eb0b2a2c01677d8fa7c4a784c74df
CRs-Fixed: 946520
Instead of using cds to get the hif context in the notifier callback
rely on the context_of semantics to traverse back to the hif context.
Change-Id: I7d57f9dcf8c09836c34ce16a4acaa8c3bc1624b9
CRs-Fixed: 1092842
When new hardware is not found in the lookup table
for human readable hardware names, print the hex
value of the hardware version info.
Change-Id: If821ba04c83f2d9b54587379d92bdc1918d7a094
CRs-Fixed: 1092353
When NAPI is busy processing Rx, interrupt is not re-enabled
and this causes CE2 and other pipes to become full and target asserts.
This patch enables napi to return after processing half of the descriptors.
Change-Id: I2ba443c388f1a9d36331c632bfb2fbbbe876228f
Crs-fixed: 1094034
We want to enable the compiler's -Wmissing-prototypes switch, but
there is existing code that is generating warnings. Fix all warnings
in hif.
Change-Id: I342360f48f73a1e5ef42ebc4ca38366669eea0e0
CRs-Fixed: 1091702
In hnc_link_clusters function, few local variables left
uninitialized. Initialize them with zero as they will get
overwritten during the processing of the cluster for first time.
CRs-Fixed: 1085510
Change-Id: I04af509bdc1a63eeb215c5ec854b55a8bc45aba9
If hal_api.h is not available do not use its api's.
Avoid "implicit declaration of function" compilation error.
Change-Id: I8458bde4ce862adeeda5c8d3892ce439be068c06
CRs-Fixed: 1089874
Use UMAC_CE_COMMON_CE_HOST_IE_0 instead of
UMAC_CE_COMMON_WFSS_CE_COMMON_R0_CE_HOST_IE_0
Change-Id: I70e92ca4b86329b562e84261d8911f52f7d64cd0
CRs-Fixed: 1089874
Changes include skipping of legacy interrupt routing,
target probe and target sleep state adjust
Change-Id: I36b7f627e7ca6970a73ffbc85b7f0e7a6ce40325
CRs-Fixed: 1089874
Change that allows configuration of max buffer
size for SRNG rings in the receive direction
Change-Id: Ib857f1fdf43c849078f9470ec029fe627379fcb4
CRs-Fixed: 1089874
intr_timer_thres_us minimum step size is 8us. So anything
less than 8 will not enable the hardware timer. Set the
value to 0 to avoid confusion. A strong warning message
should also be added.
Change-Id: I9286d2988930df8577e46e5a753cc6f68c71d180
CRs-Fixed: 1089874
DPTRACE has been enhanced to record send and recive packets.
Update the missed call site
Change-Id: If1554b31add1df00f98b6d3eed8e5f752ca4722c
CRs-Fixed: 1089874
Add device id for QCA6290 emulation platform.
Add target def support for QCA6290
Needs HIF_TYPE_QCA6290 defined
Change-Id: I4edd5a5b600007ebe7416195648815d80025e768
CRs-Fixed: 1089874
pci_set_drvdata stores a pointer in the pci driver device structure.
Since we do not use this pointer any more we do not need to set it.
Change-Id: I36452aaf2a4c218a3d3891626406e4693d968bba
CRs-Fixed: 1071958
Wifi 3.0 compile against cdp apis.
Make compilable against mobile code base.
selective hw common header include.
Change-Id: I051f917001c0d13c762d9cb5a3ec141cd278d0e7
CRs-fixed: 1075736
qcacld-2.0 to qcacmn propagation
In platform using usb interface, when fw assert, buffer alloc for fw
dump is smaller than the actual fw dump size, so adjust the buffer size.
Change-Id: I4706c57e8c1b684bfe164b23fc0902c376d4d80a
CRs-Fixed: 1043805
Change CONFIG_SLUB_DEBUG_ON to HIF_CONFIG_SLUB_DEBUG_ON to differentiate
kernel CONFIG_SLUB_DEBUG_ON macro with hif specific debug option.
Change-Id: I8922d5c37363da382f3f0b23489f8fd3544eed7d
CRs-Fixed: 1088928
In current code ext group interrupts are not support. Defined these
functions to NULL to avoid compilation issue.
Change-Id: I7e1e027a3faabce1a8844606c5c5c3a412256ded
CRs-Fixed: 1088926
Before disabling the interrupts, disable NAPI so that
the softirq cannot be [re-]scheduled.
Remove the affinity notification on the irq.
Change-Id: I64061d2b4f2e1e6eff67416133b928faa9c0dd4c
CRs-Fixed: 1089166
The interrupt free code is protected by a flag. In the normal case
the interrupts are freed before the bus is stopped. Make all cases
free the interrupt before hif_stop.
Change-Id: I1e1dfae9ba388733eb13f2cdf90aa85b3db35b0d
CRs-fixed: 1089935
Durring a driver load failure, the fastpath buffer is allocated
before the fastpath handler is installed. Change the free logic
to match the allocation logic.
Change-Id: Ib9731b3d06d7ac728e0f23bb32e2b74c35b9a8de
CRs-Fixed: 1089933
This allocation failure will likely lead to a copy engine
stall and subsequent need to restart the subsystem.
Abort the module start immediately to avoid a system crash
or delayed subsystem restart.
Change-Id: Ibe7b348dee39d35e3e7f767f17f0114d888a30f8
CRs-Fixed: 1088725
Make changes for per per Rx context LRO manager, this addresses
all parallel Rx concurrency issues. There by removes all the contention.
Change-Id: I90604ffdf7b7fd930eee636426a4c7fc9b92c7d7
CRs-Fixed: 1079320
Function prototype for hif_get_dev_ba is c file to avoid
warning. This should be ideally added in header file. Adding this
prototype in hif.h.
Change-Id: Ic61c5b8278e6e888931721e716de74c4703ace82
CRs-Fixed: 1079655
During SSR, HDD context prevails, no need to free the contexts.
Hence add an API to sanatize runtime pm list during SSR shutdown.
CRs-Fixed: 1082449
Change-Id: I189eca6fc31dfa2cdedade3d5308f01311d72c88
Target 8074 changes for emulation platform (VP/M2M/SOC) are under
compilation switch which does not allow single meta to run for
legacy platforms and Hawkeye emulation platform.
Change compile time switch to run time check for target.
Keep all emulation related changes under QCA8074_VP switch which
needs to be always enabled. It helps to identify emulation specific
changes. All emulation changes are enabled for target type 8074.
CRs-Fixed: 1082545
Change-Id: Id0bab52735154db086b56ecd751578dba75a311a
X86 uses PCI to connect to qca8074. ATH_AHB is not enabled on x86
but regdef is required to set correct offset for registers. Move the
initialization code out of ATH_AHB compiler flag.
Change-Id: I369f9c87e006fa3ae929e18a6922332d84f01382
CRs-Fixed: 1079647
Compilation error is seen for 32 bit builds as arch_get_cpu_efficiency
is not exported in 64 bit architecture cpu.
Remove arch_get_cpu_efficiency references from hif napi layer as this
information is not used as of now.
Change-Id: I68c31b1008696fc84bc5a563d45eaa507ae92981
CRs-Fixed: 1071783
Add NULL check for HIF state and CE state in ce_send_cb_register and
ce_recv_cb_register functions before dereferencing it.
Change-Id: I96cde91775ff77f6ae863b4d56e48c42e34104c7
CRs-Fixed: 1081995
For supporting low memory platforms, if fastpath is enabled, the number
of destinaton ring receive buffers are reduced from 512 to 64 for CE1.
Also when pktlog has been disabled, avoid allocating receive buffers
for CE8.
Change-Id: Ia4cd991ec14a5d69f13efee8e6f72db6da99f83a
Acked-by: Sahoo, Amarendra Kumar <c_aksah@qti.qualcomm.com>
CRs-Fixed: 1066302
Fix the incorrect order of arguments to memset in two
places in the error path.
CRs-Fixed: 1082204
Change-Id: I4cd6e23930d4f34bb732499eda2b20845b09a3b2
Improve Runtime PM state logging for debugging purposes.
Log transport layer tag as well.
Change-Id: I90b74693c8c84a09a8cca64276ad62b7157160cb
CRs-Fixed: 1072520
This is a qcacld-2.0 to qcacld-3.0 propagation.
pr_debug() should not appear by default in kernel log (kmsg).
DEBUG is a kernel macro, since host driver is using the same name macro,
pr_debug log statements are appearing in kmsg.
Fix this by moving the code under DEBUG to WLAN_DEBUG and
remove DEBUG macro from Kbuild.
Change-Id: I5bb385f91f9b6ba15629a5878625fefc21d4a7e1
CRs-Fixed: 1003261
Add a new mode with a pair of new NAPI events, NAPI_EVT_USR_SERIAL
and NAPI_EVT_USR_NORMAL, which allows client force NAPI to move all
instances onto the same CPU and peg them there (blacklist); and
to move back to normal mode of operation.
This part implements the HIF portion. Goes with the corresponding
HDD code.
Change-Id: Id301267d654ef24de706f81b0bd712ed751d8265
CRs-Fixed: 1078976
OPENSOURCE driver doesn't need PLD/CNSS platform layer
interface to call the kernel API's.
Define the Runtime PM init/exit API's in the bus interface layer.
CRs-Fixed: 1072520
Change-Id: I81bd782e52095826510b3adfd02ca76f593bdb49
Currently we are using core-id of the core for setting IRQ affinity.
This is incorrect since core-ids can be common across clusters. Use
CPU number instead for setting IRQ affinity.
Change-Id: I71afd23c6a78985df51a694ed21cc6c3a51eedf3
CRs-Fixed: 1077069
When AHB is not compiled in, hif_ahb_configure_irq needs a dummy
implementation for compilation.
Change-Id: I782ffed7d01b3de84bab61140dd4158768bb30a3
CRs-Fixed: 1072078
Dereference was happening before the null check. Also simplified the
data structure traversal since we are inside hif.
Change-Id: I2370402f3d080bd413ab949a40dc5d97fba6be27
CRs-Fixed: 1072077
A previous unit-test framework change contained some outstanding clean
code issues. Address the issues to ensure cleaner code is maintained.
Change-Id: I4e9f8e98f63e280b4333dec710fd1bd2e37e3fb6
CRs-Fixed: 1073756
Recently host power offload suspend/resume has switched to 3
stage process. Enhance power offload unit test framework accordingly, and
improve error handling. This is a companion change for
I8cc1e955fbaca631ee7fd76b0c907d1e68c836bf in qcacld-3.0.
Change-Id: I8c4e062d4a51a7a245500bc135571fc67cf1b4d0
CRs-Fixed: 1072424
Modify the CE register debug dump routine to print the read,
write indexes on the console.
Add new function to return vector used for specific radio.
WIN uses this routine to retrieve the irq and assign the same
to radio netdev irq field. Assign the radio netdev with
the right irq number which helps qrfs to steer to traffic
towards a specific core.
Change-Id: I94bdcc323afbee53946ea9e50a773ffe35224ae6
Acked-by: Balamurugan Mahalingam <bmahalin@codeaurora.org>
CRs-Fixed: 1066208
Packetlog framework needs pipe specific callbacks. Change is done to
support pipe specific callbacks.
Change-Id: Iabd442acc8bef19ad9b8ad9ff2660e273a859f54
CRs-Fixed: 1072220