There could be instances where the RCG configuration update or readback
could fail. Notify the caller of the failure. Add support to change
scope of mux_div_get_src_div() in order to use it globally.
Change-Id: Ica07c28cede695785db81697effcb40ab6b717d4
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
Added mutex lock to query rt table function also to sync
with other ioctl calls in both ipa v2/v3.
Change-Id: I65d46c0ef28b5e6260c92473fd15e9763de20146
Acked-by: Ashok Vuyyuru <avuyyuru@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
Pick proper app type for compressed input data port in
transcode loopback driver to support compressed input in
DSP loopback.
CRs-Fixed: 2061759
Change-Id: Ib2f66b467456787e08265a0da2bd85bb881a5d61
Signed-off-by: Siddartha Shaik <sshaik@codeaurora.org>
DSP loopback uses QUAT MI2S TX as source interface
so mixer control is updated for QUAT MI2S TX Format
to support compressed and pcm input data formats.
CRs-Fixed: 2061759
Change-Id: I8c283de767f938ae8f4e1180a9dffc79a1da7ff0
Signed-off-by: Siddartha Shaik <sshaik@codeaurora.org>
Maxim20010 buck regulator is used to provide the supply for
graphics rail. The programmable output voltage range is from
0.5V to 1.27V in 10mV steps.
CRs-Fixed: 2062515
Change-Id: I50d3fe4c89f412cda2b58b3f1f19086edcf10553
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
Enable Maxim20010 external buck regulator driver to provide the supply
for graphics rail on msm8996-auto boards.
CRs-Fixed: 2062515
Change-Id: I1e70f16c660de6d3d2a8c138a34157538c19f0f1
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
Add support to early mount vendor partition so that vendor modules
can be loaded during early init.
Change-Id: I2233f6c3b8eab180631ca0a0472b586b7ec854f1
Signed-off-by: Imran Khan <kimran@codeaurora.org>
Zero address is considered invalid address, hence changing
the secure domain mapping space to start from a
non-zero address
CRs-Fixed: 2053654
Change-Id: I27300845fb3839372bc38be1d322a7ad0cd0472d
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Add debugfs nodes to indicate source/sink
HDCP support and authentication state accurately
for DRM HDMI driver.
Change-Id: Ia947c97708c99f23b7b4f23bcad75529b155a42c
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Add a utility function to dump HDMI core registers to
command line. This will facilitate debugging issues by
just calling this API wherever necessary.
Change-Id: I4a6727dca34edf4bb1c240adc7b93f50a7530b98
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Workaround to re-enable BMD while getting battery id was required
when driver is probing. This was done to mitigate driver probe
failures because of failed SRAM access. Getting battery_id from
RR_ADC driver itself takes ~200ms and re-enabling BMD takes 200ms
which increases driver probe time.
With the recent changes in reading batt_id channel from RR_ADC
driver, re-enabling BMD is not required anymore when the driver
probes. Hence move getting battery_id and battery profile to
profile_load_work. This way, there won't be any delay when the
driver probes.
CRs-Fixed: 2062261
Change-Id: Ifeb361e0f82fca65f9570fd1f425c7360445d01f
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
The fence object is allocated in the driver during the buffer queuing
time. When user requested the output buffer fence fd, driver should not
hold on to the fence object anymore because there is only a single
reference to the fence. When user destroy the fence by closing the fd,
the reference is cleared. Driver only needs to destroy the fence object
if the user does not request it.
CRs-Fixed: 2059181
Change-Id: Ic83d93fd3c7f404774007065df02b402adbf80af
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
When getting power down setting, there is an untrusted pointer
from a user space pointer.Need to copy to the kernel space first.
Change-Id: I0c66e942453581caac5ea00a54a252840a32972f
CRs-Fixed: 2037398 2037403
Signed-off-by: Terence Ho <terenceh@codeaurora.org>
Use mutex lock before using queuing ioctls like
queuing, dequeing buffers to avoid race condition.
Change-Id: I59c70f2abe3daddf38761a2f17671d3d49f43989
CRs-fixed: 2038086
Signed-off-by: Terence Ho <terenceh@codeaurora.org>
UFS PA errors were observed during data read operation hence Hardware
programming guide have recommended setting QSERDES_RX1_UCDR_PI_CONTROLS
register to value 0x81 which will use CDR DIV4 in all bands and fastlock.
Change-Id: I456354b346aca7abfaa4839d538c5054c3e79fbf
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Remove KP and SY countries from regdb.
CRs-Fixed: 2062687
Change-Id: I41575e415844255d48d2f9e6deca20c1dc656d3c
Signed-off-by: Amar Singhal <asinghal@codeaurora.org>
It's possible for POR to fail and endpoint not enter correct reset
state. Add a timeout when waiting for MHI state BHI transition event
during firmware download.
CRs-Fixed: 2062442
Change-Id: I6af16ec1a514d50b9e984e3fb16696d23e605ba0
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
There is a possibility that load_gpu() can fail to initialize and turn
on the GPU successfully due to system level issues such as a clock or a
regulator not turning on. In such a case setup_pagetable() returns a
NULL pointer which is not handled correctly in msm_open(). This leads to
a crash in INIT_LIST_HEAD() which tries to access a NULL pointer. This
patch properly handles the NULL return and initializes the list head
only if the gpu load was successful, also adds missing NULL checks to
places in the code where the msm_file_private structure was being accessed.
Change-Id: I6eb85227d928a82c3cf2553fd6645affdd986473
Signed-off-by: Sharat Masetty <smasetty@codeaurora.org>
Don't clear io pad power switch setting when 3V support is faked.
This bit has to be cleared for allowing IO pad to switch to 3V when
Vccq is really configured to 3V. But in case of faking 3V where we
configure Vccq to 1.8V only, we shouldn't clear this bit.
Change-Id: Ib1a9a2eb7189e161e22c8baf588453b3f2632eb7
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>