Add qnovo as pl charging voter and disable parallel charging when
qnovo is enabled with fcc below 2A.
Change-Id: Ic03a18318a89344f2bd5c8a72445abe22cd3d142
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Report status that indicates individual charger errors,
including JEITA, battery, charing disabled, etc.
Change-Id: I5a02d9f86237ae1a05b71e78f17db8c39f35594f
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Add property qnovo_enable to enable qnovo charging. Also add
property pt_enable to enable pulse train.
Extend QNOVO algorithm's control of voltage and current after
pulse train stops and as long as qnovo_enable = 1.
The interrupt ptrain_done is configured wakeup capable.
CRs-Fixed: 2013069
Change-Id: Icb61e0e0169283f5f52a4994431489dde0af1c73
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Right now all the logs are dumped to IPC log buffer but there
are some logs which are logged most often and they overwrite log
buffer where in important logs required for debugging may be
lost. Create debug and verbose log level such that logs which are
logged most often and not as important as debug logs are moved to
verbose log level.
Change-Id: Iccab3e5485700efe71ffc85dc7c5f39b0872dfb4
CRs-fixed: 2025867
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
The variable cb_data is accessed from parallel threads where one thread
can free it anytime, this creates use after free scenerio.
To avoid use after free cases cb_data is freed only when kref count
goes to zero.
CRs-Fixed: 2023620
Change-Id: I74225fc61f8ede03a40ff35d2b963d90c0d4689f
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
This fix allows to avoid possible race condition while
accessing mdlog session info. Without this check there
is a possibility of poison overwritten occurrence.
Also this fix allows mdlog client to check the validity
of process descriptor. Without this fix there is
possibility of crash.
CRs-Fixed: 2022664
Change-Id: Ia10e83c7376de5cab92dd2ec4ec4aa8074223ff3
Signed-off-by: Gopikrishna Mogasati <gmogas@codeaurora.org>
Because of HW issues, burst mode access cannot be done with
pm660 parts. Use IMA in single mode for it.
Change-Id: I4e86601d713140e559ba8a6f92715f2075c7b8ee
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Currently, based on the number of bytes read/written, IMA is
configured for single or burst mode. Add an option to override
to single mode whenever required.
While at it, change pr_err() statements to print some more debug
information which might be useful.
Change-Id: If19e135ed4014732a0efe56250f56f0760a1fb93
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
In current pm_qos implementation - when the new pm_qos vote request
comes, the previous cpu group where pm_qos vote was put
is determined and removed if the current cpu group is different
than previous.
If the pm_qos vote of performance mode latency is put during
initialization, there can be a case where this vote will never be
released - since during init phase we can't cache the prev pm_qos cpu
group (pm_qos_prev_cpu = -1). Thus during the actual I/O sdhci_request
the pm_qos_prev_cpu will be -1 and unless the request comes once onto
each of those cpu group, the pm_qos voting can never be released.
Hence change this pm_qos vote for all cpu groups to PM_QOS_DEFAULT_VALUE
during init phase.
Change-Id: I71249b58f41850a8a84e6165d6df936eba13b218
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
Create cnss_genl driver to create a netlink family cld80211
and make it available to cld driver and applications when
they query for it.
This driver creates multicast groups to facilitate communication
from cld driver to userspace and allows cld driver to register
for different commands from user space.
Change-Id: I0795dd08b6429fad60187fee724b3fd3ccfa5603
Signed-off-by: Srinivas Dasari <dasaris@codeaurora.org>
CRs-Fixed: 1100401
fw_crashed is atomic state variable, use atomic
read operation for reading the value
Change-Id: Ieaad558cad684a0eb7daaad9d220b44c032d69ca
Signed-off-by: Govind Singh <govinds@codeaurora.org>
FAB_ID can be used across multiple drivers that gets revid
information from qpnp-revid driver. Move the FAB_ID definitions
in RR_ADC driver for pmi8998 and pm660 so that they can be
reused by other clients.
Change-Id: Ia61af56244161c948b0f458a77e699c1cac871b1
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Enable Hardware based auto resonance calibration for LRA
mode for PM660.
Change-Id: Ic7902ba4b8665eda2623286dd0b1c3fdeb3895e5
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
Explicitly clear the subsystem loading address in case of any
memory failure. It will help to avoid any platform dependency.
Change-Id: I3be8f6318d68f02c02e637fc34f4a868e9fafa45
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
Add the following changes to support enabling of SMMU stage1:
- Enable DMA coherency and PAGE_TABLE_FORCE_COHERENT attr
to allow cache coherency when SMMU stage1 is enabled
- Add the option to define SMMU base address and size in DT
- Add DT node flag to determine if stage1 is enabled
Change-Id: I38b0ee3d5c4bf533f91077ee69bd464dfdd358c8
Signed-off-by: Maya Erez <merez@codeaurora.org>
This patch move qmi handle destruction in a new function which is
executed in a worker thread and PD notification is issued in
blocking call. This avoid issue of late PD notification due to
delay in qmi handle destruction.
Change-Id: I0c7efa336f7849ffde95143e3a0134ebb9e33022
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
spcom_handle_lock_ion_buf_command() should decrement ref count,
that is incremented by ion_import_dma_buf().
Change-Id: Ic7f814bd2791b4dbcf6356f64ad32ee85c6cb103
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
This patch provides the support for segregate different PD data onto
separate buffers and then onto its own data stream based on received
diag private id header from the peripheral data packets.
This patch adds a new feature mask supporting the feature and
a new IOCTL querying the support of the feature.
CRs-Fixed: 1112307
Change-Id: Id76e718f83e09defc221f9ee169d4676d8e57d8a
Signed-off-by: Manoj Prabhu B <bmanoj@codeaurora.org>
Disable handling of single bit errors for SDM660, as they are
correctable.
Change-Id: I14618e5f2685c08c57a6375e7a80d1090bbf0eaa
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
(cherry pick from commit 179448bfe4cd201e98e728391c6b01b25c849fe8)
This patch adds a max block check for get_data_block_bmap.
Trinity test program will send a block number as parameter into
ioctl_fibmap, which will be used in get_node_path(), when the block
number large than f2fs max blocks, it will trigger kernel bug.
Signed-off-by: Yunlei He <heyunlei@huawei.com>
Signed-off-by: Xue Liu <liuxueliu.liu@huawei.com>
[Jaegeuk Kim: fix missing condition, pointed by Chao Yu]
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Bug: 28271368
Git-repo: https://android.googlesource.com/kernel/tegra.git
Git-commit: 3c714201e02ec08652be4b9544a5267e79bde3a9
Change-Id: Ia5acae04522993d5b60a0bcb5ccc184c66532be8
[d-cagle@codeaurora.org Resolve trivial merge conflicts]
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
Add vbus regulator in USBIN-USBIN parallel mode.
Change-Id: I57d5cc54aa789a942d5b1a5bc33677ba263d3284
Signed-off-by: Harry Yang <harryy@codeaurora.org>
More than one parallel configurations between PMI8998 and SMB138x are
supported. Update the parallel mode from DT.
Change-Id: I07c30e8d4d860acaf24dd5d0608dca6ba3e65559
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Some of the device configurations support multiple external SOCs.
To differentiate physical links, add support for additonal info
about the physical link.
CRs-Fixed: 2024578
Change-Id: If71bf23d798f8bf0b6594a686415fe9b806e4226
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>