2014-06-24 16:45:01 +05:30
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html;charset=iso-8859-1" >
< title >
2014-08-21 16:22:26 +05:30
Xilinx Driver srio v1_0: xsrio.c File Reference
2014-06-24 16:45:01 +05:30
< / title >
2014-08-21 16:22:26 +05:30
< link href = "doxygen_kalyanidocs/doc/css/driver_api_doxygen.css" rel = "stylesheet" type = "text/css" >
2014-06-24 16:45:01 +05:30
< / head >
< h3 class = "PageHeader" > Xilinx Processor IP Library< / h3 >
< hl > Software Drivers< / hl >
< hr class = "whs1" >
2014-08-21 16:22:26 +05:30
<!-- Generated by Doxygen 1.6.1 -->
< div class = "navigation" id = "top" >
< div class = "tabs" >
< ul >
< li > < a href = "index.html" > < span > Main Page< / span > < / a > < / li >
< li > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
< li class = "current" > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< / ul >
< / div >
< div class = "tabs" >
< ul >
< li > < a href = "files.html" > < span > File List< / span > < / a > < / li >
< li > < a href = "globals.html" > < span > File Members< / span > < / a > < / li >
< / ul >
< / div >
< / div >
< div class = "contents" >
< h1 > xsrio.c File Reference< / h1 > < code > #include " < a class = "el" href = "xsrio_8h.html" > xsrio.h< / a > " < / code > < br / >
< table border = "0" cellpadding = "0" cellspacing = "0" >
< tr > < td colspan = "2" > < h2 > Functions< / h2 > < / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#ac5162a4f64b1b7d32456015e6c6b0243" > XSrio_CfgInitialize< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr, < a class = "el" href = "struct_x_srio___config.html" > XSrio_Config< / a > *Config, u32 EffectiveAddress)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#acbd49fb630e7f2d7c8533d12607ef105" > XSrio_GetPortStatus< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#a753aded6db30e1c042e7c7ee43b2a483" > XSrio_GetPEType< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > int < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#afce174875d087f4b3cc4713a1df5446d" > XSrio_IsOperationSupported< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr, u8 Operation, u8 Direction)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#a9cb7fbc368f16113382c2a9b4556b601" > XSrio_SetWaterMark< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr, u8 WaterMark0, u8 WaterMark1, u8 WaterMark2)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "xsrio_8c.html#a9eb82f808fa01a1679ed60a026a2a2c7" > XSrio_GetWaterMark< / a > (< a class = "el" href = "struct_x_srio.html" > XSrio< / a > *InstancePtr, u8 *WaterMark0, u8 *WaterMark1, u8 *WaterMark2)< / td > < / tr >
< / table >
< hr / > < a name = "_details" > < / a > < h2 > Detailed Description< / h2 >
< p > This file contains the required functions for the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > driver. See the < a class = "el" href = "xsrio_8h.html" > xsrio.h< / a > header file for more details on this driver.< / p >
2014-06-24 16:45:01 +05:30
< pre >
2014-08-21 16:22:26 +05:30
MODIFICATION HISTORY:< / pre > < pre > Ver Who Date Changes
2014-06-24 16:45:01 +05:30
----- ---- -------- -------------------------------------------------------
1.0 adk 16/04/14 Initial release
2014-08-21 16:22:26 +05:30
< / pre > < hr / > < h2 > Function Documentation< / h2 >
< a class = "anchor" id = "ac5162a4f64b1b7d32456015e6c6b0243" > < / a > <!-- doxytag: member="xsrio.c::XSrio_CfgInitialize" ref="ac5162a4f64b1b7d32456015e6c6b0243" args="(XSrio *InstancePtr, XSrio_Config *Config, u32 EffectiveAddress)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > int XSrio_CfgInitialize < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio___config.html" > XSrio_Config< / a > * < / td >
< td class = "paramname" > < em > Config< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u32 < / td >
< td class = "paramname" > < em > EffectiveAddress< / em > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > Initialize the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > instance provided by the caller based on the given Config structure.< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > instance to operate on. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > Config< / em > < / td > < td > is the device configuration structure containing information about a specific SRIO Device. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > EffectiveAddress< / em > < / td > < td > is the Physical address of the hardware in a Virtual Memory operating system environment.It is the Base Address in a stand alone environment.< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > < ul >
< li > XST_SUCCESS Initialization was successful.< / li >
< / ul >
2014-06-24 16:45:01 +05:30
< / dd > < / dl >
2014-08-21 16:22:26 +05:30
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > None. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "a753aded6db30e1c042e7c7ee43b2a483" > < / a > <!-- doxytag: member="xsrio.c::XSrio_GetPEType" ref="a753aded6db30e1c042e7c7ee43b2a483" args="(XSrio *InstancePtr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > int XSrio_GetPEType < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > < / td >
< td > ) < / td >
< td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > XSrio_GetPEType API will check for the Processing Element type and return the type of type of Processing Element< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > instance to operate on.< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > < ul >
< li > XSRIO_IS_MEMORY if the core is configured as a memory< / li >
< li > XSRIO_IS_PROCESSOR if the core is configured as a processor< / li >
< li > XSRIO_IS_BRIDGE if the core is configured as a bridge.< / li >
< / ul >
2014-06-24 16:45:01 +05:30
< / dd > < / dl >
2014-08-21 16:22:26 +05:30
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > : None. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "acbd49fb630e7f2d7c8533d12607ef105" > < / a > <!-- doxytag: member="xsrio.c::XSrio_GetPortStatus" ref="acbd49fb630e7f2d7c8533d12607ef105" args="(XSrio *InstancePtr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > int XSrio_GetPortStatus < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > < / td >
< td > ) < / td >
< td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > XSrio_GetPortStatus will check the status of the port and returns the status of the port to the user< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > instance to operate on.< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > < ul >
< li > XSRIO_PORT_OK Port is initialized with no errors.< / li >
< li > XSRIO_PORT_UNINITIALIZED Port is not initialized. No Serial Rapidio link is present.< / li >
< li > XSRIO_PORT_HAS_ERRORS Port is initialized but has errors.< / li >
< / ul >
2014-06-24 16:45:01 +05:30
< / dd > < / dl >
2014-08-21 16:22:26 +05:30
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > : None. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "a9eb82f808fa01a1679ed60a026a2a2c7" > < / a > <!-- doxytag: member="xsrio.c::XSrio_GetWaterMark" ref="a9eb82f808fa01a1679ed60a026a2a2c7" args="(XSrio *InstancePtr, u8 *WaterMark0, u8 *WaterMark1, u8 *WaterMark2)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > void XSrio_GetWaterMark < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 * < / td >
< td class = "paramname" > < em > WaterMark0< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 * < / td >
< td class = "paramname" > < em > WaterMark1< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 * < / td >
< td class = "paramname" > < em > WaterMark2< / em > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > XSrio_GetWaterMark API reads the water mark values.< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is the < a class = "el" href = "struct_x_srio.html" > XSrio< / a > instance to operate on. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark0< / em > < / td > < td > is a pointer to a variable where the driver will pass back the water mark 0 value. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark1< / em > < / td > < td > is a pointer to a variable where the driver will pass back the water mark 1 value. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark2< / em > < / td > < td > is a pointer to a variable where the driver will pass back the water mark 2 value.< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > None.< / dd > < / dl >
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > : None. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "afce174875d087f4b3cc4713a1df5446d" > < / a > <!-- doxytag: member="xsrio.c::XSrio_IsOperationSupported" ref="afce174875d087f4b3cc4713a1df5446d" args="(XSrio *InstancePtr, u8 Operation, u8 Direction)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > int XSrio_IsOperationSupported < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 < / td >
< td class = "paramname" > < em > Operation< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 < / td >
< td class = "paramname" > < em > Direction< / em > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > XSrio_IsOperationSupported tells whether the operation is supported by the SRIO Gen2 core or not.< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is a pointer to the SRIO Gen2 instance to be worked on. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > Operation< / em > < / td > < td > type is the operation type of the SRIO Packet < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > Direction< / em > < / td > < td > type< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > < ul >
2014-06-24 16:45:01 +05:30
< li > XST_SUCCESS if the operation is supported by the core.< ul >
2014-08-21 16:22:26 +05:30
< li > XST_FAILURE if the operation is not supported by the core.< / li >
< / ul >
< / li >
< / ul >
2014-06-24 16:45:01 +05:30
< / dd > < / dl >
2014-08-21 16:22:26 +05:30
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > None. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "a9cb7fbc368f16113382c2a9b4556b601" > < / a > <!-- doxytag: member="xsrio.c::XSrio_SetWaterMark" ref="a9cb7fbc368f16113382c2a9b4556b601" args="(XSrio *InstancePtr, u8 WaterMark0, u8 WaterMark1, u8 WaterMark2)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
2014-06-24 16:45:01 +05:30
< tr >
2014-08-21 16:22:26 +05:30
< td class = "memname" > void XSrio_SetWaterMark < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "struct_x_srio.html" > XSrio< / a > * < / td >
< td class = "paramname" > < em > InstancePtr< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 < / td >
< td class = "paramname" > < em > WaterMark0< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 < / td >
< td class = "paramname" > < em > WaterMark1< / em > , < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u8 < / td >
< td class = "paramname" > < em > WaterMark2< / em > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< tr >
2014-08-21 16:22:26 +05:30
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td > < td > < / td >
2014-06-24 16:45:01 +05:30
< / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / div >
< div class = "memdoc" >
< p > XSrio_SetWaterMark Configures the watermark to transfer a priority packet.< / p >
< dl > < dt > < b > Parameters:< / b > < / dt > < dd >
2014-06-24 16:45:01 +05:30
< table border = "0" cellspacing = "2" cellpadding = "0" >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > InstancePtr< / em > < / td > < td > is a pointer to the SRIO Gen2 instance to be worked on. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark0< / em > < / td > < td > is the water mark value to transfer a priority 0 packet. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark1< / em > < / td > < td > is the water mark value to transfer a priority 1 packet. < / td > < / tr >
< tr > < td valign = "top" > < / td > < td valign = "top" > < em > WaterMark2< / em > < / td > < td > is the water mark value to transfer a priority 2 packet.< / td > < / tr >
< / table >
2014-08-21 16:22:26 +05:30
< / dd >
2014-06-24 16:45:01 +05:30
< / dl >
2014-08-21 16:22:26 +05:30
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > None.< / dd > < / dl >
< dl class = "note" > < dt > < b > Note:< / b > < / dt > < dd > None. < / dd > < / dl >
< / div >
< / div >
< / div >
< p class = "Copyright" >
Copyright © 1995-2014 Xilinx, Inc. All rights reserved.
< / p >
< / body >
< / html >