Enable support to use SKB Buffers allocated during bootup for
low memory targets.
CRs-Fixed: 2106466
Change-Id: Ia55c38767804c5915b9d29d3c61bff236d12cacd
Currently, cds_trigger_recovery is unconditional. Instead, avoid
triggering recovery if recovery is already in progress.
Change-Id: I5c77048701930591e0e520e07275e6f8631108a0
CRs-Fixed: 2070845
Remove unused APIs from PLD. These APIs are already replaced by
WLAN common utility APIs.
CRs-Fixed: 2093939
Change-Id: I187826e7433e93361e1e4d42c081cc2f31b661b3
Skip FW memory dump in SSR case for HL SDIO solution.
HL SDIO uses the diag read API to read by 4 bytes,
which is too slow to meet SSR time requirement.
Change-Id: Iacde90ab0ec84f29f3744bf4497ec8fd8517600a
CRs-Fixed: 2071329
Add the interface that host driver can trigger FW assert and do
recovery for QCA6290.
Change-Id: I03a9c374fd2ddc5cc46b9b0a98ce05bcf80a53ec
CRs-fixed: 2068035
Use cnss_utils APIs to set/get wlan info as these APIs are platform
independent.
CRs-Fixed: 2071683
Change-Id: Ia35a648a1d4dff308b830bce3b4e9992de2a2834
If platform has a mechanism to initiate target assert, trigger
that interface to force assert target. Certain integrated platforms
(where WLAN runs on it's own PD) provides a mechanism to initiate PDR
from host. That interface can be triggered when WLAN host detect
timeout scenarios.
CRs-Fixed: 1110243
Change-Id: I6a9408f47ca4245380dbf4177363c3c461ff948d
In function pld_pcie_uevent, pld_context->ops->uevent NULL check logic
is wrong so correct it.
Change-Id: I1bf9d8c8f5318b476761a458f5475107007dfa01
CRs-Fixed: 2058248
For TF sdio chip with platform driver, ramdump is
configured in platform driver. Driver can get the
virtual memory, but it can't call ioremap again.
If there is a platform driver, ramdump should be
allocated in platform driver, and if there is no
platform driver, ramdump should be allocated in
driver.
CRs-Fixed: 2066529
Change-Id: Ia2a32a4895f354e365522a30bbfac949ccb7a391
When FW assert happen, it won't do FW dump
if the bus type is SDIO.
Enable FW dump for SDIO target
Change-Id: I24655ca74003c915d9eda1106aad7cf87856947e
CRs-Fixed: 2010613
Update uevent status to hdd, based on the uevent received
from the platform driver
Change-Id: I1ac0fa61efa8b7f4f9d5e4e6abfcf969dbc1c592
CRs-fixed: 2027958
Platform driver icnss can provide uevent notification like FW
ready & FW crashed. Register the call back for notification and
update driver state for FW crashed indication so that driver
doesn't have to wait for shutdown call back to know FW crashed.
CRs-fixed: 2004309
Change-Id: I48afe8e023107aba8362324e3adabf6d50996b67
Add support of sending fw_log_mode to WLAN FW for QCA6290. WLAN FW
will decide whether to push its debug log through DIAG or not based
on this value.
CRs-Fixed: 2046631
Change-Id: I6c4ec8dbd65f8fc034381770bdef7e145b1d2b6a
1. The paths for driver to get ini and fw files
are incorrect for QCA SDIO chip on Dual-WiFi
platforms, with wrong prefix or no prefix.
Correct prefix for ini file, from '<mod_name>'
to '<chip_name>/'; add prefix '<chip_name>/'
for fw files.
2. For QCA9377, there is a special cnss API for getting
fw names, it's cnss_get_qca9377_fw_files().
Use the right cnss API to get fw files for QCA9377
Change-Id: Ia7616153b6823e9550703e649c7fc21ab306ca07
CRs-Fixed: 2008217
Add support for setting fw log mode for msm8998. Change the log mode
from bool type to tristate to support multiple log modes.
CRs-Fixed: 1115611
Change-Id: I6aef023d1e3cb1b68f1520f800af094f6f6decdb
Use dev_pm_ops for suspend/resume/suspend_noirq/resume_noirq ops in PLD
if there is no CNSS platform driver when using PCI bus.
Change-Id: Ib656cee2cd48cf15028397084ec8679627bce459
CRs-fixed: 1115528
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from firmware and if initial wake
up is received then failing it should trigger resume.
Change-Id: I1882011cab7365a026827a60c44375f0f1dc6102
Swith to new recovery APIs with dev instance and recovery reason.
As recovery could have different mode and be target specific.
Change-Id: I26a1a2a0d23a687a5babcaf4ba4e5c6e788fedac
Implement update_status driver callback, which will be called
when platform driver wants to update wlan driver status.
CRs-Fixed: 1111424
Change-Id: I0c4a20119e383d00e2dbd395159351572b956566
These version 2 shadow registers are filled by HIF and sent to firmware
through QMI for QCA6290 chipset.
Change-Id: I92edb4140f707a933dacbe982eb4da167841b501
CRs-fixed: 1107457
CNSS2 platform driver is the only driver which will support PCIe
bus based discrete WLAN chipsets.
Change-Id: If2d3aded36d383e2e4b0dc4ec9e6ab9e1023f2a9
CRs-fixed: 1082183
Currently cnss_wlan_enable() and cnss_wlan_disable() APIs are only
used for a temporary emulation case for PCIe bus. Enable to compile
them for all cases for PCIe bus.
Change-Id: I27b1982f89e045564ed991c8a570ebf6a87bcf33
CRs-fixed: 1082183
Propagation from qcacld-2.0 to qcacld-3.0.
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
Use correct variable name in argument while calling cnss_set_fw_debug_mode
cnss platform driver API to avoid compilation error for PCI based target.
Change-Id: I34d30cfd3113d379460124d423d0befa22a6bbd4
CRs-Fixed: 1091285
Add API to call platform driver function in order to get SOC related
information for in PLD for PCIe.
Change-Id: Ieec098575b874e6d15ae45ef6000767ade7d459f
CRs-fixed: 1082183
These PLD APIs can be called to get PCIe MSI related information
from platform driver.
Change-Id: I2882f5c30d6f932c36af4503ac0bec9229ef35df
CRs-fixed: 1082183
qcacld-2.0 to qcacld-3.0 propagation
Firmware can't support all station feature and 32 ibss clients
in one bin because of the mem limitation. So host supports to
download IBSS firmware bin if con_mode=6.
CRs-Fixed: 962246
Change-Id: I6c3dca17c82fdfd2bdadcee319cc157e6aa2ead9
Codeswap feature is introduced for a WLAN chipset which is already
cancelled. It is no longer used in host driver. Remove the feature
to avoid any confusion for future development.
Change-Id: I70ae291ded2d2e290408e2f5b177e872f1f3d7e8
CRs-fixed: 1082183
Call ICNSS API to get QMI support info and based on this
information later WLAN host driver decide to allocate 1 MB
Memory for MSA region or not.
CRs-Fixed: 1081443
Change-Id: I1ae0f3a0c92ded2df8e8c710be1faab6fde5cc10
We want to enable the compiler's -Wmissing-prototypes switch, but
there is existing code that is generating warnings. Fix all warnings
in core/pld.
Change-Id: Icef77666d1d1ef214491dcf1fcd56741091cec4f
CRs-Fixed: 1078826
Propagate from qcacld-2.0 to qcacld-3.0
Currently there is no QCA9379 device id in USB
device id table. Add USB VID and PID for QCA9379.
Change-Id: I7ae39513ff5fc1f0b36f3c05dc0e783532a8d4a3
CRs-Fixed: 1048598
Currently we are using different flags to enable compilation of pld_usb.c
and one to enable/disable PLD USB stub functions. Use the same flag for
both cases - CONFIG_PLD_USB_CNSS
Change-Id: Icc89405d785f3fc0ebc4a97d234013ac86ebd068
CRs-Fixed: 1076326
A previous unit-test framework change contained some outstanding clean
code issues. Address the issues to ensure cleaner code is maintained.
Change-Id: I889d4e12a7c00b5fc6cb409bc077466019442456
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.
Change-Id: I8cc1e955fbaca631ee7fd76b0c907d1e68c836bf
CRs-Fixed: 1072423
Socinfo API is not a standard system API. Hence, use PLD API to get
SOC serial number instead of calling socinfo API directly to enhance
driver portability.
Change-Id: I1d673d2f3b0066f4e05f2f465abc8a6cad7a1f8f
CRs-Fixed: 1069480
Clean up PLD source file by moving one-line function calls to
header file and make it static inline. Also, remove unused function.
Change-Id: Ibaa7357db4ac305f0bab9d8ad2f7dfe9351fda7d
CRs-Fixed: 1070075
Proivde PLD wrapper APIs for getting SMMU mapping
context and mapping SMMU to a specific physical address.
Change-Id: I3feb61b26c839547e4d050f62963e64f5ca062a7
CRs-Fixed: 1057714
Add PLD wrapper for platform athdiag read/write.
HIF will call these two functions when a athdiag read/write
triggered from user space.
CRs-Fixed: 1061837
Change-Id: Ie34c634beaf1cd91e24eca1b7ce5b6444a60393e
There's mistake that pld_power_off calls pld_pcie_power_on. Fix
this by calling the correct pcie power function.
Change-Id: I9e968d749479856510e0dd7f32f5babc57b6ebed
CRs-Fixed: 1064058
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from FW and if initial wake up is
received then failing it should trigger resume.
Change-Id: Ie553dfc1401c2c6934961773bc98a24626a9cd34
CRs-Fixed: 1060669
This reverts Change-Id: I12e1db54468c7215318333b55d991c53886d21ff
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. Getting/setting unsafe channels and
dfs nol are no longer be present after reverting.
CRs-Fixed: 1061220
Change-Id: I110df8d25464ff0d70428aa275538a98667ac57d
This reverts Change-Id: I3d3de3789a7d560ed171294fa9a1ebe6389746a7
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. PM suspend_noirq/resume_noirq are
not available after reverting.
CRs-Fixed: 1060669
Change-Id: I2b1300bbb19d2e4975bb86a82a892501b993827b
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from FW and if initial wake up is
received then failing it should trigger resume.
Change-Id: I3d3de3789a7d560ed171294fa9a1ebe6389746a7
CRs-Fixed: 1060669