There is one variable defined in mmc_card, which
is not being used anywhere. Also it is wrongly
being freed from mmc_remove_card and causing
"double kfree" related issues.
To handle this, remove unused cached_ext_csd variable.
Change-Id: I75f376ec787a46a2a16c38f88f444bd8ff9c86c4
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
Free the memory pointed by msg pointer if
copy_to_user fails.
Change-Id: I628e089d844a3e1818a1a550e77ac10f33640ac9
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
VCONN is not supported in micro USB mode, thus disable
registration and operations on VCONN regulator.
While at it, disable TRY.SOURCE while disabling typeC.
CRs-Fixed: 2027962
Change-Id: Ib92564160c48f52d77815b646b4cdd5c7d23e7b3
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
This cpu node can be used to check the isolated cores
which are made unavailable for scheduler and exempted
from waking up on interrupts or from running timers at
the given time based on the load. All the runnable tasks,
timers and hrtimers should have migrated to other online
running cores.
Change-Id: I32fed6cc131288b9c318f0dea65e2e59396225ca
Signed-off-by: Sabyasachi Singh <sssingh@codeaurora.org>
Do not fail IPA probe function if IPC logging is not available.
Change-Id: I1ac1765e1df8cb1ea5f19a7ec639b307d867a28a
CRs-Fixed: 2028149
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Enable flag CONFIG_UID_CPUTIME to have uid_cputime stats.
Change-Id: Iee6ed05b4cb4443ec1fc347b186153c416d3f136
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Currently smb138x only support usbin-usbin parallel architecture
where the battery current from the parallel charger flows through
the batfet of the main charger.
Support configurations where there is remote sensing or an external
rsense where the current from parallel charger directly goes to the
battery.
Change-Id: I5506190d83436bfaea3b6c98b1b311746cf85071
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Currently pinctrl is obtained after it is used to obtain
strobe_enable and strobe_disable states. This is incorrect and
needs to be fixed. Also, when the switch device is disabled, the
pinctrl configuration for GPIO that drives the LED output is
selected only when the brightness or current is set to a non-zero
value in flash device.
To keep it simple, move the pinctrl configuration for GPIO that
drives the LED output (e.g. flash LED3) to the switch device so
that both flash and torch device need not have to control it.
Also, fix the pinctrl configuration for GPIOs that are used to
drive flash LED3 output on both 8998 and 660 for functional
correctness.
Change-Id: If6ec27dd39fd750b6d4311a5e370020961f30e08
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
An out of bounds access is attempted to calculate code for
iclamp_low_ma and iclamp_mid_ma for LED3. Use the right index in
flash_node pointer to fix it.
When an error is found during probe especially before registering
a flash LED class device, unregistering flash LED class devices
is made on a flash LED class device that is not registered yet.
Fix it.
Change-Id: I2f6650eb24ecbece473abfe18a9a2e26c62c1253
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
On MSM8998, SDR104 mode might be unstable causing CRC error on
the interface. So we need a workaround which would skip printing register
dumps on CRC errors and also downgrade bus speed mode to SDR50/DDR50 in
case of continuos CRC errors. This patch enables "qcom,sdr104-wa" property
to enable this workaround.
Change-Id: Ib2dbf974d1312c00ca22a114f0b9e8130624090c
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
On Certain chipsets, SDR104 mode might be unstable causing CRC error on
the interface. So we need a workaround to skip printing register
dumps on CRC errors to reduce the recovery time.
Change-Id: I73986d89a080a842e01cdf88ad8d3b953755e993
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
UHS-I SD cards support SDR104 mode which runs the SD card interface
clock upto 208 MHz. But we may see repeated CRC errors in SDR104
with some SDCC controllers. If this happens, this change would
reinit the card to lower speed (SDR50) hoping that CRC error
rate would reduce at lower clock speed (100MHz for SDR50).
Change-Id: I140d29fdf500bb89881a0f2c1f768fe0c5afa9d5
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
On Certain chipsets, SDR104 mode might be unstable causing CRC error on
the interface. So we need a workaround which would skip printing register
dumps on CRC errors and also downgrade bus speed mode to SDR50/DDR50 in
case of continuous CRC errors. This patch adds "qcom,sdr104-wa" property
to enable this workaround if required.
Change-Id: I626d8ef45a97e8e6558e7f20be496de1f5a2a438
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
If Ultra High Speed SD card supports both SDR50 and DDR50 modes then
this change will give preference to SDR50 over DDR50 mode as it seems
to be more reliable for board designs. While we are doing this, this
change also fixes some indentation issues in the function we are have
modified.
Change-Id: Ifa075563ec41f43584d93f669caecbaed9369e24
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Do not fail GSI probe function if IPC logging is not available.
Change-Id: Icdccb9a8db637fc9c4fcff5f459831739c675173
CRs-Fixed: 2028149
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Some UFS devices may stop responding after switching from HS-G1 to HS-G3.
Also, it is found that these devices work fine if we do 2 steps switch:
HS-G1 to HS-G2 followed by HS-G2 to HS-G3.
This change introduce UFS_DEVICE_QUIRK_HS_G1_TO_HS_G3_SWITCH quirk for
these devices to apply this 2 steps gear switch workaround.
Change-Id: I38eec2e1bfa842169cbfec441d900a807e715f8c
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
debugfs ioblob function is called by the FW logs scripts
to copy the FW logs via PCIe.
As the FW logs collection is done in parallel to the operational
11AD actions, the HALP voting can take place during 11AD reset flow
and other sensitive scenarios.
To prevent that, remove HALP voting from the ioblob function.
Change-Id: I2d63bf0628f3cc88ba90063534f31b6a27b80d49
Signed-off-by: Maya Erez <merez@codeaurora.org>
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>
Currently, when launching mdlog session, buffers are being
marked free due to which file list command response is
getting corrupted leading to file list command timeout
error. This patch fixes the issue by keeping the buffers
busy which avoids queuing of next read.
CRs-Fixed: 2023646
Change-Id: I4db71c144875112a5ce24729b6b781488575a271
Signed-off-by: Mohit Aggarwal <maggarwa@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>
Enabled PPP related configs for VPN functionality
to work on msm8998.
CRs-Fixed: 2019475
Change-Id: Ib8d0a98ef4219f2ab33008a4da3e93f22e85f538
Signed-off-by: Devi Sandeep Endluri V V <dendluri@codeaurora.org>
Add required panel sequences and timings to support the
sharp wuxga split link panel.
Change-Id: I78c38f25902874a6628e168855f23962cadb8960
Signed-off-by: Ashish Garg <ashigarg@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>
After setting HALP ICR bit, we keep it set until HALP unvote.
Masking HALP ICR should protect the driver from hitting the HALP ICR
over and over again. However, in case there is another MISC ICR
we will read the HALP ICR and issue a completion. This can lead to
a case where HALP voting is completed immediately, as the completion
is already set.
Reinit the HALP completion before the actual vote will clear previous
completions and protect from such cases.
Change-Id: Ia8b477e22c87bd49bb4c23e4eb172664754b8e29
Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Git-commit: 18618a9fba33f87a1cc6083a22a541972cd3f3b3
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
Signed-off-by: Maya Erez <merez@codeaurora.org>
Some dynamic debug printouts in driver are using print_hex_dump_bytes.
However, with dynamic debug disabled, print_hex_dump_bytes outputs to
log unconditionally.
Use print_hex_dump_debug instead to prevent log pollution when dynamic
debug disabled.
Change-Id: Id8a697427ba7623f4d8c82145548ab750fd2e262
Signed-off-by: Dedy Lansky <qca_dlansky@qca.qualcomm.com>
Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Git-commit: 5eb443e9af87776f94e77a9b72e54ceb81cbabc1
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
[merez@codeaurora.org: trivial rebase]
Signed-off-by: Maya Erez <merez@codeaurora.org>
Set APPS_LAN_CONS pipe as the statuses exception pipe for all
Q6 pipes instead setting this pipe as exception pipe only for
pipe 0.
Change-Id: Id00abb0ddabddd5c76a45e0878e327cba950176c
CRs-Fixed: 2027835
Signed-off-by: Amir Levy <alevy@codeaurora.org>