| Commit message (Collapse) | Author | Age |
| ... | |
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Convert dsi and wb into actual drivers, and don't bind them
from within the display manager any more. With this change,
the display manager is no longer necessary, and may be safely
removed.
Change-Id: Ifac790fe31120d72cf78000a1476e22d000db4ae
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Video encoder structure member should be accessed
after physical encoder null check. This patch fixes
the current invalid accesses.
Change-Id: Icbd2e5d188a5a3ad459d13a3381325d920cac998
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a debugfs node under encoder to update the vsync
and underrun status of all physical encoders.
Change-Id: I56198e7450709f393c878d44b6c467a2d5f8dd65
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | |\ \
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Current sde driver enables the underrun interrupt for
all interfaces during bootup. That's not a desired
behavior. It should be handled through each interface
when it is enabled/disabled. This patch updates the
irq APIs on each interface to handle generic irq request
and uses them for vblank, underrun, etc. interrupts.
Change-Id: I890110eef975555a771a0690c5f762b0a3f18737
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
SDE hardware handles the color component without
endianness. So, RGBA component keeps the "A"
component on the lowest memory address that is
LSB + lower address = Little endian format.
The same applies to UBWC formats also. This patch
fixes the color component order based on above
requirement.
Change-Id: I8cc03acef97f9777244bb3cad68e9992e22c3dd4
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | |\ \
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fix two issues in dsi_display interfering with probe deferral:
clear clock pointer when they fail to initialize, and remove
debug_fs entries recursively.
Change-Id: Ide542cef7f82b6f5caa52ad4c3da6662b8ae58fc
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Remove singleton behavior from mdp_top hardware block since it
is no longer necessary. The resource manager now manages the
lifecycle of the mdp_top. This fixes an issue where the static
mdp_top would point to freed memory.
Change-Id: Ie860fd65ac2efa28ed0f3d9014bb45b0cc6aed5e
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | |\ \
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Initialize local variables in sde power module, so that
if dt entries are not available they will have default value.
Change-Id: If0fddd177816f335c665f3d7b178860e1f0a5089
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add support for cases with two pipes, merged together via 3D mux
into one output display.
Change-Id: Ic1e16af72e8cc45a8fd9ad706b37f5b69d30f0ef
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | |\ \
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add parsing logic to setup plane and writeback control clock
register and bit mask. Clock control registers are used to
change vbif OT settings.
Change-Id: Ie3baee8c25c2899f14c3d0e87e02dc57d73ce582
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\| |
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The parser for bit offset is writing bit and offset to
the wrong property location. Correct the parser to write
to the first 2 locations of the property value array.
Change-Id: Ic087c4ce55a2b2e9276db0cc953bc226939f3249
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\| |
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add plane QoS parser to retrieve and parse LUTs for
danger, safe and creq QoS settings.
Change-Id: I42dd045c46966a66f43fd9517a16270c83f89aa1
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\| |
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add vbif parsing to hardware catalog. Default and dynamic
OT limits are defined for each vbif block.
Change-Id: I12336c2f390b5acd2aeec691e1176d814b1cb768
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\| |
| | | |
| | | |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Writeback identifier is used to mapped clock control register
for each writeback device. Add writeback identifier parsing to
hardware catalog.
Change-Id: I666072f657dfeb30c6818f3dd25729e891c579ad
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\ \ \
| | | | |
| | | | |
| | | | | |
dev/msm-4.4-drm_kms
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Avoid corrupting other bit fields in mixer op mode during
updates.
Change-Id: I46521908dfceef833a4b7dfff60c63fb8067017a
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Update crtc status debugfs node with current plane
information and framebuffer information.
Change-Id: I13c52b4cba363f95225a5e28c67b5c597a92a0d7
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add sde error prefix for all sde driver errors.
Change-Id: I59d8b37338cb8641ebdea2c50b31b5e63946b49c
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add capability property for crtc to update
all system wide capabilities like hardware rev,
ubwc support, source split, qseed rev support, etc.
Change-Id: Iecc6f4ec7376f7f5de884042aa7a3b0a5387d6d6
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | |\ \ \
| | | | |
| | | | |
| | | | | |
dev/msm-4.4-drm_kms
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Source split and ubwc properties are generic for sde hardware.
It should be handled by top module and should be set for
each crtc object.
Change-Id: Iee45cb83526762e423d5c67abaeead8619ff2059
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Current sde_wait_for_commit_done is calling asynchronous
drm_crtc_vblank_get/put to enable/disable vblank interrupt.
However, drm_crtc_vblank_get/put submit the vblank request
to a workqueue for later execution. As a result, vblank
irq is not get/put properly prior/after the commit operation
in sde_wait_for_commit_done.
Replace async drm_crtc_vblank_get/put with sync sde_crtc_vblank,
and use reference count in encoder to enable/disable interrupts.
Change-Id: Iccc83983d56b75717eda9c401a54dfe77e945fed
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Vblank disable is dispatched by delay timer upon file
release. If all vblank disable are not dispatched by
last close, device may have unbalanced vblank requests
upon next device open. As a result, before closing down
all mode objects in last close, trigger vblank delay timer
and wait until all requests are executed and cleared from
workqueue.
Change-Id: I56d39e617fc88d40b22740c0178e339c32305549
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Need to move the sde crtc to use the local sde specific debug
and error logging macros. The local sde macros allow the logs
to be enabled both from the normal drm_debug and Linux dynamic
debug interfaces. Also move the function naming to be
consistent.
Change-Id: Ib171ebab3959d6ac522cd6885ac8a55ba4f35e0e
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Clean up the sde crtc by unregistering function stubs from
unsupported or unused API callbacks.
Change-Id: I52de3b3ea501a6995235a3d8b6e4eb841e4b1f7b
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Clean up the sde_kms header by moving the crtc related function
declarations into the crtc specific header file. Also clean up
some of the unused macros in the sde crtc files.
Change-Id: If377e6acb13c8253781c085100a695b6e86e6329
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fix up the SDE CRTC to use the DRM framework's updated vblank
related APIs that do not require sub-driver CRTCs to track their
own DRM CRTC IDs.
Change-Id: Idaa208e6c895850e89a8f8189f9169bd1ca67da8
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Need to add error logging in failure paths within msm atomic
commit callflows. Also update style to improve readability.
Change-Id: Ife7562122d1e6f66415cbf76b59ca5392eca69ab
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Move vbif related functionality out of the sde_kms file and
into its own file to keep the main kms file clean.
Change-Id: Iff067b82813fc29b3ba48d029543d57bd88e3e1b
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add event logs for plane input fences to facilitate debugging.
Change-Id: I47d4c98ccd14847b3aaf675414e5809a424b6a9d
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Assign mixer stages based on relative zpos ordering rather than
using the zpos property value directly. This avoids problems caused
by the zpos property value being greater than the available number
of stages.
Change-Id: I9f5a5a12ba5be49fbe1fbee78ddc7fadfeaedc9d
Signed-off-by: Clarence Ip <cip@codeaurora.org>
|
| | |\ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fix header guard markings.
Change-Id: I817d5b1f21b0a7a1b0bcdff0ce4848cea64c8ff7
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Vblank is requested twice in sde, once in sde_wait_for_commit_done
and another one in request_pending for each commit cycle. Only one
is required; hence, remove request_pending and associated logics.
Change-Id: I1ca69921abd5f7ab74b8f8900aee52e22efbe350
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
|
| | |\ \ \
| | |/ /
| |/| |
| | | | |
dev/msm-4.4-drm_kms
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|