📄 if_nicevb.html
字号:
<html><head><!-- /vobs/wpwr/docs/vxworks/ref/if_nicEvb.html - generated by refgen from if_nicEvb.c --> <title> if_nicEvb </title></head><body bgcolor="#FFFFFF"> <hr><a name="top"></a><p align=right><a href="libIndex.html"><i>VxWorks Reference Manual : Libraries</i></a></p></blockquote><h1>if_nicEvb</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote> <p><strong>if_nicEvb</strong> - National Semiconductor ST-NIC Chip network interface driver </p></blockquote><h4>ROUTINES</h4><blockquote><p><p><b><i><a href="./if_nicEvb.html#nicEvbattach">nicEvbattach</a></i>( )</b> - publish and initialize the <b>nicEvb</b> network interface driver<br><b><i><a href="./if_nicEvb.html#nicTxStartup">nicTxStartup</a></i>( )</b> - the driver's actual output routine<br><p></blockquote><h4>DESCRIPTION</h4><blockquote><p>This module implements the National Semiconductor 83902A ST-NIC Ethernetnetwork interface driver.<p>This driver is non-generic and is for use on the IBM EVB403 board. Only unit number zero is supported. The driver must be given several target-specific parameters. These parameters, and the mechanisms used to communicate them to the driver, are detailed below.<p></blockquote><h4>BOARD LAYOUT</h4><blockquote><p>This device is on-board. No jumpering diagram is necessary.<p></blockquote><h4>EXTERNAL INTERFACE</h4><blockquote><p>This driver provides the standard external interface with the followingexceptions. All initialization is performed within the attach routine; thereis no separate initialization routine. Therefore, in the global interfacestructure, the function pointer to the initialization routine is NULL.<p>The only user-callable routine is <b><i><a href="./if_nicEvb.html#nicEvbattach">nicEvbattach</a></i>( )</b>, which publishes the <b>nicEvb</b>interface and initializes the driver and device.<p></blockquote><h4>TARGET-SPECIFIC PARAMETERS</h4><blockquote><p><dl><dt>device I/O address<dd>This parameter is passed to the driver by <b><i><a href="./if_nicEvb.html#nicEvbattach">nicEvbattach</a></i>( )</b>.It specifies the base address of the device's I/O registerset.<p><dt>interrupt vector<dd>This parameter is passed to the driver by <b><i><a href="./if_nicEvb.html#nicEvbattach">nicEvbattach</a></i>( )</b>.It specifies the interrupt vector to be used by the driverto service an interrupt from the ST-NIC device. The driver will connectthe interrupt handler to this vector by calling <b><i><a href="./intArchLib.html#intConnect">intConnect</a></i>( )</b>.<p><dt>device restart/reset delay<dd>The global variable nicRestartDelay (UINT32), defined in this file, should be initialized in the BSP <b><i><a href="./sysLib.html#sysHwInit">sysHwInit</a></i>( )</b> routine. nicRestartDelay is used only with PowerPC platform and is equal to the number of time base increments which makes for 1.6 msec. This corresponds to the delay necessary to respect when restarting or resetting the device. </dl><p></blockquote><h4>EXTERNAL SUPPORT REQUIREMENTS</h4><blockquote><p><p>The driver requires the following support functions:<p><dl><dt>STATUS sysEnetAddrGet (int unit, UINT8 * addr)<dd>The driver expects this routine to provide the six-byte Ethernet hardwareaddress that will be used by <i>unit</i>. This routine must copy the six-byteaddress to the space provided by <i>addr</i>. This routine is expected to returnOK on success, or ERROR. The driver calls this routine, during deviceinitialization, from the <b><i>nicEnetAddrGet</i>( )</b> routine. </dl><p></blockquote><h4>SYSTEM RESOURCE USAGE</h4><blockquote><p>When implemented, this driver requires the following system resources:<p> - one mutual exclusion semaphore<br> - one interrupt vector<p></blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./if_nicEvb.html#top">if_nicEvb</a></b>, <b><a href="./ifLib.html#top">ifLib</a></b><hr><a name="nicEvbattach"></a><p align=right><a href="rtnIndex.html"><i>Libraries : Routines</i></a></p></blockquote><h1><i>nicEvbattach</i>( )</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote> <p><strong><i>nicEvbattach</i>( )</strong> - publish and initialize the <b>nicEvb</b> network interface driver</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>STATUS nicEvbattach ( int unit, /* unit number */ NIC_DEVICE * pNic, /* address of NIC chip */ int ivec /* interrupt vector to use */ )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine publishes the <b>nicEvb</b> interface by filling in a networkinterface record and adding this record to the system list. It alsoinitializes the driver and the device to the operational state.<p></blockquote><h4>RETURNS</h4><blockquote><p>OK, or ERROR if the receive buffer memory could not be allocated.</blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./if_nicEvb.html#top">if_nicEvb</a></b><hr><a name="nicTxStartup"></a><p align=right><a href="rtnIndex.html"><i>Libraries : Routines</i></a></p></blockquote><h1><i>nicTxStartup</i>( )</h1> <blockquote></a></blockquote><h4>NAME</h4><blockquote> <p><strong><i>nicTxStartup</i>( )</strong> - the driver's actual output routine</p></blockquote><h4>SYNOPSIS</h4><blockquote><p><pre>#ifdef BSD43_DRIVER LOCAL STATUS nicTxStartup ( int unit )</pre></blockquote><h4>DESCRIPTION</h4><blockquote><p>This routine accepts outgoing packets from the if_snd queue, and then gains exclusive access to the DMA (through a mutex semaphore),then calls <b><i>nicTransmit</i>( )</b> to send the packet out onto the interface.<p></blockquote><h4>RETURNS</h4><blockquote><p>OK, or ERROR if the packet could not be transmitted.</blockquote><h4>SEE ALSO</h4><blockquote><p><b><a href="./if_nicEvb.html#top">if_nicEvb</a></b></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -