Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
Introduce rules engine module for adhoc driver. This module
allows creating rules based on client votes that can be used
to throttle certain master ports or to receive callbacks when
certain combinations of votes have been made.
Change-Id: I532eb42a9399514131dcda47440f966cfe732f76
Signed-off-by: Girish Mahadevan <girishm@codeaurora.org>
Signed-off-by: Alok Chauhan <alokc@codeaurora.org>
|
|
Introduce a new dynamic throttling scheme for certain "non-real time"
masters based on the available bus bandwidth and the currently voted
bandwidth requirements of some "real time" masters.
Change-Id: Icf019f89bbe2425c706f2fc49884f41110a78299
Signed-off-by: Girish Mahadevan <girishm@codeaurora.org>
Signed-off-by: Alok Chauhan <alokc@codeaurora.org>
|
|
Move the bus scaling trace file to a non-architecture specific
location since the bus scaling device driver is compiled on
multiple architectures.
Change-Id: Ia39818aa18a35e2ccb1780db0149789439c3d391
Signed-off-by: Dan Sneddon <dsneddon@codeaurora.org>
Signed-off-by: Alok Chauhan <alokc@codeaurora.org>
|
|
In the cases where the cpu does not vote for ddr absolute bandwidth and
the instantaneous bandwidths does not fully help at system level use cases.
Add support to take the absolute bandwidth table and the values could
be taken from system-wide analysis done based on instantaneous bandwidth.
Change-Id: I8c283375fe4fcdedd7efc6912a2d3172cf121b78
Signed-off-by: Taniya Das <tdas@codeaurora.org>
|
|
In the cases where the cpu does not vote for ddr absolute bandwidth and
the instantaneous bandwidths does not fully help at system level use
cases.
Add support to take the absolute bandwidth table and the values could
be taken from system-wide analysis done based on instantaneous
bandwidth.
Change-Id: Ic33ad990ae8e0fd12e7accc35635eff4a97d0bca
Signed-off-by: Taniya Das <tdas@codeaurora.org>
|
|
|
|
|
|
|
|
|
|
During suspend we call sched_clock_poll() to update the epoch and
accumulated time and reprogram the sched_clock_timer to fire
before the next wrap-around time. Unfortunately,
sched_clock_poll() doesn't restart the timer, instead it relies
on the hrtimer layer to do that and during suspend we aren't
calling that function from the hrtimer layer. Instead, we're
reprogramming the expires time while the hrtimer is enqueued,
which can cause the hrtimer tree to be corrupted. Furthermore, we
restart the timer during suspend but we update the epoch during
resume which seems counter-intuitive.
Let's fix this by saving the accumulated state and canceling the
timer during suspend. On resume we can update the epoch and
restart the timer similar to what we would do if we were starting
the clock for the first time.
Change-Id: Iee2a1cca42e5b681347ea0607e9af420a63892d7
CRs-Fixed: 696826
Fixes: a08ca5d1089d "sched_clock: Use an hrtimer instead of timer"
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tearing down BAM pipe causes accessing of BAM registers
(indirectly by the BAM driver). Register access in turn
requires clocking to the internal bus. Lack of clocking
may result in a crash.
Change-Id: I692e83ea38cafe34f4c9f34dda3010d57c200237
Signed-off-by: Sana Venkat Raju <c_vsana@codeaurora.org>
|
|
|
|
This change flushes any queued work related to power collapse,
once the device is power suspended.
There are applications which do not destroy video instance
on suspending the device. For such applications, if the device
is power suspended, video driver does not prepare venus for
power collapse.
Considerable power saving is observed by power collapsing
venus before the device goes in suspend state.
Change-Id: I11252e45b10d0d3d3eefb38994acd083c847bbb8
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
Signed-off-by: huiy <huiyQuic@codeaurora.org>
|
|
|
|
|
|
|
|
Add a debugfs node to dump
FG scratch pad registers - Address 0x80 to 0xFF
FG config registers - Address 0x24 to 0x2F
FG Shadow registers - Address 0x60 to 0x6F
Change-Id: I6ad0bd0d2f22bd7c50ec9fe7ea568f1302608a81
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
|
|
Add logic to change the battery capacity and CC_TO_SOC
scaling coefficient. The updated battery capacity takes
affect immediately.
Change-Id: Ic2f4e3256209caaa4b13b8bc56f8c25901b52f57
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
|
|
SMB1360 supports two battery profiles which are autonomously
selected based on the RID (batt-ID) connected on the BMD pin.
Due to a design constraint on the PM8916 + SMB1360 platform,
the battery-ID is not connected to SMB1360's BMD pin but to
the PM8916 BID pin. This prevents SMB from autonomously
selecting the battery profile.
Implement a logic to force selecting a battery profile by reading
the RID from PMIC (VADC channel) and then using the value to compare
it with the pre-defined profile-RID pairs of the supported SMB1360's
battery profiles. If the current battery-profile does not match the
RID, switch the battery-profile. For the above logic to work
add new DT properties to specify the battery-ID reference voltage
(vref), resistor-pullup on the battery-ID line (rpull-up) and the
battery profile-RID pairs for the pre-loaded SMB1360 profiles.
While at it, fix the battery-ID detection interrupt decode logic.
qcom,batt-profile-select - Enables the battery switch logic
qcom,smb1360-vadc - ADC handle to read the BID
qcom,batt-id-vref-uv - BID Vref volatge
qcom,batt-id-rpullup-kohm - Rpull-up on the BID line
qcom,profile-a-rid-kohm - Profile-A RID
qcom,profile-b-rid-kohm - Profile-B RID
Change-Id: I68f1967fca8620696900fb362919d5f87284b32a
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
|
|
The fuel gauge in smb1360 is active when device powers off with a
battery connected. The FG sampling increases the standby current by
100uA which is undesired when the device is powered-off.
Add an optional property "qcom,shdn-after-pwroff" to shutdown smb1360
when device is powered off. Doing this prevents a 100uA draw after
power-off and does not impact the SOC accuracy as overall device leakage
is much lower when the device is off.
Change-Id: I1f39c5703ddad0ef9aa25fcb05af84a4ba1c5eab
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
|
|
In the pulsed IRQ configuration, SMB1360 can generate
pulses on the SMB_INT pin to indicate error conditions such
as charger-timeouts/temperature faults. Enable this configuration.
Change-Id: I4cd17257652c6a3fb9520dea0293d2d05fff6923
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
|
|
|
|
Add battery device tree data for the 1850mAh 4.35V battery used
by qrd msm8916-skuic board.
Change-Id: Ice7e1902c08e5b0693bfd4cf8fab397ecf5c3485
Signed-off-by: Chunmei Cai <ccai@codeaurora.org>
|
|
|
|
To disable the input current from USB the software driver disables
charging. If the charging stays disabled at power-off, it remains
disabled forever even at the next power-on. This is because in some
designs the SMB1360 does not get reset across power-offs and continues
with the last configuration when it was powered on.
Fix this by setting the charge current to minimum instead of disabling
charging. This keeps charging enabled in all scenarios. However, the
device will charge with a minimum current of 100mA as long as the
charger is present.
Change-Id: I4630c779ec70ac1dd0c397ffc22fbc2b8ef40cff
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
|
|
|
|
Based on hw version the tick count needs to be converted to micro
second. Hw version of AVTIMER in 8916/8939 is V2. It is configured
to generate 27 MHz tick. So the ticks read from registers needs to
be divided by 27 for micro-sec.
CRs-Fixed: 689849
Change-Id: Ie1155572596861f6739a4dd585a2307109180aaf
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
|
|
Sub System Restart[SSR] framework allows driver to handle
unexpected crash in middle of operation.
Also, adding support clk_div dtsi entry to calculate
avtimer_lsw value.
CRs-Fixed: 689849
Change-Id: I521e3c010dadd00a06a0fe8998a1759b2eb81b55
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|