Add mutex around qseecom_set_client_mem_param to prevent an
ioctl thread modifying and corrupting data which is being
processed by another ioctl in the other thread
Change-Id: I0cfb8afab4001c2913be693dfe44c761b9568893
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
The call to kasprintf() can fail, with a failure to
allocate memory. Handle the condition appropriately.
CRs-Fixed: 1014400
Change-Id: I83d3a6c8bdfd7a104b88a3bedd50f49faeecd97a
Signed-off-by: Hanumant Singh <hanumant@codeaurora.org>
When pil loading done through user space helper, there is a possibility
that signal could be pending on thread that initiated the pil, which would
lead to pil failure. To avoid this issue, move pil loading for ADSP, SLPI
and CDSP to separate workqueue in respective loader drivers.
Change-Id: Ie60a7eba7c52ac1565ce166d0e367379cce0b03e
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Averaging 10 die temperature samples reduces error caused by
a trim issue.
Change-Id: Ie0b9477c121df92544280b8e322c2205c680f6eb
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
700Khz is not a harmonic of the digital clock and is optimal enough
for all vbus ranges. Running the smb in the non harmonic freq range
is required for correct TDIE adc reporting.
Change-Id: Ib70d64cd72b7408474fd64df287f6404d3749764
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Add placeholders for the KGSL power limit functions if
CONFIG_QCOM_KGSL is not enabled in the kernel config.
Change-Id: Ic0dedbad15b54cd8c3eba1b0649cb23193dbc16c
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Kernel compilation warning is generated due to
these uninitialized variables access. This change
fixes them by initializing the variables.
Change-Id: Ifae04fe5e4d1b9a0c2c399a3c6746c38dea5c4cc
CRs-fixed: 2004062
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
ipa3_get_ep_mapping() is used to map an IPA client to
IPA endpoint index. The index is used as array index.
This change validates that the returned index is
within the valid range.
CRs-fixed: 2012203
Change-Id: I25df8d0c9b60a5290f2457dd2ed77f2c7e78b46f
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
PBS driver triggers the PBS event specified by the client
driver to execute the PBS RAM configuration. Enable it for
sdm660 targets.
Change-Id: I95c70295805d31506c864546b763bef8a5e7b4bf
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
To handle Cx peak current limit on SDM660, GPU needs
to call Cx ipeak driver APIs when it switches between
threshold points.
Cx ipeak driver will throttle cDSP frequency if all
the clients are running at their respective threshold
frequencies to limit Cx peak current.
Change-Id: I5ffcf1a42523072d2b8b7bc0022eb3cc067acbb9
Signed-off-by: Rajesh Kemisetti <rajeshk@codeaurora.org>
Updating min frequency for memlat voting from 787MHz to
1113MHz to avoid intermediate DDR frequency switching on
SDM630 target.
Change-Id: I4a66efcd3301c3662b48b11c11f83a97c6562f31
Signed-off-by: Nikhil Kumar Kansal <nkansal@codeaurora.org>
Add MBA carveout between ADSP & cDSP in sync with
v1 memory map.
Change-Id: I65af5e01af1e5dd3de7f0666017dcd82ea8f7293
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
Use snd_soc_kcontrol_codec instead of snd_kcontrol_chip
to obtain the codec information from the kcontrol.
CRs-Fixed: 2012091
Change-Id: I01e3d7d1a4237ac631bbc4bd4d1c047b8b7aa207
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
For cpu frequency mitigation, there is one common device request
handle for all BCL events. There is a possible race condition for
frequency mitigation request if two BCL events are cleared
simultaneously and cpu frequency mitigation handler for these two
events are handled in different cpus. This gives rise to a scenario
where cpu frequency in mitigated state even though all BCL events
are cleared.
To avoid this race condition, serialize frequency mitigation request
using a mutex.
CRs-Fixed: 2005131
Change-Id: I29b189b2ecd18603441d0b69faa4c38123244a4a
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
The PBS driver helps the client drivers to trigger the PBS
event to execute the PBS RAM configuration as requested by the
client driver.
Change-Id: Ic5d1290ffa0b66ac7a8f68529aafcf0b871ee3e8
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
HLOS client send request to SP server and expect response within timeout.
if timeout expires, return ETIMEDOUT error, rather than a general error.
Change-Id: Ic7691848ff133196bf31294c010e98846de2c470
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
Dload type imem offset is corrected for SDM630, so that
correct imem address is updated.
Change-Id: Ibed79e05f528028b10e250e5a41047f2e4255add
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Dload type imem offset is corrected for SDM660, so that
correct imem address is updated.
Change-Id: Ic6f4ca6aef80003fe7547f473c515a3368cb555e
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Clients are not getting notification if qmi connection to locator has
not been established. As a result of this clients are waiting forever.
So to avoid this notifying the client in case of qmi connection fails
to service locator.
Change-Id: Id1625c18db812831860355e987a97789357dda13
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
SDM630 supports multiple GPU power level speed bins. This
change adds all supported GPU power levels speed bins.
Specific speed bin will be used based on efuse value.
Change-Id: I9cbc786c05c668b454effefa03578ecf98e66c5f
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
A508 GPU has multiple frequency plan, for loading a
specific frequency plan add speed bin read capability
for A508 GPU.
Change-Id: I32a030bec438edc74f1e78bfb2ea86e7a3f60dab
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
In HDMI non-pluggable case, it's supposed that there will
not be hotplug events, so ignore the HPD interrupt and do
not schedule the HPD work.
CRs-Fixed: 2010135
Change-Id: I72b9c3fb0f831ddab4be0545c37cd9189d4afa41
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Audio codec needs audio extension block data in EDID,
so add support for providing this information in ops
registered by the audio driver.
CRs-Fixed: 2010135
Change-Id: Ic1b389872171d5faade38d5ff484be065a9dc489
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
In HPD case the HDMI driver communicate with external display
module by specific notification and acknowledge interfaces.
Add this support to enable the communication.
CRs-Fixed: 2010135
Change-Id: I24ac1e0f0cb1e3946e2a53e4bf72bafbd84e4395
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
Aggregation for frequency is not enabled all the time. The aggregated
load is attached to the most busy CPU only when the group load is above
a certain threshold. Print the aggregation status in sched_get_busy
trace event to make debugging and testing easier.
Change-Id: Icb916f362ea0fa8b5dc7d23cb384168d86159687
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Make ext_display a standalone module independent of
framebuffer driver, so that it could be shared by
various drivers such as framebuffer and KMS.
CRs-Fixed: 2010135
Change-Id: I336c556cbfbd66d3cb3467acaea038d5d3651f67
Signed-off-by: Ray Zhang <rayz@codeaurora.org>