The CSC matrix used in the CDM block should be
updated to BT2020 format from the default value
during HDR video playback.
Add support in the SDE driver to enable switching
CSC matrix of CDM block to BT2020 during start of
HDR playback and restore it at the stop of the
playback to the default CSC.
Change-Id: Ic589380188ddef8ada2c8bbc0ca945bb1f319c85
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Currently only BT601 CSC matrix is available for use
in the SDE driver.
Add BT709, BT2020 CSC matrix definitions to SDE driver.
These shall be used during different use-cases such as
HDR video playback by switching the CSC matrix based on the
use-case.
Change-Id: I70a543193d08217cbdb6c4af739b3777dde4a25d
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
CDM block is always using a limited quantization range
matrix.
This can be overridden to use a full range matrix if
the sink supports override capability or the mode is a
non-CEA mode.
Adjust the matrix selection logic to accommodate these
conditions.
Change-Id: I708412a923fb0d47e798f35ebe14b4c2f1a72fc9
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
CHARGE_COUNTER is a required battery power supply property. Add it.
Change-Id: Ieb9c64447f88213479ce14b738f71fa703ffc194
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
CURRENT_MAX and VOLTAGE_MAX should be used to show the current values
for the charger. The driver currently uses them to communicate with
the USB and PD drivers.
Update the code such that USB uses SDP_CURRENT_MAX to set 500mA/900mA
current limits after enumeration and PD uses PD_VOLTAGE_MIN/MAX to set
the adapter voltage limits.
CURRENT_MAX now shows the max current that can be drawn from the charger
and VOLTAGE_MAX shows the max voltage that the charger can negotiate up
to.
CURRENT_MAX and VOLTAGE_MAX can no longer be set.
Change-Id: I660e39effc1862051cff8b9babc885d8de3f9c84
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
SDP_CURRENT_MAX is used to communicate the maximum current negotiated by
the USB phy. PD_VOLTAGE_MAX is used to communicate the maximum voltage
negotiated by the PD phy. PD_VOLTAGE_MIN is used to communicate the
minimum voltage negotiated by the PD phy.
Change-Id: I8332f7072c99c2c4e009607d92ccfb47534cc23b
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
In some cases of stopping a channel,
the CH CTRL interrupt arrives late even though the channel is
already stopped. This change will check the channel state after
timeout occurs.
CRs-Fixed: 2090459
Change-Id: I4b99e8fb6710dca16047025a614fb734995934a1
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This reverts commit 9ec3ce38d7.
This change brings one NULL pointer in display kernel booting, which
will bring crash on msm8996 lite board. So revert this commit temporarily.
Change-Id: I7e11b78b47f0e2f2f5cc05a0220f1ff7f3a1addd
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
Add a device specific flag for new vmid heap shared feature.
Change-Id: I9be679f9edd0048acbb057ceff4d877c630e4258
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
In dwc3_msm_probe, when need to defer probe, driver should clear
resource has been allocated and de-attach the children device.
of_platform_depopulate is the complement of of_platform_populate to
remove devices created here. And driver also needs to destroy
workqueue in error case.
Change-Id: I234198eba45842f86c736dd459096ebc4fced807
Signed-off-by: Ziqi Chen <ziqic@codeaurora.org>
Add the debugfs support for full power on sequence to boot device,
full power off sequence to shutdown device, PCIe link up/down and
powering off device only. It can help to debug device boot issues
without WLAN host driver.
Change-Id: Ie1e65719eff0918cf64d1f0926ec36cad1c869e6
CRs-fixed: 2059087
Signed-off-by: Yue Ma <yuem@codeaurora.org>
Only HDMI INTF3 should need cdm block, other
INTFs do not need cdm.
Change-Id: Iff355dae456ed432efd84dff72ec85b83dbb93f2
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
Since 'timestamp' is of unsigned int type, for larger timestamp
the format specifier %d can show negative values. Fix this by
using %u format specifier for timestamp.
Change-Id: I621dfd4843099cb27436006500fe3342d1d5ddf4
Signed-off-by: Abhilash Kumar <krabhi@codeaurora.org>
Provide support to enable/disable sw jeita using a power supply
property.
Change-Id: Id1c2a4bcd8caece5ed7591dc5ab5bf3ac2207cba
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Disable sending dummy BDF(board data file). Enforce to use real BDF
by default.
Change-Id: Ib0cf267af8ddea8a702f8ac6774063466094f52e
CRs-fixed: 2059087
Signed-off-by: Yue Ma <yuem@codeaurora.org>
Add a devicetree "disable-wake-on-touch" property support
to disable GPU wake up on touch input events. This will
help save power in case of unintended taps and swipes,
for example, when the screen is wet.
Change-Id: I35768dc78c473272472aaf9c0e09e66d75817b2c
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
When sync-wait-broadcast is enabled, panel status is read on both the
controllers. But for NT35597 DDIC, correct response is sent only on the
master controller. Thus, disabling sync-wait-broadcast to avoid reading on
slave controller for this DDIC for msm8998 and sdm660.
Change-Id: Idd4f82d20b416c871e8124b45a996df6746e6c4f
Signed-off-by: Rashi Bindra <rbindra@codeaurora.org>
Sometimes, after user space is up and starts the handoff for early
animation/display, page freeing error happens like below.
The error happens in a very small possibility, but will lead to
device rebooting.
Call trace:
dump_backtrace+0x0/0x1b8
show_stack+0x14/0x1c
dump_stack+0xa8/0xe0
bad_page+0xf0/0x118
free_pages_prepare+0x100/0x2cc
free_hot_cold_page+0x38/0x1a0
__free_pages+0x34/0x48
_sde_splash_free_bootup_memory_to_system+0x78/0x9c
sde_splash_clean_up_free_resource+0xbc/0x1f0
sde_crtc_complete_commit+0x114/0x14c
sde_kms_complete_commit+0x50/0x98
complete_commit+0x684/0x6b0
_msm_drm_commit_work_cb+0x30/0x38
kthread_worker_fn+0xcc/0x170
kthread+0xf8/0x100
ret_from_fork+0x10/0x20
The issue is caused by race competition.
In async commit mode, the first is, mutex lock should be involved to
ensure the member of splash_info structure can be protected to
read/write in multiple threads. And the second is, 2 DSI connectors
are available in kernel, and the coming sequent commits may happen on
one DSI or on two DSI respectively. Because DSI interfaces shares the same
resource in LK, if the consecutive commits are for one DSI, DSI resources
could not be released, as another DSI is still visiting and using these
resources. So till confirming the commits for different DSIs have been
done, it's safe to release DSI resource.
Change-Id: Ie6386e3e58d5320cd4e2caab9a07b4e659eb8780
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
Signed-off-by: Yujun Zhang <yujunzhang@codeaurora.org>
DVI device does not have CEA extension blocks, we could
not get max TMDS clock from EDID.
Change-Id: I9adcb3006066c2abe6cd79c79865a4f954c1450c
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
On each sg of secure CMA buffer to set/clear page private bit,
we should use the sg_page(sg) rather than sg_page(sgt->sgl).
Change-Id: I05300d9d3a0931d2a0c113f945b45136e0dea01e
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Core IPA driver passes wrong end-point index to HAL
when generating aggregation force close parameters
values. Fixed the call to pass the correct index.
CRs-Fixed: 2082839
Change-Id: Icc0fd2ce8a23bf0e3334f54b27b850ebf92b58a1
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
Get the physical address of memory from ion FD and
assign it to ADSP for secure playback scenario.
Change-Id: I51019f5da6fb5fedefc81504b192f985b851ab12
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>