aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/emgd/include/igd_ovl.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/emgd/include/igd_ovl.h')
-rw-r--r--drivers/gpu/drm/emgd/include/igd_ovl.h305
1 files changed, 0 insertions, 305 deletions
diff --git a/drivers/gpu/drm/emgd/include/igd_ovl.h b/drivers/gpu/drm/emgd/include/igd_ovl.h
deleted file mode 100644
index 60530c688bd5..000000000000
--- a/drivers/gpu/drm/emgd/include/igd_ovl.h
+++ /dev/null
@@ -1,305 +0,0 @@
-/* -*- pse-c -*-
- *-----------------------------------------------------------------------------
- * Filename: igd_ovl.h
- * $Revision: 1.7 $
- *-----------------------------------------------------------------------------
- * Copyright © 2002-2010, Intel Corporation.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
- *
- *-----------------------------------------------------------------------------
- * Description:
- * This is the external header file for overlay. It should be included
- * by ial and/or other HAL modules that require overlay interaction.
- *-----------------------------------------------------------------------------
- */
-
-#ifndef _IGD_OVL_H
-#define _IGD_OVL_H
-
-/*!
- * @defgroup overlay_group Overlay
- * @ingroup video_group
- *
- * The overlay module is responsible for the hardware overlay and the secondary
- * overlay (sometimes referred to as plane C).
- *
- * <B>Relevent Dispatch Fucntions</B>
- * - _igd_dispatch::alter_ovl()
- * - _igd_dispatch::query_ovl()
- * - _igd_dispatch::query_max_size_ovl()
- * @{
- */
-
-/*----------------------------------------------------------------------------
- * Overlay Alter Flags
- *--------------------------------------------------------------------------*/
-/*!
- * @name Alter Overlay Flags
- * @anchor alter_ovl_flags
- *
- * Flags for use with _igd_dispatch::alter_ovl()
- * - IGD_OVL_ALTER_OFF: Turn the overlay off
- * - IGD_OVL_ALTER_ON: Turn the overlay on
- *
- * - IGD_OVL_ALTER_PROGRESSIVE: The overlay is progressive. Only valid when
- * the overlay is on
- * - IGD_OVL_ALTER_INTERLEAVED: The overlay is interleaved/bobbed. Only valid
- * when the overlay is on
- *
- * - IGD_OVL_ALTER_FLIP_EVEN: Flip the even field. Only valid when the overlay
- * is on
- * - IGD_OVL_ALTER_FLIP_ODD: Flip the odd field. Only valid when the overlay
- * is on
- * @{
- */
-#define IGD_OVL_ALTER_OFF 0
-#define IGD_OVL_ALTER_ON 1
-
-#define IGD_OVL_ALTER_PROGRESSIVE 0
-#define IGD_OVL_ALTER_INTERLEAVED 2
-
-#define IGD_OVL_ALTER_FLIP_EVEN 0
-#define IGD_OVL_ALTER_FLIP_ODD 4
-
-#define IGD_FW_VIDEO_OFF 8
-
-#define IGD_OVL_FORCE_USE_DISP 0x10
-#define IGD_OVL_GET_SURFACE_DATA 0x50
-/*! @} */
-
-/* These are not actually used by any IAL
-#define IGD_OVL_ALTER_MIRROR_NONE 0
-#define IGD_OVL_ALTER_MIRROR_H 0x10
-#define IGD_OVL_ALTER_MIRROR_V 0x20
-#define IGD_OVL_ALTER_MIRROR_HV (IGD_OVL_FLAGS_MIRROR_H|IGD_OVL_FLAGS_MIRROR_V) */
-
-/*----------------------------------------------------------------------------
- * Overlay Query Flags
- *--------------------------------------------------------------------------*/
-/*!
- * @name Query Overlay Flags
- * @anchor query_ovl_flags
- *
- * Flags for use with _igd_dispatch::query_ovl()
- * These flags ARE EXCLUSIVE - ONLY ONE AT A TIME can be used during a
- * single call to igd_query_ovl
- *
- * - IGD_OVL_QUERY_IS_HW_SUPPORTED: Can the hardware support an overlay for
- * this display_h? This will return the same value no matter if the overlay
- * is on or off, so the IAL must use some other method to determine if the
- * overlay is in use.
- * - IGD_OVL_QUERY_IS_LAST_FLIP_DONE: Has the last flip completed?
- * - IGD_OVL_QUERY_WAIT_LAST_FLIP_DONE: Wait until the last flip is complete.
- * Returns TRUE if the last flip was successfully completed. Returns FALSE
- * if there was a HW issue where the last flip did not occur.
- * - IGD_OVL_QUERY_IS_ON: Is the hardware overlay currently on? This does not
- * include the secondary overlay, only the hardware overlay.
- * - IGD_OVL_QUERY_IS_GAMMA_SUPPORTED: Is the hardware supports GAMMA
- * correction?
- * - IGD_OVL_QUERY_IS_VIDEO_PARAM_SUPPORTED: Is the hardware supports video
- * parameters (brightness, contrast, saturation) correction?
- * @{
- */
-#define IGD_OVL_QUERY_IS_HW_SUPPORTED 0x00000001
-#define IGD_OVL_QUERY_IS_LAST_FLIP_DONE 0x00000002
-#define IGD_OVL_QUERY_WAIT_LAST_FLIP_DONE 0x00000003
-#define IGD_OVL_QUERY_IS_ON 0x00000004
-#define IGD_OVL_QUERY_IS_GAMMA_SUPPORTED 0x00000005
-#define IGD_OVL_QUERY_IS_VIDEO_PARAM_SUPPORTED 0x00000006
-#define IGD_OVL_QUERY_MASK 0x0000000F
- /* Ensure no bits conflict with IGD_OVL_FORCE_USE_DISP above */
-/*! @} */
-
-/* This is now in igd_query_max_size_ovl
- * Get the maximum width/height for the src_surface pixel format
- * return: max width and height parameters; should always return TRUE.
-#define IGD_OVL_QUERY_MAX_WIDTH_HEIGHT 0x00000003
- */
-
-/* This should not be needed. Since the IAL is always passing in valid
- * gamma information, the IAL should not query the HAL for the information.
-#define IGD_OVL_QUERY_COLOR_CORRECT_INFO 0x00000005*/
-
-
-/*----------------------------------------------------------------------------
- * Overlay Color Key
- *--------------------------------------------------------------------------*/
-/*!
- * @name Overlay Color Key Flags
- * @anchor igd_ovl_color_key_info_flags
- *
- * Flags for use with @ref igd_ovl_color_key_info_t
- * Enables and disables the src and dest color key for the overlay
- *
- * IGD_OVL_DST_BLEND_ENABLE enabled blending the contents of the overlay
- * with the contents of the frambuffer using the alpha from the framebuffer.
- * (As if the framebuffer was on top of the overlay) This feature requires
- * that dest colorkey be enabled.
- *
- * @{
- */
-#define IGD_OVL_SRC_COLOR_KEY_DISABLE 0x00000000
-#define IGD_OVL_SRC_COLOR_KEY_ENABLE 0x00000001
-
-#define IGD_OVL_DST_COLOR_KEY_DISABLE 0x00000000
-#define IGD_OVL_DST_COLOR_KEY_ENABLE 0x00000002
-
-#define IGD_OVL_DST_BLEND_ENABLE 0x00000004
-/*! @} */
-
-/*!
- * @brief Overlay Color Key
- *
- * The src_lo, src_hi, and dest color key are in the following pixel format
- * based on the pixel format of the src and dest surface.
- * Note: Alpha is always ignored.
- *
- * - xRGB32 = x[31:24] R[23:16] G[15:8] B[7:0]
- * - xRGB16_555 = x[31:15] R[14:10] G[9:5] B[4:0]
- * - ARGB8_INDEXED = x[31:8] Index Color[7:0]
- * - YUV surf = x[31:24] Y[23:16] U[15:8] V[7:0]
- *
- * If the source pixel (overlay) is within the src_lo and src_hi color key
- * (inclusive) for all color components, then the destination pixel is
- * displayed. Otherwise the source pixel is displayed.
- *
- * If the source and dest color key are both enabled, what happens???
- */
-typedef struct _igd_ovl_color_key_info {
- /*! Low end src color key value */
- unsigned long src_lo;
- /*! High end src color key value */
- unsigned long src_hi;
- /*! Dest color key value. If the destination pixel matches the
- * dest color key then the souce pixel from the video surface is displayed.
- * Otherwise, the destination pixel is displayed */
- unsigned long dest;
- /*! Enable and disable the src and dest color key.
- * See @ref igd_ovl_color_key_info_flags */
- unsigned long flags;
-} igd_ovl_color_key_info_t;
-
-/*----------------------------------------------------------------------------
- * Overlay Video Quality
- *--------------------------------------------------------------------------*/
-/*!
- * @brief Overlay Video Quality
- *
- * All have a range between 0x0000 and 0xFFFF with default = 0x8000
- */
-typedef struct _igd_ovl_video_quality_info{
- unsigned short contrast;
- unsigned short brightness;
- unsigned short saturation;
-} igd_ovl_video_quality_info_t;
-
-
-/*----------------------------------------------------------------------------
- * Overlay Gamma
- *--------------------------------------------------------------------------*/
-/*!
- * @name Overlay Gamma Flags
- * @anchor igd_ovl_gamma_info_flags
- *
- * Flags for use with @ref igd_ovl_gamma_info_t.
- * Enables and disables the gamma for the overlay
- *
- * @{
- */
-#define IGD_OVL_GAMMA_DISABLE 0x00000000
-#define IGD_OVL_GAMMA_ENABLE 0x00000001
-/*! @} */
-
-/*!
- * @name Overlay Gamma Min/Max
- * @anchor igd_ovl_gamma_info_range
- *
- * Minimum and maximum gamma values for red, green, and blue with
- * @ref igd_ovl_gamma_info_t. These values are in 24i.8f format.
- * Minimum value is 0.6
- * Maximum value is 6.0
- *
- * @{
- */
-#define IGD_OVL_GAMMA_DEFAULT 0x100 /* 1.0 */
-#define IGD_OVL_GAMMA_MIN 0x09A /* 0.6 */
-#define IGD_OVL_GAMMA_MAX 0x600 /* 6.0 */
-/*! @} */
-
-/*!
- * @brief Overlay Gamma
- *
- * Red, green, and blue values must be between min and max values.
- * This value is in 24i.8f format.
- * See @ref igd_ovl_gamma_info_range
- */
-typedef struct _igd_ovl_gamma_info{
- unsigned int red;
- unsigned int green;
- unsigned int blue;
- /*! Enable and disable the gamma for the overlay.
- * See @ref igd_ovl_gamma_info_flags */
- unsigned int flags;
-} igd_ovl_gamma_info_t;
-/*! @} */
-
-/*----------------------------------------------------------------------------
- * Overlay Info
- *--------------------------------------------------------------------------*/
-/*!
- * @brief Overlay Information (includes color key, video quality, and gamma)
- */
-typedef struct _igd_ovl_info{
- igd_ovl_color_key_info_t color_key;
- igd_ovl_video_quality_info_t video_quality;
- igd_ovl_gamma_info_t gamma;
-} igd_ovl_info_t;
-
-typedef struct _video_surface_data {
- int flags;
- void *file;
-} vid_surf_data_t;
-
-#define OVL_PRIMARY 0
-#define OVL_SECONDARY 1
-#define OVL_MAX_HW 2 /* Maximum number of overlays */
-
-/* Define the maximum number of blend surfaces which can be used */
-#define MAX_BLEND_SURF 2
-
-/* User mode overlay context */
-typedef struct _ovl_um_context {
- /* OVLADD add additional overlay initialization parameters here. */
- int chiptype;
- void *dispatch; /* can't make this igd_dispatch_t due to circular reference */
- unsigned long dc;
- unsigned int state;
-
- igd_display_h primary;
- void *primary_pipe; /* intel_pipe_data_t */
-
- igd_display_h secondary;
- void *secondary_pipe; /*intel_pipe_data_t */
-
- unsigned int blend_surf_num[OVL_MAX_HW];
- igd_surface_t blend_surf[OVL_MAX_HW][MAX_BLEND_SURF];
-
- vid_surf_data_t *vid_surf_data_ptr;
-
-} ovl_um_context_t;
-
-
-
-#endif /*_IGD_OVL_H*/