Whenever the battery profile is loaded, notify charger SW with
float voltage and FCC obtained from the battery profile.
Change-Id: I0419b34fde9d74460b849ee8a7ef7e2cdf5592d2
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Fast charge current (FCC) and float voltage are parameters that
are battery specific and needs to be set based on the profile
detected by Fuel Gauge driver. Expose the following properties
from battery power supply so that FG can set them.
- POWER_SUPPLY_PROP_VOLTAGE_MAX
- POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX
Change-Id: I72465484b154b1a758285d58906ce7661a246767
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Try.SNK is not permitted in PD per spec. Disable it while
pd_active is true.
Change-Id: I90891232d37b95f011b3f2d5278f0fd0f4c9eb71
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
The policy engine needs to be informed that its time to start
its activities when APSD results are available and/or PD_ALLOWED
is decided. USB type property shouldn't change after that.
Since HVDCP_TIMEOUT_VOTER is the last one to cast its allow vote
in the sequence, use it to reflect the PE_START property.
While at it since PE_START property is returned assuming an atomic
context, the read of PD_ALLOWED could be moved to its sleepable
variants. This aids in keeping the policy engine code simple and also
assures race free code.
Change-Id: Ib98ac10d87200a2fd5492e27399f696f2468eba6
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Make sure to properly clear the PD_IN_HARD_RESET property upon
reaching the SNK_Transition_to_default state to ensure that the
charger driver is notified that hard reset has completed. Move
the clearing of pd->hard_reset flag here as well for clarity.
Also clear the pd->in_pr_swap flag when initiating or receiving
hard reset signal as that should promptly abort any PR swap
operation in progress.
Change-Id: I967e3841af614ecd2129bf60dc08a1b19731c4e3
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Support the new POWER_SUPPLY_PROP_PE_START property which
indicates when the policy engine state machine can begin.
This helps to simplify the psy_changed() routine as we can
now rely on this property to indicate that PROP_TYPEC_MODE
and PROP_TYPE are already settled. The state machine work
can now simply begin when seeing a change in TYPEC_MODE.
This replaces the previous use of PROP_PD_ALLOWED which prior
to commit 18da08334e ("usb: pd: Handle PD_ALLOWED within
state machine") was intended to be a marker to start up
the policy engine but now simply indicates whether or not to
start PD comms. We can now move reading of this property to
usbpd_set_state() as it is now only needed locally in the
SNK_STARTUP handling.
Change-Id: Ia0b9e5b011ae72e1afcaf5109b8253d124afc021
Signed-off-by: Jack Pham <jackp@codeaurora.org>
This property will be used to indicate to the policy engine that it
should start its activities.
Change-Id: I9deb48f7bff71b022c5899e6eff7617526d02324
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
A merge conflict resolution caused a break statement to be dropped in
the case block for reporting input_current_limited property.
Fix this.
Change-Id: Ic5c9626628f05f3167f9f8d0b78b04b83446f413
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Correct the secure address threshold to 0x0A since Misc peripheral has
secure registers starting as early as 0x0A
CRs-Fixed: 1048242
Change-Id: Id7ec03919e2fd08540cd7e677bf5e4048d73c23d
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Expose the parallel distribution percentage and allow it to be
modified.
Change-Id: I0c9221c6a748aff5e8fbe889316f729155eded3e
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
The parallel charger can collapse the input adapter. Impose a
power limit on the slave charger by limiting the slave FCC.
Change-Id: I02a3dc02911646240a1ecee41584903aab971d81
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
When sched_boost is set scheduler needs to place task on the least
loaded CPU or performance CPU for better performance.
Change-Id: I41512b4af9cd56712a241c114583b0021d1395d2
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
As part of GSI reset workaround, a 1ms sleep needs to be added
between the first reset command and the second one.
Change-Id: I6131aa646edfd6192e4f0895a7cc97728d6f7536
CRs-Fixed: 1079245
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Update high pass filter cut off frequency register after
decimator clock enable to reduce click and pop in recording
path.
Change-Id: Idee07f2104911180a9ca60490fe30f628f90b71f
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
The range check for target load is incorrect. Fix this. This is only a
sanity check to catch badly specified target loads.
Change-Id: Ia90d020f5e0bdf37c600661a1c246dab5b637b3b
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
Add a sysfs entry to enable control of notifications
from pwrscale to devfreq.
Change-Id: Ife0a31e96975239bf4fefd59ac6266568c4db1a5
Signed-off-by: Jonathan Wicks <jwicks@codeaurora.org>
bam can represent the transport used for the function. Hence change
the name from qcrndis to bam.
Change-Id: Ie153ae9cc00a72287b10623d63f29c08a1154cb9
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
The demux driver migration from kernel 3.18 to 4.4 added
extra parameter to dmx_ts_cb, dmx_section_cb callback functions
to send demux status to dmxdev filters. Revert back the change
to original prototype.
CRs-Fixed: 1079183
Change-Id: I4bdced9942e6524e8cc21410532fa7231049454f
Signed-off-by: Udaya Mallavarapu <udaym@codeaurora.org>
Add support for CDSP PIL which facilitates the loading of CDSP
firmware, authentication and bringing it out of reset.
Change-Id: I46b5da53614bdac740a1c85b0b3072cae32d20f7
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
When the capacity learning algorithm completes, we store the
learned capacity to BattCapActual word in FG SRAM. Though this
is correct and needed for coulomb counter to operate, value is
not retained across reboot. Backup the learned capacity to a
scratchpad SRAM word (address 74) to overcome this.
Change-Id: I39c257876776a9e9c872add1366569394c49ef01
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Move the header file of core control to the standard linux include
directory to allow other entities to include this file.
Change-Id: I2ddb8b3b96063be3c6a6cb6bc333998e007f9de7
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
It is possible that codec master clock enablement could race from two
different execution contexts, causing the mclk to be not enabled at all.
This will result in failure of use cases that expect the clock to be
present. Fix this issue by making sure the race condition does not
occur during mclk enablement.
bug: b/30983442
Change-Id: Ie254b8876524956b816267eaaed205f65641c000
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>