From bus driver, use aggre2_noc voter clock handle for voting
instead of using direct aggre2_noc clock, as this clock
can be enabled/disabled/set_rate from multiple clients.
Change-Id: I247f12c90b9b9900ebd9785454e8bd2b9dc13b96
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
Following changes been made to improve soft fault detection,
which will fix un clocked register access in dispatcher_do_fault()
and incorrect declaration of GPU soft fault.
i) Stop fault timer before entering to NAP state
ii) Don’t start fault timer if the dispatcher inflight count is zero
iii) Add ringbuffer empty check in _isidle()
iv) Add device state check in dispatcher_do_fault()
CRs-Fixed: 2012731
Change-Id: I5ce498029f389eeeb428b4ac7fb07afd84d5764c
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Clear ICE configuration once cmdq request processing is done.
This ensures that the key information is cleared by ICE driver.
This call is optional for FDE but required for FBE.
Change-Id: I231ca849aa34c156baa45fceae95debf46dd57f0
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
Adding support for clearing ice configuration.
Once mmc request processing is completed, mmc driver has to
call config_end to ensure key information is cleared by ICE
driver. This call is optional for FDE but required for FBE.
Change-Id: I8c225deda782528a7f220f7d1f81c6240caca1ae
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
Update the driver to support PM660. PM660 add dedicated
register for auto-resonance control and a few other changes
to haptics configuration.
CRs-Fixed: 2016588
Change-Id: Ia9d65bc0a1169b5cba1c122d50d49c8102ac79f5
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
Update the adapter allowance configuration from 5_TO_9V
continuous mode to 5_OR_9V discrete mode, this allows
hardware to detect Over-voltage for 5V adapter.
CRs-Fixed: 1104289
Change-Id: Ie43febb92e5a6e52ce17779d8cea91cbdd2011cb
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Handle LPM when one of the session goes to sleep.
when LPM enable unvote ab/ib of inative session and
vice versa.
Change-Id: I72ab333b24d7ad5ae4deafa758e7e2d92f3cc9d2
Signed-off-by: Ramesh V <ramev@codeaurora.org>
QPNP_MISC driver provides support to read the registers or
support functions required on certain PMICs. Enable it.
Change-Id: Ib496506e60dc94dec1b2292bf0e6fd01583e2f75
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
saved_tgids memory was not freed in free_saved_cmdlines_buffer
which can cause memory-leak when /d/tracing/saved_cmdlines_size
node value is changed. Fix it by freeing saved_tgids
in free_saved_cmdlines_buffer.
Change-Id: I006870c858b7306b7d9c840b7712061985dda310
Signed-off-by: Omprakash Dhyade <odhyade@codeaurora.org>
QPNP_MISC driver provides support to read the registers or
support functions required on certain PMICs. Enable it.
Change-Id: If2a056feca4cc982d8840f6a2159a0788d08cd26
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
qpnp-misc driver supports some miscellaneous stuff which is
needed on certain PMICs. Change it to a platform driver similar
to other PMIC peripheral drivers.
Change-Id: I3f60bbe88616db82b568cc528f076368afd105ca
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
When usb composition switch happens upon cable disconnect and
function bind fails, function's config pointer is set to NULL.
This is resulting in to NULL ptr dereference when config is
accessed from APIs which are called asynchronously and out
side of the usb core driver(i.e. dwc3) context. Fix the
issue by directly accessing gadget pointer from gsi driver
context in those APIs.
Change-Id: I1006881ae1838e8ddc8fa5e9ef501f4c658b54e7
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Add sub-device node to allow mba to be able to load in carveout memory
region for MSM8998.
CRs-Fixed: 2006100
Change-Id: Iff3a83afad159f475d23a579c72d0c7c41c622c8
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
When framework reboot happens, HPD node is toggled
by the display framework. Make sure to send cable
disconnect event to framework when HPD is set to
'low' state.
CRs-Fixed: 1116934
Change-Id: If59ec7c81264ff76b661cdfd8e6b70356a6e1544
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
Add support for suspend and resume events that are
triggered by the run time system. In particular, transition
the clock (link and core) and regulators state depending
on whether the suspend or resume is being processed.
CRs-Fixed: 1103664
Change-Id: I4e3de9b32963c71dfded0f695dc7734b8121e19a
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
Fix the link training routine by removing the updates to
the state control register and the corresponding memory
barrier to complete the register write. This changes fixes
the link training failures seen with VGA monitors over the
Type-C/VGA dongle interface.
CRs-Fixed: 2008753
Change-Id: I501833e02d24d6aa12351eb0bd067a08ad597ed0
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Disable the DP audio engine on receiving the teardown_done
callback from the audio codec. This ensures that the DP
engine is in the disabled (MUTE) state in preparation for
the next audio session.
CRs-Fixed: 2006127
Change-Id: I7c984531d308501690ede36ea959391ebef7599f
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Update the interlaced field for the 1920x1080i60
resolution to show that the mode is in fact interlaced.
This will provide external display clients with the
correct information regarding this resolution.
CRs-Fixed: 2006873
Change-Id: I30f5da1e49e35a81f65508f2766118a58d12ceb4
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Separate the audio and video notifications while processing
the display hotplug events to ensure that the audio subsystem
is notified only when the display is in the correct state. In
particular, the audio subsystem should only be notified once the
mainlink is ready and the DP controller is in SEND_VIDEO state.
This will ensure that the DP audio engine is able to acknowledge
the audio unmute request, which will result in the AFE port being
configured correctly.
CRs-Fixed: 2007534
Change-Id: I702c1de6d4eb10e001d97e1d7e7c545ff481a401
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Set the link parameters that correspond to the failsafe resolution
if there is a failure in reading or parsing the EDID data. This
will allow the display to be configured with the failsafe
resolution and prevent the driver from going into a bad state.
CRs-Fixed: 2002794
Change-Id: I5882e66eee6073da6484903956abdcb3db05a5ea
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Do not check flags for connection requests as it may result
in not processing any subsequent requests that have new
flags added incrementally from the previous connection.
CRs-Fixed: 2007353
Change-Id: Ie867d13d25267962315444797cf21bf57850f088
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
While releasing the device, check if the file session context is NULL
to make sure we are not dereferencing it during file free.
Change-Id: I310271189cf710b81c5182b936189fd57ddedd7b
Acked-by: Vishnu Karthik <vikarthi@qti.qualcomm.com>
Signed-off-by: Sathish Ambley <sathishambley@codeaurora.org>
At the end of ffs_epfiles_create() a message is logged with
the name of the epfile, however this epfile pointer is only
valid in the body of the preceding for-loop. After the loop
exits, it is now pointing one past the allocated array and
results in an out-of-bounds memory access when formatting
the string.
Since there could be multiple ep's created, the name may not
be important to log. Replace it with the count instead. Also
while ffs_epfiles_destroy() doesn't have the same problem,
do the same there anyway for symmetry.
Change-Id: I10551f9c1e056f215ec59335cbf1cde2bad6cc04
Signed-off-by: Jack Pham <jackp@codeaurora.org>
To enable gro_flush_timeout, a driver has to use
napi_complete_done() instead of napi_complete().
Change-Id: I2ea853bb57e15021c001d16d7d1fe7e7ae0c58e7
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
Enable the msm-imem-kaslr_offset node for sdm630
which preserve the randomized kernel offset.
Change-Id: Icb4b6a94a702f07b99513ebd16ebc949b49d919c
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Disable Auto-resonance if calibrated LRA frequency deviates more
than +/- 25% of initial LRA frequency and change error polling
frequency to 20ms.
While at it, fix the calculation of deviation error percent for
LRA rate code.
CRs-Fixed: 1099718
Change-Id: I329415992d3932e389e95995c1503c15ba282b19
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
bus_ops->suspend may fail due to some reason
(for e.g. due to flush timeout). In such cases,
if we return error to PM framework from here without
calling pm_generic_resume then mmc request may get stuck
since PM framework will assume that mmc bus not suspended
(because of error) and it won't call resume again.
Thus fix this by calling pm_generic_resume in case of error
from bus_ops->suspend in mmc_bus_suspend.
Change-Id: Iaef485d0b47b005aa88e61cd77a2b7b65931def1
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
Signed-off-by: Siba Prasad <sibap@codeaurora.org>