Values stored in etm are lost across power collapse.
Add etm save retore nodes which saves etm
values across power collapse.
Change-Id: I9ceb89a255847ca1d9dc01f223283f5664cb8feb
CRs-fixed: 1112224
Signed-off-by: Amey Telawane <ameyt@codeaurora.org>
IPA and GSI firmwares are saved on the file-system as an
ELF file. IPA driver extracts the firmwares and load
them during driver initialization.
This change adds validation steps to each firmware before
loading: load addresses, memory sizes, firmware sizes and
more...
Change-Id: I7d7f66e8e8a9ca0efae08b1e57b25ae4e44cc5bb
CRs-fixed: 1110522
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
Bluetooth functionality is provided by wcn3990 on sdm630. Add device tree
entry having various voltage regulators, clock settings etc.
Change-Id: I8640138f3485e1b1a26fb0f63526ad6083b93193
Signed-off-by: Rupesh Tatiya <rtatiya@codeaurora.org>
BLSP2 UART1 is used as transport for Bluetooth between sdm630 & wcn3990.
Enable it so that Bluetooth can be enabled on sdm630 CDP/MTP/QRD.
Change-Id: I61f300d5a8fa54172acce429ee961f7caef7d404
Signed-off-by: Rupesh Tatiya <rtatiya@codeaurora.org>
Add sdhc ice device tree data to dts files with all
the necessary parameters, to enable the ICE driver
for crypto operations related to disk encryption.
Change-Id: I5bfcf35f4a93ef9ef21508d3c4b3309bb0086511
Signed-off-by: AnilKumar Chimata <anilc@codeaurora.org>
Add ufs ice device tree data to dts files with all
the necessary parameters, to enable the ICE driver
for crypto operations related to disk encryption.
Change-Id: I87463a1c1a064ba2a0597d095e6807931e7b5666
Signed-off-by: AnilKumar Chimata <anilc@codeaurora.org>
IPA v2.6 hardware has 32 bit limitation,
enable zone dma flag to get a kernel
memory allocated in 32 bit space.
Change-Id: I61fc2d28ef4e690a7d03ad68c308a6b6fe5129cf
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
Modify DCC RAM size for sdm660. DCC RAM is used to
store captured information locally in DCC.
Change-Id: Ib9d4ae640e8162d5a3f44739b9289457ee4ae43c
CRs-fixed: 2002031
Signed-off-by: Amey Telawane <ameyt@codeaurora.org>
Temperature compensation is needed for charger die
temperature. Offset and slope coefficients are applied
based on the FAB ID read from the REVID peripheral.
Change-Id: I0bd5712b17b11c245da6d737ea0994e7f17d9837
Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
Add ufs and ufs-phy device nodes to support
ufs as storage device for SDM630 platform.
Change-Id: Ia4059d1663dc7886ac3873bbdcca6023c6ff5643
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
The semantic of hpd and notify have been changed. hpd is
a blocking call which notifies display and audio with the
cable status, and notify is used to complete the hpd call
which waits for the acknowledgment of power on/off. Update
these 2 interface implementations for HDMI.
CRs-Fixed: 1086894
Change-Id: I8603149132e224cb2859d2b808123238d0516817
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Signed-off-by: Lei Chen <chenl@codeaurora.org>
Move all "find_votable" requests before any voter creation
in smb library to prevent multiple creation/destruction of
votables due to probe-deferrals.
CRs-Fixed: 2001651
Change-Id: I03cb30775720a53ad24e1c5d5e075d7442b2729c
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Add a new votable in parallel driver to support wakeup source
handling via pmic-voter framework.
CRs-Fixed: 2001651
Change-Id: Ia2c67d76081c36508d1ad3c3cb3a0be4c1a55814
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Parallel charger registers to power supply framework with name
"parallel" instead of "usb-parallel" thus update all references
of "usb-parallel" with "parallel".
While at it, remove extra NULL pointer check of pl_psy in
parallel enable path.
CRs-Fixed: 2001651
Change-Id: I4150808f7122cef970296553fb70671df12aced9
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Setting sched_freq_reporting_policy tunable to an unsupported
values results in a warning from the scheduler. The previous
policy setting is also lost.
As sched_freq_reporting_policy can not be set to an incorrect
value now, remove the WARN_ON_ONCE from the scheduler.
Change-Id: I58d7e5dfefb7d11d2309bc05a1dd66acdc11b766
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
During SOC masking, SOC 100 will be shown to the user after the
charge termination and as long as the charger is inserted. After
the charger is removed or device is discharging when the charger
was inserted, showing the real monotonic SOC instantly reduces
the user experience. Linearize the drop in SOC so that it can be
spread to a wider range.
Change-Id: I509e59f8e5d9e9addd8c5721369fbcf664158338
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
When SOC masking algorithm is enabled, a SOC of 100 will be shown
to the user when certain conditions are met. When the device
starts discharging after charge termination, auto recharge will
be triggered once the SOC or Vbatt goes below the threshold. When
the recharge is based on Vbatt, a fluctutation in Vbatt can cause
issues in SOC masking algorithm. To make it robust, adjust the
recharge voltage dynamically based on charging status and battery
SOC.
Add a device tree property to allow configuring auto recharge to
be based off SOC or battery voltage. This will help the user to
select auto recharge configuration easily.
Change-Id: I2d749806aa51b9fa747967b592b6622cc12bee65
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
After charge termination, charging status might not get updated
until the recharge begins. This makes charge_full_update to be
not called at all thereby causing SOC masking algorithm to not
clear the charge_full flag. Use delta battery SOC interrupt to
help with this. Keep it disabled by default and enable it after
the charge termination. Disable it again when the user removes
the charger.
Since this needs delta battery SOC threshold to be configured,
add support for it.
Change-Id: Ic1a9f8a065c87efe88e315f2b2e1e1378151531b
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Delta MSOC and BSOC interrupts need to be configured only for
the rising edge as that is sufficient to handle most of the
actions to be done responding to them. Update the interrupt
configurations for pmi8998 and pm660.
Change-Id: I84d6d009c3b5227869309570d94c62bde6bea710
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
When FG is restarted, RESTART_GO bit is set and it is cleared
only when the first estimate is done, signalled by SOC_READY
interrupt. If SOC_READY interrupt doesn't fire for some reason,
RESTART_GO bit will not get cleared. Fix this.
Change-Id: I99261d5020f5012ba0a4e35e543458f9e7b30210
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
During battery hotswap, a strong charger will be supplying enough
current to keep the device up and running. Currently, FG driver
shows up the monotonic SOC and voltage as-is (which is zero) to
the battery power supply and hence to the userspace.
Show a fake battery SOC (50%) and fake battery voltage (3.7 V)
when the battery is missing. If a strong charger is not present,
then the device will be powered down anyways.
Change-Id: Ia2c85d1e75bbf0c937a7e36e786362c473c7f7cd
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
In dual cam sync mode, set all source to async state if
out-of-sync happens.
CRs-Fixed: 1115553
Change-Id: I8d322d5d87dd30c6852052ae9f56d43273af6095
Signed-off-by: Junzhe Zou <jnzhezou@codeaurora.org>
XHCI allows interrupt moderation using imod_interval at 250ns
increments. Add DT parameter to specify this imod_value for
targets mainly with single CPU to reduce CPU interrupt loads.
This allows better balance between CPU usage and performance.
CRs-fixed: 1019219
Change-Id: Id479c162da6492caff4dd83de4054fee63b6abc5
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Currently the TTF is inaccurate near 100% SOC. Adjust the tau scale near
100% SOC and adjust the target full battery current to compensate for
the inaccuracy.
Change-Id: I2f6327fab7b71108a928e8c99107522c73c35e07
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>