To enable WLAN ath10k snoc needs to send the host and target
copy engine info and driver operation mode to WLAN firmware.
The WLAN firmware configure the hardware component according
to the configure request send by ath10k snoc host driver.
Add QMI service to support this WLAN enable and disable
feature for the ath10k snoc WLAN driver.
Change-Id: I2648d90c1adddf72fa3977b6da52ab41b4ebd539
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Add support to configure the bus and wlan copy engine
component. Register event notifier to communicate with
the WLAN firmware over qmi communication interface.
Define data structure and method to process the QMI service
arrive, exit, msa ready and firmware event.
This feature adds support to maintain the SSR state machine
and ath10k core restart handler for the ath10k snoc driver.
Change-Id: I594611a104ef4eef499270996990a278e151101c
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Commit 6cd18e711d "block: destroy bdi before blockdev is
unregistered." moved bdi unregistration (at that time through
bdi_destroy()) from blk_release_queue() to blk_cleanup_queue() because
it needs to happen before blk_unregister_region() call in del_gendisk()
for MD. SCSI though will free up the device number from sd_remove()
called through a maze of callbacks from device_del() in
__scsi_remove_device() before blk_cleanup_queue() and thus similar races
as described in 6cd18e711d can happen for SCSI as well as reported by
Omar [1].
Moving bdi_unregister() to del_gendisk() works for MD and fixes the
problem for SCSI since del_gendisk() gets called from sd_remove() before
freeing the device number.
This also makes device_add_disk() (calling bdi_register_owner()) more
symmetric with del_gendisk().
[1] http://marc.info/?l=linux-block&m=148554717109098&w=2
Tested-by: Lekshmi Pillai <lekshmicpillai@in.ibm.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jan Kara <jack@suse.cz>
Tested-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Git-commit: 165a5e22fafb127ecb5914e12e8c32a1f0d3f820
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
Change-Id: I006db1a645adffb79d6b2f46f5ccc94fa21dfd0a
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
If host driver fails to probed for the first time, and SSR/PDR
get triggered, as part of PD down uevent is sent to host driver
which inturn set recovery in progress which never gets reset
and the next time on FW Ready host driver is not able
to probe successfully
To fix this add a check if driver is probed or not
before sending the uevent.
Change-Id: Idceab059821c0b0e2a8806ad9fee5b6c75aec8c7
CRs-fixed: 2027920
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
If FW is down irrespective of crash, a uevent
is sent to wlan host driver to indicate FW is down.
Change-Id: I9fe2a2a11178f72ea27150d74d93a1e411eac030
CRs-fixed: 2027902
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
The ath10k snoc driver is a client to WLAN firmware service
started at Q6. Initial control messages to WLAN firmware is
exchanged through QMI interface. This change also adds
the APIs required for WLAN driver to enable and disable
WLAN at firmware.
CRs-Fixed: 2016532
Change-Id: I0572c70db4c693e0d03ed1ad930841a92e60c340
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
This change attempts to abort gating of clocks if a
request to turn-on clocks is pending.
This would in turn avoid turning OFF and back ON the
clocks.
CRs-fixed: 2002742
Change-Id: I3d80ed503d4ddb29ac613b11e5e93f84c8362978
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>