summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm (follow)
Commit message (Collapse)AuthorAge
...
| * | drm/msm/sde: enable explicit input fencesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Enable color fill if input fence times out. Move CSC/solid fill updates to the flush point of the commit. Move sde_plane_flush() call to execute before crtc_flush_all(). Change-Id: I9fd1fa5b98dae509e8957ef0300aa00735903fdd Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: add support for crtc propertiesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move sync_fence_timeout property from plane to crtc, so that a common wait time can be applied to all planes selected for each crtc. Change-Id: I8108de8882667fad00df000073ddfc23202b15e0 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/dsi-staging: reset drm/dsi data before reconfiguringAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Memset dsi and drm data structures before populating them with configuration data to avoid any possibility of using residue data from previous configurations. Change-Id: Ia601a540d62445f499b73284d54ec53424aa347d Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi: remove unused tag from dsi APIAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Remove unused tag from DSI API to avoid compilation issue. Change-Id: I8d1a986bf7af3e10884581c9bf931d438ec08caf Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/kms: remove compilation of hdcp_hdmiAdrian Salido-Moreno2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HDCP hdmi is an optional feature in DRM and it is not needed at bringup stage. Remove this driver from compilation from drm to avoid any issues. It will be re-enabled when complete feature set is supported. This change also update the HDCP API name to avoid conflict with FB HDCP driver. Change-Id: I788747750e7f586c58fe0d0bd3b5a4d223adfb96 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm: disable mdp4 driver in drm kmsStephane Viau2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mdp4 drm driver is for old MDP revision. It is not required for newer version of chipsets. Disable this driver because it is using older smmu/bus APIs which are not supported now. Change-Id: Ic25e77112a378b96295d78f1bd9d8f48a07be32d Signed-off-by: Stephane Viau <sviau@codeaurora.org> Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm: switch to qti KGSL driverStephane Viau2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DRM msm driver has option to switch between qti kgsl driver and drm GPU driver. Qti kgsl driver is preferred over other driver to support rendering because it supports all qti features with custom optimization. This change allows to select qti kgsl driver if it is available. Change-Id: I031eeec6378b6ce436c09c1a8388401e7ff48f52 Signed-off-by: Stephane Viau <sviau@codeaurora.org>
| * | drm/dsi-staging: add support to get regulator data from device treeAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Get regulator data from device tree so that clients like DSI driver can make use of it. Change-Id: Ifbbac08f8f93b8ad85d212593e5e3f3ddab3fdfd Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/sde: use sde plane csc cfg struct for user settingsClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an incoming blob property is set for the csc, copy the settings to the sde plane's config structure rather than a local one. This allows the correct user values to be programmed to the hardware. Change-Id: I4b3e13209dd15cf7e8f932528c9929470bf5af42 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: add display manager to makefileClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Add display manager include paths and build to drm msm makefile. Change-Id: I54ca8a9babc11a135615c9217e21396ac9770477 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: rename MSM drm platform driver's name into msm_drmStephane Viau2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this change, the driver's name was defined as "msm". This definition conflicts with another MSM driver in the downstream kernel (camera_v2). To avoid such conflict (kernel crash), the msm drm driver's name is changed to "msm_drm", which is also a bit more explicit than the previous definition. Change-Id: Idc3e9d3e5d2b04e78e0b7665b7036c07f94d4413 Signed-off-by: Stephane Viau <sviau@codeaurora.org> [cip@codeaurora.org: Also change name of drm driver and workqueue from "msm" to "msm_drm"] Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: avoid dereferencing scaler blob if null stateClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add checks to avoid dereferencing the user scaler blob if the plane state is null, which is possible if the scaler configuration is requested internally. Change-Id: I497cdd8e2d35afa842451321eee98ae3b9c34bf2 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: handle null blob property arrayClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Add error checking to msm_property_get_blob to avoid null dereference if the blob property array is NULL. Change-Id: I0e2e501eb1ed6beecae78a10e89fd755cc208ac6 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: enable both dsi drivers togetherAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | Create a new config for DSI staging driver. Change-Id: I76879210bf51c6b30de94166f170ceae5001e1c7 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/dsi-staging: remove interrupt handlingAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove interrupt handling for now as interrupt handling implementation is not complete and causes basic functionality break. Change-Id: I59a0e86434165b34c008ea5e1d62ecb17b5cf1af Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm: move display manager out from dsi-stagingAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | Move display manager from dsi-staging to msm/display-manager folder. Change-Id: I4620338489a71131a595b843f2a26a30e9234fd6 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: fix dynamic fps and seamless updatesAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move DSI/INTF updates for dynamic FPS and seamless operations from 'mode_set' to the pre-enable/enable part of the commit sequence. Change-Id: I334fb2395db7174037ab8b1b9c32092ca94aa9b9 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: support dynamic frame-rate and validationAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Sanitize for seamless frame-rate transitions for dynamic FPS. Check for proper video timings, controller operation states etc. Change-Id: I5f29238861e9bad41e7bac9f34cda12c29174868 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm: defer drm driver probe if backlight isn't readyAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | DRM driver uses backlight driver's APIs. In case backlight driver isn't probed, defer probe for drm driver to make sure backlight functionalities are available for use when drm driver is probed. Change-Id: I52713ad3b096f557091bbbd64bae460d69b46ab1 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm: common display interface for mdp driverAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Display_manager.h provides a commong display interface for MDP driver to query DSI, HDMI and DP display properties. This is a replacement for the previous dsi-manager component. Change-Id: Ifdd213b3341ca3c21ca13aca4e56d9c2404030ff Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/sde: init private kms pointer before modeset initClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Ensure that the device's private data kms pointer is set before attempting to initialize planes, crtc, etc. Change-Id: I4ad0dd10e5350e667575796bbd2d54d4553143de Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/dsi-staging: add dsi panel driverAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add dsi panel driver to parse and set panel configurations like horizontal and vertical settings, configure regulators, gpios and clocks. Add panel on/off, suspend/resume and panel commands transmission logic. Change-Id: I12044e4f9f2640f9e8bbc7aca8d7a5d9ec92944b Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: add debugfs support for dsi driverAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Add basic debugfs support for dsi driver. Get controller, clock, power etc status for debugging. Change-Id: I42164988cfe58b67a70ae3ffbc953b24fa708407 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: add support for command mode panelsAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for command mode panels. Command engine state must be ref-counted since it is toggled in two paths, command transfer and mdp command frame updates. Change-Id: I9aba97465ad822c4c862f6aa5422dc47cb6664c8 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: dsi display testsAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Add dsi display tests like display configurations, TPG, modes etc. Change-Id: Id8fe472af84a9c4697a7501eb23acad1595b743c Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: add dsi drm interfaceAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add DSI DRM component to interface with the DRM framework. Configure DSI bridge and connector and hook up with DRM framework. Change-Id: I7c4c91047fece87e24955ffc35bf6681a8235cab Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/dsi-staging: add dsi display driverAjay Singh Parmar2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add dsi display driver. Configure all internal DSI modules. Manage power sequence for internal modules like controller and phy. Configure lanes, modes etc. Change-Id: I8edc918c4858f16d32af9373fc4626066b20d2e5 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
| * | drm/msm/sde: replace plane property/state handling with msm_propClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Remove plane-oriented property/state handling helper functions and use the common 'msm_property' functions instead. Change-Id: Iadf61500be020b432187bde75c681a0a1a0b000f Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: add generic property/state handlingClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add generic atomic properties and private state structure handling. The 'msm_property' class of helper functions capture common code for storing local property values, handling atomic state/property callbacks and basic blob property management. Change-Id: I5be2d9c45d21c9d50e340036fdd7638e6b8c7ab9 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: use sde specific color format throughoutLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move sde_kms to register its own color format structure for get_format to consolidate all format definitions. Also, make sde_format structure compatible with mdp_format by having a common msm_format base. Change-Id: I79bd4e84633618865456c0d21bcace67c3c8cb80 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm: move dynamic fps and seamless updatesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move DSI/INTF updates for dynamic FPS and seamless operations from 'mode_set' to the pre-enable/enable part of the commit sequence. This is done so that we can split the atomic commit sequence into 'prepare' and 'commit' stages separated by the CRTC's atomic_flush callback. Also remove previously added support for 8996-specific 'quirks'. Change-Id: I7ba3e48a1cf22d4f329844153eca89e76674e96b Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: update wrapper macros for event loggingClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a reusable wrapper macro under msm_drv.h (tied to the evtlog instance) rather than requiring similar macros in each file. Change MSM_EVT(log*, ...) to MSM_EVT(dev*, ...) Change MSM_EVT_MSG(log*, ...) to MSM_EVTMSG(dev*, ...) Change-Id: I95c74470ab1cd3c02e97186a6c1560ef31e9749e Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: init spinlock for lm_lockCamus Wong2016-08-01
| | | | | | | | | | | | | | | | | | | | | Need to init spinlock for lm_lock, otherwise it crashes. Change-Id: I42b20c9a96c7e872cddef0e590efb845a84cf45c Signed-off-by: Camus Wong <camusw@codeaurora.org>
| * | drm/msm/sde: clean up debug outputLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | Updating formatting/newlines for debug messages. Change-Id: Ie17ee18fe6be554ac90fdcee8c93e661ebc5e905 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm: add event log for profiling msm drm driver eventsLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Provide highspeed lockless logging facility for profiling time sensitive events in the drm msm driver. Registers with debugfs as evtlog. Can be cleared with echo 0. Change-Id: I6b8887b5fa2172ce38dced86128f4ba84b1a58f1 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: pageflip fixesLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Avoid doing full modeset every time by clearing pending flag in planes Populate mode->crtc info for framework to use in dotclock calculations Change-Id: I7f562431eaf30a9e7de16d813c41dbcc7253664c Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: remove crtc full modeset based on plane changesLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Planes buffer dimensions and pixel format don't necessarily imply a full chain modeset. Change-Id: I2def7e0d33755ba31754c2cf5b2692053a110ee9 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: add z-order and plane id to printsLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | Minor logging improvement to plane and z-order prints. Change-Id: Ib712a6b0dbf476aff1766a887d5b232a5a97912d Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: add wrappers for release fence APIClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Add functions for creating/incrementing timelines, and for creating fences at a specified sync point. Change-Id: Idfd42150f2162fd0e4c3b89916e8ed5a801c27ae Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: update max up/down scaleClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Correctly set max up/down scale for cursor/DMA pipes to one (i.e., no scaling) Change-Id: Ida8932f7fc55a3186dabd06282c5c59f1ed7aaa3 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: add planes color fill/fence timeoutClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To prepare for input fence support, add a property to configure the input fence timeout. Also, enable support for color fill (through a plane property) so that it can be enabled if input fences ever time out. Change-Id: Iae79ebadb4731db444f39d3b7207b65cb2aa9243 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: updates to planes atomic_checkClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | Add additional checks for in/out rectangles. Change-Id: Ie50f6dd23135353a71f7316b5ace06786160b669 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: add cache for released plane statesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | Reduce kmalloc/kfree activity as states are duplicated/destroyed. Change-Id: I7be4039dadf23578d440e5c35b789cc9ba6f0a14 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: input fence support for planesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consolidate property default definitions to a single location, and enable planes-related support for the input fence property. Add sde_fence.h/c for Android fence API wrappers. Change-Id: I8785f8cdaf32d62373678aa9c35dd94d39d7992f Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: add debugfs for crtcClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | Enable basic debugfs support for CRTC driver. Change-Id: I9d1498515d28d1702850b6ac9fa13aa95abee0bb Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: don't overflow mixer cfg fieldsClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | Handle fixed bit field sizes correctly Change-Id: I2989d3b8689bd50e10732319ea93769dcc9fc295 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm: enable seamless dynamic frameratesLloyd Atkinson2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a DRM_MODE_FLAG to explicitly request seamless mode changes. If this flag is set, enable/disable are not called. Components check at mode_fixup if seamless mode is possible, and what type of seamless transition. Dynamic FPS control is the first feature to use this flag, which allows seamlessly changing the FPS without a full modeset. Change-Id: I87cf32a445f541f85cd3e83793fa847903e3d56d Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: remove plane decimation propertiesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | Use decimation definition within scaler blob instead. Change-Id: I7814d3a777974514c0a539721622500dd7828b4f Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: change csc matrix coeff in h/w driver to s15.16Clarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Actual register fixed point format should be encapsulated within h/w layer, and not within the planes driver. Adopt a standard S15.16 fixed point format between the h/w layer and planes. Change-Id: I786a0c617a179d6d8405ef6cfeb0560eca324306 Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | drm/msm/sde: enable blending across all planesClarence Ip2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | Updates to sspp to enable dma pipe support, and adjust plane property creation based on pipe availability. Enable support for the BLEND_OP property within the crtc. Change-Id: Iec063eb2a3b206fb3d66fb2a176536d7838b08bf Signed-off-by: Clarence Ip <cip@codeaurora.org>