SPR hardware can be configured by user-space clients in bypass or
normal mode. Change adds support to allow clients to enable spr
in bypass or normal mode.
Change-Id: I04641774de91ec2b40af00c665ceffd72a255eea
Signed-off-by: Gopikrishnaiah Anand <quic_agopik@quicinc.com>
Expand the DS enum and increase the DS max number
to support DS2 and DS3.
Change-Id: Iff8d591fece20528e30449c228db5cb2047cdded
Signed-off-by: Lei Chen <quic_chenlei@quicinc.com>
This change adds Detail Enhancer LPF blend support from MDSS 9.0.
Support is added for qseed block in both SSPP and Destination Scaler.
Change-Id: Ic8e3732059498a156f51fb93c5fd6638bd731c57
Signed-off-by: Narendra Muppalla <quic_nmuppall@quicinc.com>
In Kalama for sixzone there are 2 new lut entries for saturation
high and saturation medium. There is also a new saturation
adjustment curve, and a SV enable feature.
Add entries in uapi to accomodate the corresponding programming
for these 4 new registers.
Change-Id: Ib9a8a4e233da25de90480c09c40536546f614a01
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
Some of the DPU hardware can have LTM2/LTM3 blocks.
Change adds register DMA to support LTM2/3 blocks.
Change-Id: I5703872994156b42decaaf6d383f8aded218c117
Signed-off by: Alisha Thapaliya <quic_athapali@quicinc.com>
Signed-off-by: Renchao Liu <quic_rencliu@quicinc.com>
Define the data structure and relevant flags for user mode program
to configure the downscale blur block.
Change-Id: Ic2916f5ac8626b93ab8b7adc7270f1e4bf1ec23a
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
Add check to clip the sunlight visibility scale to an upper limit of
MAX_SV_BL_SCALE_LEVEL * 4.
Change-Id: I8cc7bf8fba90e115d046ec030983801ce6d93c1d
Signed-off-by: Ping Li <pingli@codeaurora.org>
Signed-off-by: Yuchao Ma <yuchaom@codeaurora.org>
This change sends a notification to user mode after msm_drm
driver releases the mmio and irq resources on trusted vm transition
request. This is required as user mode has no other way to know
when the resources where actually released. User mode driver earlier
relied on retire fence signaling but retire fences are send before
releasing the hw.
Change-Id: Ia218cfcbf398b2de1ad9578fb9baedf348b067df
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Add new properties to support dynamically turning on and off digital
dimming and setting new minimum backlight.
Change-Id: I3b94190877d556768ba2c92ec59432dec44de0de
Signed-off-by: Ping Li <pingli@codeaurora.org>
Rounded corner mask layer height/width should match the panel height
and width. Change updates rounded corner mask configuration check
to ensure that dimensons match.
Change-Id: I97f544b0a7df1ebea6d8aa3321813649ebc69d82
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Video requires width of linear RGBA8888 format byte-aligned to 256.
Change-Id: I7fa3822abb2912ef78e192756d19a5f8468bd493
Signed-off-by: Ravi Ranjan <rravi@codeaurora.org>
Add helper in util to retrieve IO address mappings for
a given global gpio pin. This will be used by the Trusted
UI framework to secure gpio pins.
Change-Id: If8ad069d724394f0772c9cf7371484a7cdc5bc78
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
The hypervisor is renamed to gunyah now. All 'haven' words need change
to 'gunyah' and 'hh' words in hypervisor interface need change to 'gh'.
Change-Id: Ia7ff6d855eb5548540a2f11a781c2555beb23187
Signed-off-by: Cong Zhang <congzhan@codeaurora.org>
Add a new connector property to allow DC dimming feature to set
dimming backlight LUT. This change also adds a connector event
for client to register for backlight info needed for digital dimming
feature, including OS brightness, OS brightness_max, panel_backlight,
panel_backlight_max, and scale factors from ABA and LTM features.
Change-Id: I78f713fb2b965ca24effd973b4dfa9ff07a852f8
Signed-off-by: Ping Li <pingli@codeaurora.org>
This change adds allowed_dsc_reservation_switch to determine if
dsc seamless switch is supported for DP. Also, based on the
flag, it determines and populates the required number of
available resources for DP.
Change-Id: I9cd7219a50d352369c5bc8386ce7dc25c30b80b6
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
Add support to send a data packet of info, written to
predefined buffers, providing information about each submitted frame.
Add required UAPI definitions for frame data buffers and event
notification.
Add support to read ubwc statistics from hw, based on defined rois.
Change-Id: I51f279de98ae4e2a02b0df6943d334764011d5db
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
DPU has added support for noise injection into the layer stack. Change
adds support for noise layer programming and exposes the hardware block
to the user space modules.
Change-Id: Id176eea54fcdcd5d399457b14133a1ccde07299f
Introduce support for the FP16 format and FP16 color processing
blocks. This includes support for FP16, FP16 UBWC, and inline
rotation on tiled FP16 pixel data.
Change-Id: I06a70cab5447140598682f687129d4f8662524b2
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
NV12 and NV21 formats need to be aligned to 128x32 as per the
requirement.
Change-Id: Ic03ac5786703d8d46a2f2a57559ac334d4e66971
Signed-off-by: Ravi Ranjan <rravi@codeaurora.org>
Add Android make files and Kbuild files to support dlkm
for display driver. Also resolve header and config issues
to allow successful compilation of display driver.
Change-Id: I04d6233864ea54c0a808b295fbdccb83058f1fd2
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>
Expose panel mode from kernel to SDM with SDE connector property
CONNECTOR_PROP_MODE_INFO and set panel mode from SDM to kernel
with SDE connector property CONNECTOR_PROP_SET_PANEL_MODE for
avoiding private change in upstream code in QGKI kernel.
Change-Id: I0629dad9399967cc1118ac02ce30597076ca367d
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
For Waipio onwards, mdp core clock rate needs to be requested
through the mmrm driver, which will make sure the requested
rate can be sustained by the its power rail, which is shared
by multiple clients.
Current change adds the support to request the mdp core clk rate
through mmrm driver as well as returns the corresponding failures
to user space during when a rate cannot be supported by the
system.
Change-Id: Icc0e8ab5b71e8c99baf7913bdbd96d9504cc11ae
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
Adds QCOM fourcc modifiers to support frame buffer size
calculations for linear and compressed tp10 format and
a5x tile formats.
Change-Id: I26df3b1680b2ad5bd548f90eaaba011b4d9f5bd8
Signed-off-by: Orion Brody <obrody@codeaurora.org>
Parse the display peripheral related SPMI SID/Peripheral
mask from device-tree and get the dynamic register range
of these peripherals using the SPMI API. These registers
are appended to the list of display IO ranges that is
lent from HLOS to trusted VM during trusted UI. This would
help in adding restrictions for SPMI registers on HLOS during
the trusted UI use case along with validation of the register
ranges in trusted VM.
Change-Id: I7077dac7962466e845d061e9ccd205f1bc0ce3ea
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
Added uapi and device_caps changes to enable rotator
compilation and address video device registration failure.
Device_caps field is must for video device registration
unless it is sub device.
Change-Id: I7e2f517e5eb3fc5ec6306bd7cee5972dbbaff3d1
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
Add this new IOCTL for user-space to wake up kernel display as soon
as it gets a new frame update.
Change-Id: Icd45b47e99ca0ea996e46ae8335a29f6636bf406
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
When the TUI use case starts, HLOS prepares for sharing the HW
by collecting the register io spaces and IRQ lines from all the
participating subdrivers before the switch. This change
adds necessary hook in the VM event framework, so that
subdrivers can provide their callback functions while
registering for events. It also adds necessary helpers
in the sde io util to parse and populate the IO memory
region that needs to be shared.
Change-Id: I4c0825fa76453a1c1ec421640deff36158d6ef8c
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
Besides SDE, other subdrivers may be interested in participating in
the VM switch. This change provides framework for display dependent
drivers like DSI, DP and RSCC to register for various VM switch
event hooks.
The following hooks to provided through msm_vm_ops:
post_hw_acquire: invoked before the first frame push after gaining
HW access.
pre_hw_release: invoked after the last frame commit before releasing
the HW.
check: check with vm clients for their readiness for HW
releasing.
Change-Id: I616db04e979f78f76f6f97ee3b068dd348339ab6
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
This change adds the support for checksum collection and notifies
to user space as part of drm event.
Change-Id: Ib2a6c38c74d1fb60d274cdb685b74979202604eb
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
Fix headers so that they compile with UAPI_HEADER_TEST.
Change-Id: I2585a18b02abcc3a52ec0079aa4cc1ce55ee1b56
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
This change sets the regulator voltage to zero for all
those regulators which support voltage scaling before
disabling the regulator. Failing to do so causes the regulator
vote to set to the last min value specified in the previous
set voltage call.
Additionally modified the config regulator api and renamed to
get regulator because of the above change.
Change-Id: Ie4c4842db0c08a4d98926ed79503cf84e4d5762a
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Make msm_drm into single module and all child driver
registers and unregisters are handled from parent's
register and unregister respectively.
Change-Id: I017513d1de3b6b25dd5543d7fa7741c0bac1740d
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
A new position control register has been added to the DSPP PCC
on Lahaina. This register controls whether PCC is invoked
before or after GAMUT mapping.
Introduce a PCC UAPI flag to indicate if PCC should be placed
before the GAMUT block. By default PCC will be placed after
GAMUT.
Change-Id: I0bcc35e0ce7f87c7fa29922a6a485abe479d893a
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
Add stub functions for msm_hdcp module in order to prevent
linker issues when CONFIG_HDCP_QSEECOM is not defined, marked
as not disabled or defined as module. Furthermore, a Kbuild
entry for the msm_hdcp.h file so that it is exported.
Change-Id: I0f102bf4c9722d95b897facdab94d83e32f7d29f
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
DPU hardware supports demura feature, which needs to be controlled by
the user-space client.Change adds demura uapi structure for driver clients.
Change-Id: Ifa8c68b7f6a123af6451c110d53b3bc15240d45a
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Add support for enabling and reading profiling counters via
debugfs. This change also introduces RSC rev 4 (first rev
supporting profiling counters), enabling all relevant rev 3
features as well.
Change-Id: I0326215b069a37c91072965379b0b4843916ee0a
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
Add Kbuild entries for msm_hdmi_hdcp_mgr.h to ensure that this
uapi header is copied out from display techpack path for
userspace clients to use after kernel compilation.
Change-Id: I0780a1eb9e85badabc58b172d46c73822c2210e3
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
This change defines data structure for user mode program
to configure SPR block of MDSS hw.
Change-Id: Ia4edb5af757541309c50047f4b7476cac8ddd39f
Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>