summaryrefslogtreecommitdiff
path: root/drivers/video/tegra/dc/ext/tegra_dc_ext_priv.h
AgeCommit message (Collapse)Author
2012-11-16android: dc: tegra: video: conditionally revert timestamp supportMarcel Ziswiler
Android R14 userspace seems to have issues with timestamp support: [ 14.764337] host1x host1x: SurfaceFlinger: syncpoint id 8 (disp0_a) stuck waiting 3, timeout=2147483447 [ 14.773845] host1x host1x: id 8 (disp0_a) min 2 max 4 [ 14.779163] host1x host1x: id 9 (disp1_a) min 2 max 4 [ 14.784316] host1x host1x: id 18 (2d_0) min 21 max 25 [ 14.789586] host1x host1x: id 20 (disp0_b) min 2 max 4 [ 14.794889] host1x host1x: id 21 (disp1_b) min 2 max 4 [ 14.800241] host1x host1x: id 22 (3d) min 77 max 95 [ 14.805217] host1x host1x: id 24 (disp0_c) min 2 max 4 [ 14.810573] host1x host1x: id 25 (disp1_c) min 2 max 4 [ 14.815873] host1x host1x: id 26 (vblank0) min 800 max 0 [ 14.821264] host1x host1x: id 27 (vblank1) min 684 max 0 [ 14.826810] host1x host1x: waitbase id 3 val 77 Therefore conditionally revert it in that case for now. See e4e2e776a3d4bf1adf37fc061cfdfb92281f3ace.
2012-08-21video: tegra: dc: Add timestamp supportRaghavendra VK
bug 1021221 Change-Id: Ifbe007de5bdeafaa15a0b3f2a138086045eba160 Signed-off-by: Raghavendra VK <rvk@nvidia.com> Reviewed-on: http://git-master/r/118179 (cherry picked from commit 74be8d4e7210d7bcea0d55565a7cbb06d6cc960e) Reviewed-on: http://git-master/r/121087 Reviewed-by: Jon Mayo <jmayo@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Robert Morell <rmorell@nvidia.com>
2012-07-02video: tegra: dc: split dc.c into smaller filesJon Mayo
Moved mode setting code into mode.c Move window code info window.c Moved clock related code into clock.c Moved LUT and gamma related code into lut.c Moved csc(color space conversion) into csc.c Removed unnecessary static function prototypes from header. Moved many short inline functions to dc_priv.h Cleaned up copyright headings. Cleaned up formatting and indent in all files. Fixed build warnings. Bug 870907 Change-Id: I6ccc37150191765394f0b5629423eafd4e5e5792 Signed-off-by: Jon Mayo <jmayo@nvidia.com> Reviewed-on: http://git-master/r/111371 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-05-18video: tegra: dc: Use nvmap.h include file from kernel/includeKrishna Reddy
Use nvmap.h include file from kernel/include instead of mach-tegra/include. Bug 854182 Change-Id: Ibfa271191bfce371986df29a7971b1da077c3f06 Signed-off-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-on: http://git-master/r/102722 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Jon Mayo <jmayo@nvidia.com>
2012-03-29video: tegra: add cursor mode flippingAdam Cheney
This change adds a flag to flip windows in cursor mode. Cursor mode will cause flips to be skipped over if there are newer flip requests waiting in the workqueue. Add CURSOR_MODE to caps bitfield. bug 942762 Change-Id: Ib52a0a5565f961cdd9650e4204cd65b86f96fee1 Signed-off-by: Adam Cheney <acheney@nvidia.com> Reviewed-on: http://git-master/r/90418 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Robert Morell <rmorell@nvidia.com>
2012-03-08video: tegra: implement DC capabilities ioctlAdam Cheney
The returned capabilities bitfield is initially 0 (no caps). bug 942631 Change-Id: Ia7496981e525526147ecebe67b09dc877d3e0c17 Reviewed-on: http://git-master/r/87088 Tested-by: Adam Cheney <acheney@nvidia.com> Reviewed-by: Robert Morell <rmorell@nvidia.com>
2011-11-30video: tegra: dc: Separate allocations for U and VRobert Morell
Currently, dc_ext only takes a single nvmap memory ID per overlay, even in the YUV case (the U and V planes are expected to be differentiated using an offset from the beginning of the nvmap allocation). This is problematic for some software flows, such as certain video interlacing algorithms that will vary the luma plane while keeping the chrome plane constant. This change allows dc_ext clients to specify a different nvmap allocation for each of the Y, U, and V planes. If a YUV surface is used and no U or V plane allocation is specified, the old behavior is preserved: the U and V offsets are assumed to be within the same allocation as Y. Note: this changes the behavior of the offset parameter: the old code added offset to offset_u and offset_v when using it. The new code treats all three offsets as relative to the beginning of the allocation. It also fixes a bug in the code where offset was applied twice to the Y plane. I believe this is safe because the presence of this bug means that no existing clients are using offset != 0 (or if they are, they're already broken). Signed-off-by: Robert Morell <rmorell@nvidia.com> Bug 850882 Original-Change-Id: I230e03db25baaae73a3bdc0d45a2aec162b87fa4 Reviewed-on: http://git-master/r/41471 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: Ra6dd17a50de7150edf104d2a6c9b3b9949919022
2011-11-30video: tegra: Implement fops->poll() for control deviceRobert Morell
This is necessary for select() and poll() to work properly when clients are waiting for events. bug 818525 Original-Change-Id: If98b3e0706495884834813c9a352b946352cc2f5 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40521 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: Rc8813923838bada46d87d71ef852960316eda2f7
2011-11-30video: tegra: Add control device to dc extension driverRobert Morell
This device exposes control over everything that's not specific to one of T20's two display controllers. It supports: - output devices - event delivery - hotplug events bug 818525 Original-Change-Id: I3a46f1dddc483b08ed3ee91a4f9c64111c1fd7eb Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40520 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R9e49fe41f3327b797ec65c3729f4f94edbb45307
2011-11-30video: tegra: Prevent hang when output disabledRobert Morell
This adds code to track when the dc is disabled and prevent flips or cursor moves. This prevents system hangs since the dc is powergated when it's disabled. bug 818525 Original-Change-Id: I061da1f6a831fa14a216520e603e0fbc5dbb0437 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40519 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: Rb648ef48bd3528344cf090c49093dcb258c20150
2011-11-30video: tegra: Add cursor support to dc extensionsRobert Morell
This change adds full support for specify the cursor image and manipulating its position. bug 818525 Original-Change-Id: I101a951aff358b0ac0998afc6fe5f6c5c4d37c64 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40518 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R93f0c68a14e4419f200a77d48a17eb8862f2e4e1
2011-11-30video: tegra: Move pin function to new util fileRobert Morell
This will be used in forthcoming cursor support in addition to the existing overlay flipping support. bug 818525 Original-Change-Id: Ic27267deeaefad4ec803eb457a02b22c0d9a1373 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40517 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: Rc1e18fe5248f9dfd1f9ee23184cd2c102539ca61
2011-11-30video: tegra: nvhost: Use a syncpoint per windowRobert Morell
Reserve one syncpoint per window per display controller instead of one for the entire display controller. This is necessary to allow multiple windows on a single display controller to flip asynchronously. bug 818525 Original-Change-Id: Ide1de2bf2ed0bfea7f6abe9aa93815efd0824db1 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40516 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R49886938a74e71db0c8f53edc8ac45e5015ffe84
2011-11-30video: tegra: Implement FLIP dc extension ioctl.Robert Morell
This is very similar to the tegra_fb FLIP ioctl. bug 818525 Original-Change-Id: Iba32ab5bf730b575477c62a8ae4394f1779ef65e Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40514 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Rebase-Id: R9a79363b09d2df38bec4b8a8666f97b1feff76ff
2011-11-30video: tegra: Add an ioctl() implementation.Robert Morell
This implements: - GET_WINDOW - PUT_WINDOW and adds a stub for FLIP. bug 818525 Original-Change-Id: I467b58a77242b2a8077e236106b542b8545f5353 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40513 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Rebase-Id: R4fc354fdae76f3eac189d481fb346a0982146db5
2011-11-30video: tegra: Add skeleton support for extensionsRobert Morell
This adds the infrasturcture for an enhanced driver interface to program extended capabilities of the Tegra display controller. It exposes a new set of device nodes for userspace clients distinct from the traditional fbdev device nodes. This is necessary due to limitations in the fbdev infrastructure that don't allow drivers to store file-private data. bug 818525 Original-Change-Id: I06cecf894792b9904c73f9ebcdeb746ff7455f6e Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/40512 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Rebase-Id: Rfa3969804d7f52c841be1ff96305c9463077e1c5