summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm (follow)
Commit message (Collapse)AuthorAge
...
| * | | drm/msm/sde: assign ctls based on capability requirementsLloyd Atkinson2016-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to assign control path blocks based on matching use case requirements to hardware block capabilities. Prefer to assign lower capability blocks first so we are still able to serve split display clients when they arrive. Change-Id: I415da3c1aed8d7fa6a919eba1e730aa7c8e3751a Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: clean up crtc ctl trackingLloyd Atkinson2016-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove duplicate ctl flush mask cache in the CRTC since it no longer needs to maintain a separate cache. Clean up assignment of ctl to mixer assignments to reflect that two mixers may be controlled by the same ctl. Change-Id: Id6db2d69e60a5728e026307685e60a0c52220927 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: improve resource manager hw block lookup timeLloyd Atkinson2016-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move hardware blocks tracking in the resource manager to use one list per hardware block type to reduce list traversal cost when looking for a specific hardware block type. Change-Id: I5b574c7ecd80054a26937a95531a28c097d52c25 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | Merge "drm/msm: internal property updates should update cached value" into ↵Dhaval Patel2016-09-06
| |\ \ \ | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm: internal property updates should update cached valueLloyd Atkinson2016-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to update the driver-side cached value of properties when they are updated via the internal set_property helpers, especially for driver-generated read-only immutable properties. Change-Id: If9a2c04d867eea41c1fa3ee2eb02964bc71afc06 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | drm/msm/sde: fix plane stage setup in sde crtcDhaval Patel2016-09-02
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDE crtc handles the plane stage based on mixer loop. That adds an issue when two planes are staged on same z_order. It overwrites the second plane configuration with first one. That leads to underrun. This cleans up the issues in and around plane stage setup to avoid overwrite or unnecessary locking. It fixes the issue for source split cases. Change-Id: I2e784ab4fbb06b8156bef3a8d53a5ae8d69b2fd3 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | Merge "drm/sde: remove warn on from sde encoder" into dev/msm-4.4-drm_kmsDhaval Patel2016-08-31
| |\ \ \
| | * | | drm/sde: remove warn on from sde encoderDhaval Patel2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sde encoder wait for commit done is called from kms driver. It can be called during first commit without enabling the encoder to check if any commits are pending. That should not be treated as warning. Change-Id: I6072b3ea1bdea6b93c1ddc04b8d38dc9fa790de3 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | Merge "drm/sde: allow base layer plane stagging" into dev/msm-4.4-drm_kmsDhaval Patel2016-08-31
| |\| | |
| | * | | drm/sde: allow base layer plane staggingDhaval Patel2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current sde driver returns warning when client tries to setup a plane/pipe at base layer. That's incorrect behavior. A full size base layer is supported. This patch remove those invalid checks. Change-Id: Id2b420c20d47aa5abbfc5558c53a16d8a011e2dc Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | Merge "drm/msm: update plane, crtc and connector caps blob prop" into ↵Dhaval Patel2016-08-31
| |\| | | | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm: update plane, crtc and connector caps blob propDhaval Patel2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update plane, crtc and connector capability blob property with max linewidth, scaling and decimation support. Change-Id: Ic986a228cb0c9fa23f59f340c9a049a17ad2e372 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | Merge "drm/msm/sde: add api for determining current interface mode" into ↵Dhaval Patel2016-08-31
| |\| | | | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm/sde: add api for determining current interface modeClarence Ip2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide an encoder API for querying the currently active INTF mode (e.g., command/video) that may be used in the rest of the DRM driver. Change-Id: I14d93fa0c1cb6282d941e3284ae6ebe6de5f6772 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | | | Merge "drm/msm/sde: fix uninitialized return code in rm" into ↵Dhaval Patel2016-08-31
| |\ \ \ \ | | |/ / / | |/| | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm/sde: fix uninitialized return code in rmLloyd Atkinson2016-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to init return value in resource manager code. Change-Id: I61b86781f0c602ace3b263a7236983094290959c Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | drm/msm/sde: fix atomic check for crtc driverDhaval Patel2016-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current crtc module checks the number of planes against the number of z order supported. This is not a valid check because hardware may support less z order stages compared to number of planes. This patch fixes those checks and adds additional bound check like plane is within crtc boundary, two planes do not request for same z order, etc during atomic check. Change-Id: If571888ec02f8aa94972543c76e8c5895751089a Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | drm/msm: validate framebuffer before accessing itDhaval Patel2016-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add framebuffer validation checks before accessing it to get the format information. Change-Id: Iac43158509b323169c2e7ab47fc9370915354fc6 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | drm/msm: fix atomic mode check for sde planeDhaval Patel2016-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add additional mode check in sde plane to avoid invalid configuration at atomic commit level. It also fixes the z order property range and input fence property range. Change-Id: I8ad12df7d50d39e6a737b5609d299c5f3b254bfa Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | drm/msm: use drm helper API for atomic checkDhaval Patel2016-08-26
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current msm atomic check tries atomic check first and modeset later. That causes issue for crtc atomic check because crtc mode is not updated so vdisplay/hdisplay is "0" when atomic check happen before modeset. That leads to atomic commit failure. Originally, it was added for plane format checks before it updates. That may not be correct with sde driver because it handles all atomic checks independently of modeset changes. Change-Id: Id8cbbcb2f520ac2956cf56cb959e120ae6f55855 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | drm/msm/sde: enable dynamic hardware resource assignmentLloyd Atkinson2016-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to remove hard coded use case table with previously added dynamic hardware resource manager. Resource manager works with hardware blocks in the system, and user requests via per-connector properties to assign hw blocks to use cases. Change-Id: If5564cf755dd2358aca756feddddb6f58969eb5c Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: dynamic hardware resource managerLloyd Atkinson2016-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add facility that will give ability to dynamically allocate hardware resources to use cases based on availability and requested parameters. Resources are tested at atomic_check time, and locked during mode_set in atomic_commit time. Change-Id: I4c316c3b9ca4fa57c3a1538be508c6daaffb88d1 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: move crtc towards multi-encoder supportLloyd Atkinson2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDE CRTC currently assumes one encoder per CRTC associated at initialization time. Need to break this assumption and move towards tracking multiple encoders, though full dynamic assignment is not provided by this patch. Change-Id: I47f42f5ef57f4df2f19f66bdef737cc86906ab1d Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: list block interconnects as bitmasksLloyd Atkinson2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need a consistent way to test block interconnects in hw layer. Move cdm and lm connections to use unsigned long bitmasks. Also consolidate hw layer destructor call apis naming. Change-Id: Ib6b94689183c9b5babbf81936c6aeef448c6aef2 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: add topology management propertiesLloyd Atkinson2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to expose connector properties for user interaction with dynamic hardware resource mapping to drm object topologies. Expose topology_control property on each connector to allow user control reservation behavior. An immutable topology_name property is exposed on each connector to allow user to query active use case driver chose. Change-Id: I97d22b9a1a8f6e0094f1148af8adb31c826a266a Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | Merge "drm/msm: enable/disable sde during driver open and close" into ↵Dhaval Patel2016-08-17
| |\ \ \ | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm: enable/disable sde during driver open and closeClarence Ip2016-08-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clocks for the sde driver should only be enabled when the device is actually in use, so change the driver to enable and disable the clocks during driver open/close rather than enabling them initially and never disabling them. Change-Id: I19b98ec1ed86c08885ef6df1d05c7f692952c5b9 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | | | drivers/gpu/drm: disable drm fbdev emulationLloyd Atkinson2016-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DRM FBDev emulation allocates dynamic hw resources on first open of the DRM driver, leading to a reduced hw resources for the first real client. It also does not properly handle virtual displays like the writeback connector, and is incompatible with the continuous splash feature. Need to enable FB support with basic DRM to be compatible with varius other drivers. Change-Id: I00b8be6f01cf2536dde4039f7e2944c211f428d8 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | drm/msm/sde: use common structure for phys encoder initLloyd Atkinson2016-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consolidate physical encoder init parameters into a common structure for clarity and ease of use. Change-Id: I6d6b69deef69e7e0080361fd26148fa45c6032af Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | drm/msm/sde: list hardwired mixer connectionsLloyd Atkinson2016-08-12
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Express hardwired connections in the hardware catalog between layer mixers, dspps, and pingpong blocks. Also list out which mixer pairings are valid. Change-Id: I06b9c57d79b678df1372293247f2be7ab34950ca Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | Merge "drm/dsi: turn off the wled backlight with panel power off" into ↵Dhaval Patel2016-08-11
| |\ \ \ | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/dsi: turn off the wled backlight with panel power offDhaval Patel2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LAB/IBB regulator subsequent enable is failing when wled backlight is left on with panel power off sequence. This blocks the back to back atomic commit operation with device open and close. Current change turns off the wled backlight during panel power off sequence to unblock the back to back atomic commit operation. Change-Id: I47fb72be00fe8c1ac2234c04c58183de0e84e6be Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | | Merge "drm/msm/sde: add support for dirty properties" into dev/msm-4.4-drm_kmsDhaval Patel2016-08-11
| |\ \ \ \
| | * | | | drm/msm/sde: add support for dirty propertiesClarence Ip2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add APIs to support tracking of dirty properties and overall 'is active' status on the drm component. Change-Id: I63d243ac2cb4e0b1eb46c4df9666641f9c2850ae Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | | | | Merge "drm/msm: allow flags to be set in property helpers" into ↵Dhaval Patel2016-08-11
| |\| | | | | | | | | | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | | | drm/msm: allow flags to be set in property helpersLloyd Atkinson2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expand API for property helper functions to allow passing in more DRM flags, specifically to allow DRM_MODE_PROP_IMMUTABLE to be declared. Change-Id: I17b48412488f8ca7e32d6bda9e5089c560d1f711 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | | Merge "drm/msm/sde: trigger plane modeset on buffer pitch change" into ↵Dhaval Patel2016-08-11
| |\| | | | | | |/ / / | |/| | | | | | | | dev/msm-4.4-drm_kms
| | * | | drm/msm/sde: trigger plane modeset on buffer pitch changeLloyd Atkinson2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to check the buffer pitches and trigger a source rectangle update if they change to avoid possible smmu faults. Change-Id: I6d692e7e1d8090c8dc7a11eee7f6c3643edc71ff Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | | drm/dsi: fix dsi control power supply turn off sequenceDhaval Patel2016-08-10
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current implementation leaves dsi control power supply in ON mode when drm calls bridge disable API. This patch fixes the sequence to avoid control power rail leakage. Change-Id: I6d8b6438e9b67f474f7a45ae947219a878c9f6c0 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | | drm/msm/sde: enable writeback enumeration in display managerAlan Kwong2016-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Display manager controls the enumeration of display devices. This patch updates enumeration to include writeback connector. Change-Id: I8c03630ae5a7e499cc0e879448d9b0cda08ac8f4 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: add virtual writeback device and connectorAlan Kwong2016-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable virtual writeback connector by allowing a property on the connector to specify output frame buffer id, which takes in a framebuffer object added via ADDFB2 ioctl. A new writeback configure ioctl is added to configure connection state and display modes of writeback connector. Change-Id: Ifce411a3f0798e3af7dd7f19da27d67cdd849bfb Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org> Signed-off-by: Alan Kwong <akwong@codeaurora.org> Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | | drm/msm/sde: add resource management for writeback and cdmAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add resource management control for writeback and cdm hadware drivers. This enables sharing of hardware resources among multiple controlling components. Change-Id: Ieac1058b4ccb6a59c934c3ad5053dae20ca8c4e5 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: add hardware driver support for chroma down moduleAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chroma down module is used to perform color space conversion and downsampling of luma/chroma components. This patch adds support for chroma down hardware driver to control the hardware block using hardware abstraction api common across families of hardware. Change-Id: Ic7f420572d06b312aafbba19832d053a9e1a4aea Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: add hardware driver support for writeback interfaceAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Writeback block is used to output composited images to memory. This patch adds support to the hardware driver layer such that writeback hardware block can be controlled using hardware abstraction api common across families of hardware. Change-Id: I92a69f1d564ee87e3f040cbef5a0302468599440 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: add smmu domain selection logic to connectorAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add selection logic to choose smmu domain based on framebuffer secure flag and vbif memory mapped setting. This allows output buffer, attached to connector, be mapped to the correct smmu context bank. Change-Id: Ie5f6e2da0e34b77d68bd0fdcab82c5bd118c747d Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: add function to return raw interrupt statusAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current hardware interrupt driver does not support reading of raw interrupt status using interrupt index. This patch adds new function to perform atomic read and clear of interrupt status using interrupt index returned from interrupt lookup function. Change-Id: I0cb7f5802df6da270738e98bf4a1748978cdd565 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: Bypass unused interface during smmu initAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Warning message is output for unused interface during smmu initialization. Disable those warning messages by bypassing unused interface during smmu initialization. Change-Id: I2406313c1e303444d2faecb99c34201fdb492473 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm: add non-realtime and secure smmu domainsAlan Kwong2016-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add additional smmu domains for non-realtime and secure use case. Change-Id: I807be30cc107809a376b19b7035de959371c8172 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm: cache active displays within display managerClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update dsi driver to fill a provided array with display pointers of all active dsi displays, and cache them within the display manager structure. This way, the display manager can simply look up the desired display pointer based on a local index rather than asking the dsi driver to perform a lookup each time and checking if it's valid and active. Change-Id: I213f66b96c44e95cd91face84005d67b3a9d92a6 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | | drm/msm/sde: add connector api for querying display infoClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide an API to allow querying of the physical display info for each sde connector so that other parts of the driver don't have to access the underlying physical display drivers directly. Change-Id: Ic3534e99ef414c12ee6a9cdd2ce97745a3aa9001 Signed-off-by: Clarence Ip <cip@codeaurora.org>