diff --git a/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.mdd b/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.mdd
index 6854bd32..99bb31ef 100755
--- a/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.mdd
+++ b/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.mdd
@@ -1,9 +1,9 @@
-###############################################################################
+##############################################################################
#
# Copyright (C) 2008 - 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
+# 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
@@ -27,8 +27,8 @@
# 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.
-#
###############################################################################
+
OPTION psf_version = 2.1;
BEGIN driver deinterlacer
diff --git a/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.tcl b/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.tcl
index e54f8a79..0d34cd27 100755
--- a/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.tcl
+++ b/XilinxProcessorIPLib/drivers/deinterlacer/data/deinterlacer.tcl
@@ -1,9 +1,9 @@
-###############################################################################
+##############################################################################
#
# Copyright (C) 2011 - 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
+# 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
@@ -27,20 +27,13 @@
# 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.
-#
###############################################################################
-#
-# Modification History
-# Ver Who Date Changes
-# -------- ------ -------- ----------------------------------------------------
-# 3.0 adk 10/12/13 Updated as per the New Tcl API's
-#################################################################################
+
+#uses "xillib.tcl"
proc generate {drv_handle} {
- xdefine_include_file $drv_handle "xparameters.h" "XDEINT" "NUM_INSTANCES" "DEVICE_ID" "C_DIAG" "C_MOTION" "C_DEPTH" "C_STREAMS" "C_TRIPLE_PORT" "C_MAX_XSIZE" "C_BASEADDR" "C_HIGHADDR"
+ xdefine_include_file $drv_handle "xparameters.h" "XDEINT" "NUM_INSTANCES" "DEVICE_ID" "C_DIAG" "C_MOTION" "C_DEPTH" "C_STREAMS" "C_TRIPLE_PORT" "C_MAX_XSIZE" "C_BASEADDR" "C_HIGHADDR" "XDeint" "DEVICE_ID" "C_BASEADDR"
xdefine_config_file $drv_handle "xdeint_g.c" "XDeint" "DEVICE_ID" "C_BASEADDR"
- xdefine_canonical_xpars $drv_handle "xparameters.h" "Deinterlacer" "DEVICE_ID" "C_BASEADDR" "C_HIGHADDR"
+ xdefine_canonical_xpars $drv_handle "xparameters.h" "Deinterlacer" "DEVICE_ID" "C_BASEADDR" "C_HIGHADDR" "XDeint" "DEVICE_ID" "C_BASEADDR"
}
-
-
diff --git a/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/annotated.html b/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/annotated.html
index c7de21fb..a20df47a 100755
--- a/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/annotated.html
+++ b/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/annotated.html
@@ -9,7 +9,7 @@
-Here is a list of all documented class members with links to the class documentation for each member:
+Here is a list of all class members with links to the classes they belong to:
-Here is a list of all documented file members with links to the documentation:
+Here is a list of all file members with links to the files they belong to:
-This is the main header file of Xilinx Video Deinterlacer device driver
+This is the main header file of Xilinx Video Deinterlacer core.
Interrupt Service
The Deinterlacer can generate 11 interrupt sources
-
Internal Register update done
Deinterlacer is locked to incoming video
Deinterlacer has lost lock to incoming video
Deinterlacer internal fifo error
Pulldown activated
Pulldown cancelled
Frame Tick
Framestore Write setup error
Framestore Write fifo overflow
Framestore Read Field underrun
Framestore Read Frame underrun
+
Internal Register update done
Deinterlacer is locked to incoming video
Deinterlacer has lost lock to incoming video
Deinterlacer internal FIFO error
Pull down activated
Pull down cancelled
Frame Tick
Frame store Write setup error
Frame store Write FIFO overflow
Frame store Read Field under run
Frame store Read Frame under run
This driver provides functions to install callbacks for the interrupts and enable/disable/clear any of them.
Examples
-Example(s) are provided with this driver to demonstrate the driver usage.
+Example(s) are provided with this driver to demonstrate the self test.
Limitations
BUS Interface
MODIFICATION HISTORY:
-
Ver Who Date Changes
+
Ver Who Date Changes
----- ---- -------- -------------------------------------------------------
- 1.00a rjh 07/10/11 First release
- 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
- 3.0 adk 19/12/13 Updated as per the New Tcl API's
- 3.1 adk 09/05/14 Fixed the CR:798337 driver doesn't support the IP in the
- build.Changes are made in the driver mdd file.
-
-
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved.
+ 1.00a rjh 07/10/11 First release
+ 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+ 3.0 adk 19/12/13 Updated as per the New Tcl API's.
+ 3.2 adk 02/13/14 Added Doxygen support, adherence to Xilinx
+ coding standards.
+
Modification history of xdeint_sinit.c:
+ Added Doxygen support, adherence to Xilinx
+ coding standards.
+
Modification history of xdeint_selftest.c:
+ Added the XDeint_Selftest function.
+
Modification history of xdeint_intr.c:
+ Adherence to Xilinx coding, Doxygen guidelines.
+
Modification history of xdeint_i.h:
+ Added Doxygen support.
+
Modification history of xdeint_hw.h:
+ Suffixed "_OFFSET" to all register offset macros.
+ Added bit masks for the registers and added
+ backward compatibility for macros.
+
Modification history of xdeint.c:
+ Changed the prototype of XDeint_GetVersion
+ Implemented the following functions:
+ XDeint_GetFramestore
+ XDeint_GetVideo
+ XDeint_GetThresholds
+ XDeint_GetPulldown
+ XDeint_GetSize
+
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved.
diff --git a/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/struct_x_deint-members.html b/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/struct_x_deint-members.html
index 33d3ca3a..2b95679c 100755
--- a/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/struct_x_deint-members.html
+++ b/XilinxProcessorIPLib/drivers/deinterlacer/doc/html/api/struct_x_deint-members.html
@@ -9,7 +9,7 @@
-The XDeint driver instance data. An instance must be allocated for each DEINT device in use.
+The XDeint driver instance data. An instance must be allocated for each Deintlerlacer core in use.
-Deinterlacer device configuration structure. Each Deinterlacer device should have a configuration structure associated.
+Deinterlacer core configuration structure. Each Deinterlacer core should have a configuration structure associated.
-This is main code of Xilinx Vide Deinterlacer device driver. Please see xdeint.h for more details of the driver.
+This is main code of Xilinx Vide Deinterlacer core. Please see xdeint.h for more details of the driver.
MODIFICATION HISTORY:
-
Ver Who Date Changes
- ----- ---- -------- -------------------------------------------------------
- 1.00a rjh 07/10/11 First release
- 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+
Ver Who Date Changes
+ ----- ---- -------- ------------------------------------------------------
+ 1.00a rjh 07/10/11 First release
+ 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+ 3.2 adk 02/13/14 Changed the prototype of XDeint_GetVersion
+ Implemented the following functions:
+ XDeint_GetFramestore
+ XDeint_GetVideo
+ XDeint_GetThresholds
+ XDeint_GetPulldown
+ XDeint_GetSize
-This function initializes an Deinterlacer device. This function must be called prior to using a Deinterlacer device. Initialization of an Deinterlacer includes setting up the instance data, and ensuring the hardware is in a quiescent state.
+This function initializes the Deinterlacer core. This function must be called prior to using a Deinterlacer core. Initialization of the Deinterlacer includes setting up the instance data, and ensuring the hardware is in a quiescent state.
Parameters:
-
InstancePtr
is a pointer to the Deinterlacer device instance to be worked on.
-
CfgPtr
points to the configuration structure associated with the Deinterlacer device.
-
EffectiveAddr
is the base address of the device. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used.
points to the configuration structure associated with the Deinterlacer core.
+
EffectiveAddr
is the base address of the core. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used.
-This function returns the version of a Deinterlacer device.
+This function gets input field buffer addresses of an Deinterlacer core.
Parameters:
-
InstancePtr
is a pointer to the Deinterlacer device instance to be worked on.
-
Major
points to an unsigned 16-bit variable that will be assigned with the major version number after this function returns. Value range is from 0x0 to 0xF.
-
Minor
points to an unsigned 16-bit variable that will be assigned with the minor version number after this function returns. Value range is from 0x00 to 0xFF.
-
Revision
points to an unsigned 16-bit variable that will be assigned with the revision version number after this function returns. Value range is from 0xA to 0xF.
is the bit-mask of the interrupts to be enabled. Bit positions of 1 will be disabled. Bit post ions of 0 will keep the previous setting.This mask is formed by OR'ing XDEINT_IXR_*_MASK constants defined in xdeint_hw.h to create this parameter value.
+
+
+
Returns:
None.
+
Note:
Any other interrupt not covered by parameter IntrType, if enabled before this macro is called, will remain enabled.
is the bit-mask of the interrupts to be enabled. Bit positions of 1 will be enabled. Bit post ions of 0 will keep the previous setting.This mask is formed by OR'ing XDEINT_IXR_*_MASK constants defined in xdeint_hw.h to create this parameter value.
+
+
+
Returns:
None.
+
Note:
The existing enabled interrupt(s) will remain enabled.
This macro soft resets the Deinterlacer to its default mode. This register will clear once the reset is complete. Software should poll here until the reset has completed. NOTE : Attempting to alter CPU registers during a soft reset will result in no register changes due to the CPU interface being reset.
+This function initializes the Deinterlacer core. This function must be called prior to using a Deinterlacer core. Initialization of the Deinterlacer includes setting up the instance data, and ensuring the hardware is in a quiescent state.
points to the configuration structure associated with the Deinterlacer core.
+
EffectiveAddr
is the base address of the core. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used.
+This function is the interrupt handler for the Deinterlacer core.
+This handler reads the pending interrupt from the IER/ISR, determines the source of the interrupts, calls according callback, and finally clears the interrupts.
+The application is responsible for connecting this function to the interrupt system. Application beyond this driver is also responsible for providing callbacks to handle interrupts and installing the callbacks using XDeint_SetCallBack() during initialization phase.
The Error interrupt callback invoked in case an error interrupt or spurious interrupt happens should reset the Deinterlacer core that just interrupted.
+This function returns a reference to an XDeint_Config structure based on the unique device id, DeviceId. The return value will refer to an entry in the device configuration table defined in the xdeint_g.c file.
+
Parameters:
+
+
DeviceId
is the unique device ID of the device for the lookup operation.
+
+
+
Returns:
XDeint_LookupConfig returns a reference to a config record in the configuration table (in xDEINT_g.c) corresponding to DeviceId or NULL if no match is found.
@@ -25,48 +25,41 @@
This file contains a template for configuration table of Xilinx Video Deinterlacer For a real hardware system, Xilinx Platform Studio (XPS) will automatically generate a real configuration table to match the configuration of the Deinterlacer devices.
MODIFICATION HISTORY:
-
Ver Who Date Changes
- ----- ---- -------- -------------------------------------------------------
- 1.00a rjh 07/10/11 First release
- 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+
Ver Who Date Changes
+ ----- ------ -------- -------------------------------------------------------
+ 1.00a rjh 07/10/11 First release
+ 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+ 3.2 adk 02/13/14 Adherence to Xilinx coding, Doxygen guidelines.
-This header file contains identifiers and register-level driver functions (or macros) that can be used to access the Xilinx Video Deinterlacer device.
-For more information about the operation of this device, see the hardware specification and documentation in the higher level driver xdeint.h source code file.
+This header file contains identifiers and register-level driver functions (or macros) that can be used to access the Xilinx Video Deinterlacer core.
+For more information about the operation of this core, see the hardware specification and documentation in the higher level core xdeint.h source code file.
MODIFICATION HISTORY:
-
Ver Who Date Changes
- ----- ---- -------- -------------------------------------------------------
- 1.00a rjh 07/10/11 First release
- 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00
+
Ver Who Date Changes
+ ----- ------ -------- -------------------------------------------------------
+ 1.00a rjh 07/10/11 First release.
+ 2.00a rjh 18/01/12 Updated for v_deinterlacer 2.00.
+ 3.2 adk 02/13/14 Suffixed "_OFFSET" to all register offset macros.
+ Added bit masks for the registers and added
+ backward compatibility for macros.