Export core control boost function to make it accessible to kernel
modules.
Change-Id: I94359afa433ad57dd5bfeae3cb78a1f196cd02fe
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
CTS malloc tests on Android 'N' expects higher entropy in
mmap returned address. Present value of mmap random bits
is not providing enough variations for 32 bit tasks.
Increase mmap_rnd_bits for 32bit and mmap_rnd_compat_bits
for 64bit targets to value of 16.
Change-Id: Ibf6463467f28221470619b4f43ece062d41ae6b8
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
Per hardware requirements update dtsi file to remove
min svs power level.
CRs-Fixed: 1085733
Change-Id: I066804e9f8bc527d58dd5199664a5756a0f3d298
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
Ensure variables are set before the are used to prevent random behavior.
Change-Id: Ib31e5aca648c0f442afe4cbe576ad79786fe6427
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
There are couple of instances where we are declaring
variable without proper initialization and we
might end up returning these uninitialized
variables. Fix this by initializing them during
declaration.
Change-Id: Icd5b504c35683e94383d2cefd186f66000478e82
Signed-off-by: Susheel Khiani <skhiani@codeaurora.org>
When IPA uC fails to stop a GSI channel with GSI STOP_IN_PROG
state, apps needs to sleep for 1ms and retry.
Change-Id: I9e6022ab996861d3d78721aadea9e6116ded4e0f
CRs-Fixed: 1087474
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This reverts commit bfebb79e7c ("clk: msm: clock-gpu-cobalt:
Update the graphics core clock frequency") since we now want
to enable scaling the graphics core clock upto 710 MHz on
MSMCOBALT v2.
Change-Id: I2715197a2b5cbe41da5b1983ff3066fa5d42c483
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
The reliability algorithm has a dependency for OSM to be initialized
before it is enabled.
Enable reliability algorithm in the LMH DCVSh hardware for both the
clusters from KTM. KTM is enabled, only after OSM populates the OPP
table. So this solves the dependency.
Change-Id: I4a382915a6c3a6b9d445ec1f5d57fb499a011f1a
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
Currently the code depends on implicit type conversion when converting
ADC readings. Make the type conversions explicit.
Change-Id: I09b5d4cd219b0a53559176525d9b501e5a6dc0c9
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Currently when the battery is charging (sinking current) the ibatt is
positive. Change the scale polarity so that ibatt is negative when
the battery is charging.
Change-Id: I431dcc766df94adb7ee85d4cb32d9181a74d871a
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
PMI8998 register 0x1690 BIT(2) is incorrectly documented. This bit enables
a feature to disable the parallel charger via STAT when the PMI is
supplementing a system load using the battery. This feature is not
recommended since SW is limiting the power that the parallel charger can
draw based on the input power available, and the default power
distribution ensures that 50% of the available input power is allocated to
the PMI. Disable this feature.
Change-Id: I1e5400eb64b6b61076617b5b26fc750c6e8d0270
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Update the qcom,allow-aging-voltage-adjustment property for
VDD_APC0, VDD_APC1, and VDD_GFX CPR regulators in order to match
hardware fusing. Aging fuses will be blown for VDD_APC0 and
VDD_APC1 on parts with local CPR revision 4 and for VDD_GFX on
parts with global CPR revision 3.
Also update the open-loop and closed-loop voltage adjustments so
that the maximum 15 mV aging margin is applied on all parts in
which aging adjustments are not enabled.
Lastly, enable open-loop aging adjustment for VDD_GFX so that
the aging voltage margin is added back into the open-loop voltage
as needed at runtime.
Change-Id: I481abdd54ce1e75bdebf908a61d6b484b377f55a
CRs-Fixed: 1081084
Signed-off-by: David Collins <collinsd@codeaurora.org>
After commit 605ad7f184 ("tcp: refine TSO autosizing"), kernel
throttles uplink TCP data in case there is not sufficient amount
of socket buffer available due to delayed release of buffers
through TX completions in the physical net device.
Work around this by orphaning the socket buffer. This makes the
kernel assume that more packets can be sent in this scenario.
Out of band signaling and flow controlling at qdisc / HTB layer
should guarantee no issue for flow control.
Throughput difference for IPv4 TCP UL -
Before change : 143Mbps
After change : 146Mbps
CRs-Fixed: 1088104
Change-Id: I251ed7938c29e08954d4c81d3041cb235a39d266
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
When PD negotiates a higher input current limit the ICL override bit will
be set. If a reboot happens then the ICL override will still be set after
the reboot. Clear the ICL override during probe to ensure that the correct
ICL is honored since PD is neither enabled nor has it negotiated a higher
ICL yet.
Change-Id: Iaa5f221d530721f7ff4a413a609192baf98ff359
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
schedule_work(&timer->work) appears to be called after
cancel_work_sync(&info->timer->work) is completed.
Work can be scheduled from the PM_POST_SUSPEND notification event
even after cancel_work_sync is called.
Call stack
-004|notify_netlink_uevent(
| [X19] timer = 0xFFFFFFC0A5DFC780 -> (
| ...
| [NSD:0xFFFFFFC0A5DFC800] kobj = 0x6B6B6B6B6B6B6B6B,
| [NSD:0xFFFFFFC0A5DFC868] timeout = 0x6B6B6B6B,
| [NSD:0xFFFFFFC0A5DFC86C] refcnt = 0x6B6B6B6B,
| [NSD:0xFFFFFFC0A5DFC870] work_pending = 0x6B,
| [NSD:0xFFFFFFC0A5DFC871] send_nl_msg = 0x6B,
| [NSD:0xFFFFFFC0A5DFC872] active = 0x6B,
| [NSD:0xFFFFFFC0A5DFC874] uid = 0x6B6B6B6B,
| [NSD:0xFFFFFFC0A5DFC878] suspend_time_valid = 0x6B))
-005|idletimer_tg_work(
-006|__read_once_size(inline)
-006|static_key_count(inline)
-006|static_key_false(inline)
-006|trace_workqueue_execute_end(inline)
-006|process_one_work(
-007|worker_thread(
-008|kthread(
-009|ret_from_fork(asm)
---|end of frame
Force any pending idletimer_tg_work() to complete before freeing
the associated work struct and after unregistering to the pm_notifier
callback.
CRs-Fixed: 1088590
Change-Id: I4c5f0a1c142f7d698c092cf7bcafdb0f9fbaa9c1
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Call diagmem_exit in diag_mhi_exit only if the memory pool is
initialized earlier. If diag bridge initialization fails
allow diag apps to still communicate to other processors
without unloading the diag driver.
Change-Id: I0eb8b9a357f172984612175d1b03dd872df91b6f
Signed-off-by: Sreelakshmi Gownipalli <sgownipa@codeaurora.org>
In PMICv2, typec removal is known when CC detachment is detected,
but this does not work due to a HW bug, when orientation is CC2
with medium or high rd.
Currently in HW, after cable is removed, rd reading switches to
std from medium or high. The software workaround is to catch this
very change in cc state update, and then force a cc detach irq.
CRs-Fixed: 1079913
Change-Id: I284ca8f2221f596432d67117d89e7d501d2bd9a8
Signed-off-by: Harry Yang <harryy@codeaurora.org>
In PMICv2, typec removal relies on CC detachment detection,
but CC removal event does not fire when orientation is CC2
with rdstd, due to a HW bug.
The software workaround is to force typec sink cycles and
poll CC states, until cc status reading confirms detachment,
and PD is notified of typec removal.
CRs-Fixed: 1079913
Change-Id: Ie9ed65d421df57c9bfa4db8e44d358da3b0cdc36
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Estimate the amount of time it will take to charge or discharge the
battery. These values are exposed through power supply properties
time_to_full_avg and time_to_empty_avg.
Change-Id: I53c24deb1cfbd7fea1b2a598ed58c6352c5ff9a2
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
USBIN_INT_RT_STS_REG can be read to determine whether vbus is present
therefore caching the result is unnecessary. Remove it.
Change-Id: Idace48373333dc3ab36aa10e0d90098a68af315d
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
After wakeup from power collapse restore ISENSE registers from
internal buffer.
CRs-Fixed: 1075694
Change-Id: I9cf2f94892bdeb83fab0068902419b1603520364
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
Current logic that optimizes the skip of the enable
and disable of the secure display/camera has a
problem which results in skipping the secure
configuration always. Fix the logic to make sure
we only skip the configuration in two cases:
1. If both features secure camera and display are
disabled and state remains same for current frame.
2. If one of the features is already enabled and
the state remains the same for current frame.
Change-Id: I614aeadf022e01f17660791c0037ceb9f73456a3
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
The USB and DC power supplies should reflect the real time plugin status
in POWER_SUPPLY_PROP_PRESENT.
Change-Id: I08987a383edff181e8e4867d8d795dae58ecf084
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Schmitt trigger result is wrong if PA is enabled.
So, don't check for cross connection when PA is enabled.
CRs-Fixed: 1061507
Change-Id: Iad71abbed72aa40b5c839260f5c297a885f7d128
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
Add API intended for IPA kernel tests.
This API will allow kernel tests to use IPA driver
pdev struct by returning a pointer to this struct.
CRs-Fixed: 1077422
Change-Id: Ideeaa89f15b8895ce7256fed9f614d5c39ef105f
Signed-off-by: Amir Levy <alevy@codeaurora.org>
Signed-off-by: Gidon Studinski <gidons@codeaurora.org>
Add PMIC devices and remove reference of PMCOBALT/PMICOBALT from all
client device nodes. This is for QRD only as it is a different design from
MTP and CDP. In the parallel, delete reference from storage.
Change-Id: I5842c32fbfcd62692a3585f23bfcb0d9c4b5f6c5
Signed-off-by: Zhenhua Huang <zhenhuah@codeaurora.org>
In alpha PLL enable function, PLLs do not require to do
initial configuration as it can be already configured
by pre HLOS. clk_alpha_pll_configure() should be called
explicitly where HLOS configures the PLLs. So remove the
call to clk_alpha_pll_configure() in PLL enable function.
Change-Id: Id3542f6649209929d83e5a2d6230f1d3d7dfa776
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
Add rpm-smd node for communication with RPM subsystem over glink.
Change-Id: I28be6557fa97d65ec9add1d31c854576e21b47e1
Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
As RUMI platform does not require real clocks, add back dummy clocks for
this platform.
Change-Id: I774ffb1e55971ec8097994d1cfe664db5902a8ce
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Change GPU clock plan based on requirements for msmcobalt
interposer platform versions.
Change-Id: I817859817eeb76c565d1604fcb1cc11b0df2dd30
Signed-off-by: Rajesh Kemisetti <rajeshk@codeaurora.org>
Compress framework considers the stream as PLAYBACK
always irrespective of the direction.
Derive substream based on the tx/rx direction from
compressed stream.
CRs-fixed: 1072067
Change-Id: I62c51c23a47f26b221dccef6f83c03aef9f095a7
Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
During migrate_tasks, we have to drop the dead_rq lock in
order to preserve locking order when acquiring task->pi_lock.
This may allow the task to migrate off of dead_rq. Therefore,
don't attempt to migrate such a task again from dead_rq.
Change-Id: Id31b58e231d3dcd7d32e0dc7f264595d60a7c408
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
When display driver looks for a pipe, it checks for
the number of rectangles that the pipe allows.
This number only needs to be obtained from the base
pipe and there is no need to check for this number
on each of the rectangles of the base pipe.
Current code, gets this number for the base pipe
and for each of its rectangles while iterating the
list of pointers; main problem is that in the
loop through the rectangles, the pointer to the
'pipe' has been already increased at the end of the
'for' loop; which causes that the check to see if
the iterations need to continue is done against the
next element of the list; this is mainly a problem
for the last element of the list, since the pointer
would be something beyond the boundaries of the list.
Change-Id: Ie4ac72e460643606f718d5809e65cda70932fb84
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
During atomic commit - validate failures, the newly allocated
pipes and pipes taken from the destroy list are cleaned up.
Currently pipe ndx is checked which can lead to cleaning up
the already in use multirect instead of the rect allocated
in the current validate. Add checks to include checking based
on multirect to avoid such cases.
Change-Id: I7f8fb6630314cdc523490e28d90dd3776bdfeada
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
To improve accuracy update RRADC USBIN current
scaling factor for V/A from 0.5 to 0.53.
Change-Id: Ia13bd8702f337f71dae5d612f6efe55ee8c2a317
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>