From 89c87686956af11f7453606ef15cb4571407590e Mon Sep 17 00:00:00 2001 From: Durga challa Date: Fri, 25 Jul 2014 13:34:50 +0530 Subject: [PATCH] ycrcb2rgb: Modified ycrcb2rgb. Modified doxygen reports and _g.c file. Signed-off-by: Durga challa Acked-by: Srikanth Vemula --- .../doc/html/api/functions_vars.html | 0 ...truct_x_y_cr_cb2_rgb___config-members.html | 0 .../api/struct_x_y_cr_cb2_rgb___config.html | 6 +- .../ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html | 91 +++++++++++++- .../doc/html/api/xycrcb2rgb__g_8c.html | 29 ++++- .../drivers/ycrcb2rgb/src/xycrcb2rgb_g.c | 115 ++++++------------ 6 files changed, 157 insertions(+), 84 deletions(-) mode change 100644 => 100755 XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/functions_vars.html mode change 100644 => 100755 XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config-members.html mode change 100644 => 100755 XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config.html mode change 100644 => 100755 XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html mode change 100644 => 100755 XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb__g_8c.html diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/functions_vars.html b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/functions_vars.html old mode 100644 new mode 100755 diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config-members.html b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config-members.html old mode 100644 new mode 100755 diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config.html b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config.html old mode 100644 new mode 100755 index d3f5a991..9adbf95d --- a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config.html +++ b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/struct_x_y_cr_cb2_rgb___config.html @@ -59,11 +59,11 @@ This typedef contains configuration information for a YCrCb2Rgb core. Each YCrCb u32 DCoef -u16 ROffset +u32 ROffset -u16 GOffset +u32 GOffset -u16 BOffset +u32 BOffset u16 HasClip diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html old mode 100644 new mode 100755 index 7d72ed5d..0eb1f37e --- a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html +++ b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb_8h.html @@ -21,7 +21,96 @@
  • File List
  • File Members
  • -

    xycrcb2rgb.h File Reference

    +

    xycrcb2rgb.h File Reference


    Detailed Description

    +This header file contains identifiers and register-level driver functions (or macros), range macros, structure typedefs that can be used to access the Xilinx YCRCB2RGB core.

    +The YCrCb to RGB Color-Space Convertor core is a simplified 3x3 matrix multiplier converts three input color samples to three output samples in a single clock cycle. The core supports four common format conversions as well as a custom mode that allows for a user-defined transform. The core is capable of a maximum resolution of 7680 columns by 7680 rows with 8, 10, 12, or 16 bits per pixel.

    +Initialization & Configuration

    +The device driver enables higher layer software (e.g., an application) to communicate to the YCRCB2RGB core.

    +XYCrCb2Rgb_CfgInitialize() API is used to initialize the YCRCB2RGB core. The user needs to first call the XYCrCb2Rgb_LookupConfig() API which returns the Configuration structure pointer which is passed as a parameter to the XYCrCb2Rgb_CfgInitialize() API.

    + Interrupts

    +The driver provides an interrupt handler XYCrCb2Rgb_IntrHandler for handling the interrupt from the YCRCB2RGB core. The users of this driver have to register this handler with the interrupt system and provide the callback functions by using XYCrCb2Rgb_SetCallBack API.

    + Virtual Memory

    +This driver supports Virtual Memory. The RTOS is responsible for calculating the correct device base address in Virtual Memory space.

    + Threads

    +This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.

    + Asserts

    +Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining, at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that users leave asserts on during development.

    + Building the driver

    +The XYCrCb2Rgb driver is composed of several source files. This allows the user to build and link only those parts of the driver that are necessary.

    +

    + MODIFICATION HISTORY:

    +

     Ver   Who    Date     Changes
    + ----- ------ -------- -------------------------------------------------------
    + 5.00a tb     02/28/12 Updated for YCRCB2RGB V5.00.a
    + 5.01a bao    12/28/12 Converted from xio.h to xil_io.h, translating basic
    +                       types, MB cache functions, exceptions and assertions
    +                       to xil_io format.
    + 6.0   adk    19/12/13 Updated as per the New Tcl API's
    + 7.0   adk    01/31/14 Changed the file name from "ycrcb2rgb.h" to
    +                       "xycrcb2rgb.h".

    +

                           Moved register offsets and bit definitions from
    +                       ycrcb2rgb.h file to xycrcb2rgb_hw.h file.

    +

                           Removed YCC_TIMING_STATUS register offset because this
    +                       register is not present in latest product guide.

    +

                           Removed following function macros:
    +                       YCC_Enable, YCC_Disable, YCC_RegUpdateEnable,
    +                       YCC_RegUpdateDisable, YCC_Reset, YCC_ClearReset,
    +                       YCC_AutoSyncReset, ycc_max..

    +

                           Removed following functions:
    +                       YCC_select_standard, YCC_coefficient_translation,
    +                       YCC_set_coefficients, YCC_get_coefficients.

    +

                           Added following handler types as enum:
    +                       XYCC_HANDLER_PROCSTART, XYCC_HANDLER_FRAMEDONE,
    +                       XYCC_HANDLER_ERROR.

    +

                           Added following standard types as enum:
    +                       XYCC_STANDARD_ITU_601_SD, XYCC_STANDARD_ITU_709_NTSC,
    +                       XYCC_STANDARD_ITU_709_PAL, XYCC_STANDARD_YUV,
    +                       XYCC_STANDARD_CUSTOM.

    +

                           Added following output ranges as enum:
    +                       XYCC_TV_16_TO_240, XYCC_STUDIO_16_TO_235,
    +                       XYCC_GRAPHICS_0_TO_255.

    +

                           Added range macros for ActiveSize, RGBMAX, RGBMIN,
    +                       ROFFSET, GOFFSET, BOFFSET registers.

    +

                           Added following function macros:
    +                       XYCrCb2Rgb_IntrEnable, XYCrCb2Rgb_IntrDisable,
    +                       XYCrCb2Rgb_StatusGetPending, XYCrCb2Rgb_IntrGetPending,
    +                       XYCrCb2Rgb_IntrClear, XYCrCb2Rgb_Reset,
    +                       XYCrCb2Rgb_Enable, XYCrCb2Rgb_Disable,
    +                       XYCrCb2Rgb_Start, XYCrCb2Rgb_Stop,
    +                       XYCrCb2Rgb_RegUpdateEnable,
    +                       XYCrCb2Rgb_RegUpdateDisable,
    +                       XYCrCb2Rgb_SyncReset, XYCrCb2Rgb_Max

    +

                           Added core, configuration and coefficient structure.
    +                       Renamed ycc_coef_inputs -> XYCrCb2Rgb_Coef_Inputs and
    +                       ycc_coef_outputs - > XYCrCb2Rgb_Coef_Outputs.

    +

                           Added callback functions typedef.

    +

                           Implemented XYCrCb2Rgb_LookupConfig in
    +                       xycrcb2rgb_sinit.c
    +                       Implemented XYCrCb2Rgb_SelfTest in
    +                       xycrcb2rgb_selftest.c
    +                       Implemented XYCrCb2Rgb_IntrHandler,
    +                       XYCrCb2Rgb_SetCallBack in xycrcb2rgb_intr.c.

    +

                           Implemented following functions in xycrcb2rgb.c:
    +                       XYCrCb2Rgb_CfgInitialize, XYCrCb2Rgb_EnableDbgByPass,
    +                       XYCrCb2Rgb_IsDbgByPassEnabled,
    +                       XYCrCb2Rgb_DisableDbgBypass,
    +                       XYCrCb2Rgb_EnableDbgTestPattern,
    +                       XYCrCb2Rgb_IsDbgTestPatternEnabled,
    +                       XYCrCb2Rgb_DisableDbgTestPattern,
    +                       XYCrCb2Rgb_GetVersion, XYCrCb2Rgb_GetDbgFrameCount,
    +                       XYCrCb2Rgb_GetDbgLineCount,
    +                       XYCrCb2Rgb_GetDbgPixelCount, XYCrCb2Rgb_Setup,
    +                       XYCrCb2Rgb_SetActiveSize, XYCrCb2Rgb_GetActiveSize,
    +                       XYCrCb2Rgb_SetRGBMax, XYCrCb2Rgb_GetRGBMax,
    +                       XYCrCb2Rgb_SetRGBMin, XYCrCb2Rgb_GetRGBMin,
    +                       XYCrCb2Rgb_SetROffset, XYCrCb2Rgb_GetROffset,
    +                       XYCrCb2Rgb_SetGOffset, XYCrCb2Rgb_GetGOffset,
    +                       XYCrCb2Rgb_SetBOffset, XYCrCb2Rgb_GetBOffset,
    +                       XYCrCb2Rgb_SetCoefs, XYCrCb2Rgb_GetCoefs,
    +                       XYCrCb2Rgb_Select_Standard,
    +                       XYCrCb2Rgb_Coefficient_Translation,
    +                       XYCrCb2Rgb_Select_OutputRange.
    +*

    #include "xycrcb2rgb_hw.h"
    #include "xil_assert.h"
    diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb__g_8c.html b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb__g_8c.html old mode 100644 new mode 100755 index d409aed9..6bada430 --- a/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb__g_8c.html +++ b/XilinxProcessorIPLib/drivers/ycrcb2rgb/doc/html/api/xycrcb2rgb__g_8c.html @@ -46,8 +46,35 @@

    Initial value:

     {
    +     
             
    -        
    +        {
    +                XPAR_V_YCRCB2RGB_1_DEVICE_ID,
    +                XPAR_V_YCRCB2RGB_1_BASEADDR,
    +                XPAR_V_YCRCB2RGB_1_S_AXIS_VIDEO_FORMAT,
    +                XPAR_V_YCRCB2RGB_1_M_AXIS_VIDEO_FORMAT,
    +                XPAR_V_YCRCB2RGB_1_HAS_DEBUG,
    +                XPAR_V_YCRCB2RGB_1_HAS_INTC_IF,
    +                XPAR_V_YCRCB2RGB_1_MAX_COLS,
    +                XPAR_V_YCRCB2RGB_1_ACTIVE_COLS,
    +                XPAR_V_YCRCB2RGB_1_ACTIVE_ROWS,
    +                XPAR_V_YCRCB2RGB_1_MWIDTH,
    +                XPAR_V_YCRCB2RGB_1_COEF_RANGE,
    +                XPAR_V_YCRCB2RGB_1_ACOEF,
    +                XPAR_V_YCRCB2RGB_1_BCOEF,
    +                XPAR_V_YCRCB2RGB_1_CCOEF,
    +                XPAR_V_YCRCB2RGB_1_DCOEF,
    +                XPAR_V_YCRCB2RGB_1_ROFFSET,
    +                XPAR_V_YCRCB2RGB_1_GOFFSET,
    +                XPAR_V_YCRCB2RGB_1_BOFFSET,
    +                XPAR_V_YCRCB2RGB_1_HAS_CLIP,
    +                XPAR_V_YCRCB2RGB_1_HAS_CLAMP,
    +                XPAR_V_YCRCB2RGB_1_RGBMAX,
    +                XPAR_V_YCRCB2RGB_1_RGBMIN,
    +                XPAR_V_YCRCB2RGB_1_S_AXI_CLK_FREQ_HZ,
    +                XPAR_V_YCRCB2RGB_1_STANDARD_SEL,
    +                XPAR_V_YCRCB2RGB_1_OUTPUT_RANGE
    +        }
     }
     
    diff --git a/XilinxProcessorIPLib/drivers/ycrcb2rgb/src/xycrcb2rgb_g.c b/XilinxProcessorIPLib/drivers/ycrcb2rgb/src/xycrcb2rgb_g.c index 86915b8e..8c6a7cf2 100755 --- a/XilinxProcessorIPLib/drivers/ycrcb2rgb/src/xycrcb2rgb_g.c +++ b/XilinxProcessorIPLib/drivers/ycrcb2rgb/src/xycrcb2rgb_g.c @@ -1,34 +1,17 @@ + /****************************************************************************** * +* CAUTION: This file is automatically generated by HSM. +* Version: * Copyright (C) 2010 - 2014 Xilinx, Inc. All rights reserved. * -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documentation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is +* v (64-bit) +SW Build (by ) on * furnished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in +* * all copies or substantial portions of the Software. * -* Use of the Software is limited solely to applications: -* (a) running on a Xilinx device, or -* (b) that interact with a Xilinx device through a bus or interconnect. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -* XILINX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF -* OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -* SOFTWARE. -* -* Except as contained in this notice, the name of the Xilinx shall not be used -* in advertising or otherwise to promote the sale, use or other dealings in -* this Software without prior written authorization from Xilinx. -* -******************************************************************************/ +*******************************************************************/ #include "xparameters.h" #include "xycrcb2rgb.h" @@ -39,59 +22,33 @@ XYCrCb2Rgb_Config XYCrCb2Rgb_ConfigTable[] = { - /* - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_DEVICE_ID, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_BASEADDR, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_S_AXIS_VIDEO_FORMAT, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_M_AXIS_VIDEO_FORMAT, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_HAS_DEBUG, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_HAS_INTC_IF, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_MAX_COLS, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_ACTIVE_COLS, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_ACTIVE_ROWS, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_MWIDTH, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_COEF_RANGE, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_ACOEF, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_BCOEF, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_CCOEF, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_DCOEF, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_ROFFSET, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_GOFFSET, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_BOFFSET, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_HAS_CLIP, - XPAR_FMC_SENSOR_INPUT_YCRCB2RGB_1_HAS_CLAMP, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_RGBMAX, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_RGBMIN, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_S_AXI_CLK_FREQ_HZ, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_STANDARD_SEL, - XPAR_FMC_SENSOR_INPUT_V_YCRCB2RGB_1_OUTPUT_RANGE - ,*/ - /* - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_DEVICE_ID, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_BASEADDR, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_S_AXIS_VIDEO_FORMAT, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_M_AXIS_VIDEO_FORMAT, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_HAS_DEBUG, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_HAS_INTC_IF, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_MAX_COLS, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_ACTIVE_COLS, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_ACTIVE_ROWS, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_MWIDTH, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_COEF_RANGE, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_ACOEF, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_BCOEF, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_CCOEF, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_DCOEF, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_ROFFSET, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_GOFFSET, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_BOFFSET, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_HAS_CLIP, - XPAR_HDMI_OUTPUT_YCRCB2RGB_1_HAS_CLAMP, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_RGBMAX, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_RGBMIN, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_S_AXI_CLK_FREQ_HZ, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_STANDARD_SEL, - XPAR_HDMI_OUTPUT_V_YCRCB2RGB_1_OUTPUT_RANGE - - */ + { + XPAR_V_YCRCB2RGB_1_DEVICE_ID, + XPAR_V_YCRCB2RGB_1_BASEADDR, + XPAR_V_YCRCB2RGB_1_S_AXIS_VIDEO_FORMAT, + XPAR_V_YCRCB2RGB_1_M_AXIS_VIDEO_FORMAT, + XPAR_V_YCRCB2RGB_1_HAS_DEBUG, + XPAR_V_YCRCB2RGB_1_HAS_INTC_IF, + XPAR_V_YCRCB2RGB_1_MAX_COLS, + XPAR_V_YCRCB2RGB_1_ACTIVE_COLS, + XPAR_V_YCRCB2RGB_1_ACTIVE_ROWS, + XPAR_V_YCRCB2RGB_1_MWIDTH, + XPAR_V_YCRCB2RGB_1_COEF_RANGE, + XPAR_V_YCRCB2RGB_1_ACOEF, + XPAR_V_YCRCB2RGB_1_BCOEF, + XPAR_V_YCRCB2RGB_1_CCOEF, + XPAR_V_YCRCB2RGB_1_DCOEF, + XPAR_V_YCRCB2RGB_1_ROFFSET, + XPAR_V_YCRCB2RGB_1_GOFFSET, + XPAR_V_YCRCB2RGB_1_BOFFSET, + XPAR_V_YCRCB2RGB_1_HAS_CLIP, + XPAR_V_YCRCB2RGB_1_HAS_CLAMP, + XPAR_V_YCRCB2RGB_1_RGBMAX, + XPAR_V_YCRCB2RGB_1_RGBMIN, + XPAR_V_YCRCB2RGB_1_S_AXI_CLK_FREQ_HZ, + XPAR_V_YCRCB2RGB_1_STANDARD_SEL, + XPAR_V_YCRCB2RGB_1_OUTPUT_RANGE + } }; + +