| Commit message (Collapse) | Author | Age |
| ... | |
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Power handle API stores the clocks dt parsing return
code in to an "unsigned integer" while of_node API
may return an error code if clocks are not present
in dtsi. That may lead to invalid memory allocation
also. This patch fixes the clock parsing and avoids
free if clocks are not allocated.
Change-Id: I3199c86cfee9a3e0a97b902651841a9d2772359a
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The driver should utilize the ktime_ series of functions to directly
manipulate the time structures rather than converting everything to
nanoseconds. This avoids possible trunction/rounding errors that may
be introduced by the conversion process.
Change-Id: Iac3dd40c679ffc9517881f41650aa5848dab884b
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |/ / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This change modifies the module name to something that's more
specific to DRM support for msm to minimize the possibility of
name clashes with other msm drivers.
Change-Id: Ie1a933bc994657c868c50e3e00b7a954190e7c41
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Enable driver customizations for non-standard DRM clients.
Change-Id: Icfc0fc4d67be3e59a5f266a5b83f98f65a2f42d2
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
CRTC's are created for each display and require a dedicated primary
plane for non-atomic operation. Atomic callflows don't have this
requirement and allow for any plane to be used with any CRTC, as
long as the driver can support it.
This change optionally resets each plane's possible_crtcs bitmask to
allow it to be used by other CRTCs as well.
This allows the driver to work with both atomic and non-atomic
callflows as long as non-atomic clients respect each plane's
advertised primary/overlay type.
Change-Id: Ic613791322c2d9cd578c64db3d6e299451c385f3
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
DRM primary planes are meant for dedicated use by a single CRTC,
so limit the number of planes flagged as 'primary' to the max
number of CRTC's that will be created.
Change-Id: Ia0626a81d033d2c554408cda29a2e6fbe32a6667
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Resource manager failure just prints the error message but
it does not indicate cause for it. This patch prints error
message for each cause to help debugging.
Change-Id: I1f5ab716d09b5f29913e2679b1c8d800bc76b8a8
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Need to teardown all active crtcs during lastclose to avoid
causing faults by turning off clocks on running hardware. To
do this, implement the lastclose handler, and have it send in a
disabling commit for all planes and crtcs. To support this,
need to move the clock enable / disable out of the device open
and close handlers, and into the use case enable / disable in
the encoder, and into the vblank enable / disable handlers. As
well, needed to remove fence refcounting logic from duplicate
state function since the fd at that time is not valid, and the
ref counting itself is unnecessary.
Change-Id: I841bbbdec0e64bb76470007e09066663c13134e3
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | |\ \ \ \ \
| | | |/ / / /
| | |/| | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Enable atomic hardware flushing of two data paths via a single
flush register. Previously, different data paths were flushed
separately from software, which could potentially result in
the flushes happening on different frames.
Change-Id: I858a0f737743d48404f47af85b407e1cddf0a0a7
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |/ / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Current SDE DRM driver uses hardcoded structures
for target catalog information. This patch
removes the hardcoding from software and moves
it to dtsi parsing. It helps to remove the target
specific code drm directory and keep it in dtsi.
Change-Id: I2effaf65d7af5e22714c6e61e7f76a7e24ff86d9
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Connection enumeration is used by writeback device to find the
writeback connector. Using connector for_each macros requires
lock of mode config mutex. Add mutex protection for writeback
connector enumeration.
Change-Id: Ib299f1576cb17d30543daa00df95924b51bc862f
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Bypass wait for commit done if crtc is not enabled and not active.
This avoids invalid atomic commit if crtc/encoder is not enabled.
Change-Id: I54301123025e0115835ea1ce1c7944aa6b0e9d51
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Realtime QoS status is determined in plane atomic check using
mode config for_each macro. This macro requires locking of
mode config lock. Add lock to connector enumeration to avoid
any race conditions.
Change-Id: I6142536268c9261a7af12a8615fa0a2de17ba8e8
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Crtc atomic check is updating zpos of current plane state. This
would corrupt current plane state if the atomic check is initiated
by test only atomic commit. In that case, the test only update
would propgate to current state incorrectly.
Modify atomic check to get new plane state and use this for
zpos update.
Change-Id: Ia7d8653e443c8ad3e3c684959083aeea25f1ff57
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | |\ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This change adds a check to the plane's pipe programming to
avoid writing the source address registers if the new values
are the same as what was written before. This avoids clutter
on the register logs and reduces the register programming
traffic slightly for those situations.
Change-Id: If9c17f14d68e3e82ea37edaf4bb5d7c8cf4eb46e
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\| | | |
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This change modifies the sde plane driver to use local sde
defined macros for debug and error logging rather than
standard drm ones. The local sde macros allow the logs to be
enabled both from the normal drm_debug and Linux dynamic debug
interfaces.
Change-Id: I745d12fb60b70ea5a41ed789c67496e78d4a301d
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\| | | |
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Blob properties under DRM require a new blob to be created for
each unique set of incoming data. By changing the scaler property
to accept an incoming user space pointer and using copy_from_user
to explicitly copy out the structure data each time the property
is set, the user space client avoids the need to create new
DRM blob objects when the scaler config needs to be updated.
Change-Id: I07d4d095b69ddd38e2bf03de61ad51714df84adb
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\| | | |
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Separate the horizontal and vertical decimation configuration to
separate properties instead of bundling them with the scaler
property. This allows for some planes to support decimation even
if the customized scaler configuration is not available.
Change-Id: Icdb16d41139f2a90ffb4dc8a6fa73de5336f892a
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\| | | |
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Update low level register write function to use common SDE
debug macros to allow the logs to be enabled both from the
drm_debug and dynamic debug interfaces.
Change-Id: I232fcd205c52ce91f215fa0b4f2c363103c3864d
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\| | | |
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Blob properties under DRM require a new blob to be created for
each unique set of incoming data. By changing the csc property
to accept an incoming user space pointer and using copy_from_user
to explicitly copy out the structure data each time the property
is set, the user space client avoids the need to create new
DRM blob objects when the csc configuration needs to be updated.
Change-Id: I7586d407ef9d65a927c93b59cdd0128cef498378
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Traffic shaper is not used by writeback; hence remove traffic
shaper from writeback and top hardware drivers.
Change-Id: I006f72877a5a546fb67e80d1344da95d82711fa8
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | |\ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | |/ / / /
| | | |/| | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
vbif ot limit setting is optional. Convert error message to
debug message because target does not specify the ot
limit during bring up time.
Change-Id: I0f096a3345c18598576ad55601d53027ce2a6f4f
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | |/ / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Crtc's are virtualized in msm platforms. Properties that are attached to
crtc might not be backed by hardware. If clients call set/get property
on virtual crtc, set/get shouldn't fail if hardware is not attached
to the crtc.
Change will return success for crtc property set/get in all cases to ensure
that display will continue to work.
Change-Id: I917176d14983d1c5712352df47ec4fc2f214659b
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
into dev/msm-4.4-drm_kms
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Color processing features over period of time will have multiple versions
of the feature which will make property install function big. Break down
the functions into multiple features and call function pointers from
install function for better readability.
Change-Id: I40c4f5341a98ba11fac9804691e0c11a98b77914
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\| | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Picture adjustment block supports vLut block which can enhance the
contrast of the pixels. Change adds support to expose the feature to
user-space and program the vLut registers for the display.
Change-Id: I9822f9711b9048c5db8c313204a6ba64e013f8a9
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\| | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
During probe the assertive display capability is read by the post
processing module from device tree/catalog. If chipset supports the
feature, an immutable property is created and exposed to user.
Change-Id: I7b39537b49a6efe346bdf5a0d0697c5875c8d2f7
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\| | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Color processing features that are enabled by user-space clients need
to be saved when crtc goes to suspend. Once crtc resumes, the following
commit cycle will restore the features.
Change-Id: I2f169a744a5a19fe6456ff4832208a0cbe78be95
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\| | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
CRTC contains the dspp block which contains color processing modules.
Change adds the pcc support to the CRTC.
Change-Id: Ib4091d43d819ab4f20f16892277ccd1d21285c61
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |\| | | | | |
|
| | | | |/ / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Update catalog for post processing features.
Change-Id: I6b43ee213e504780f8e6bacee0ca7e370a381772
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | |/ / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Avoid duplicating the input fence structure within the plane
driver's duplicate state callback. The user context is not
always available at this point and the pointer can't be
safely copied without taking an extra reference to it.
Change-Id: I0aeb4f83b871e4c9add95113ffc80f10b56f51a6
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |\ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
dev/msm-4.4-drm_kms
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
MDP hardware supports custom events which needs to be reported by driver
to user-space clients who request for notification. DRM framework
provides poll/read based interface to report the events to the
user-space clients. Change adds support to report msm driver events to
user-space clients.
Change-Id: I4ce75488ad1d1436cafb3451ebc7808961c6cab5
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Qcom compressed formats are defining reverse color component order
compared to base drm formats. Patch applies correct color component
order for compressed formats.
Change-Id: I5faa6ac2745100d019f1d3105481f3c908ce8aae
Signed-off-by: abeykun <abeykun@codeaurora.org>
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
For HW directly supporting writeback ROI x,y offsets
bypass writeback planes offset recalculation.
Change-Id: I8b38b6026482a4f72607ad74bbec2d3f741b94f8
Signed-off-by: abeykun <abeykun@codeaurora.org>
|