summaryrefslogtreecommitdiff
path: root/static/freebsd/man9/iflibdd.9 4.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man9/iflibdd.9 4.html')
-rw-r--r--static/freebsd/man9/iflibdd.9 4.html367
1 files changed, 0 insertions, 367 deletions
diff --git a/static/freebsd/man9/iflibdd.9 4.html b/static/freebsd/man9/iflibdd.9 4.html
deleted file mode 100644
index a3986f5d..00000000
--- a/static/freebsd/man9/iflibdd.9 4.html
+++ /dev/null
@@ -1,367 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">IFLIBDD(9)</td>
- <td class="head-vol">Kernel Developer's Manual</td>
- <td class="head-rtitle">IFLIBDD(9)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">iflibdd</code> &#x2014; <span class="Nd">Device
- Dependent Configuration Functions</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp"><code class="In">#include
- &lt;<a class="In">ifdi_if.h</a>&gt;</code></p>
-<section class="Ss">
-<h2 class="Ss" id="Soft_Queue_Setup_and_Teardown_Functions"><a class="permalink" href="#Soft_Queue_Setup_and_Teardown_Functions">Soft
- Queue Setup and Teardown Functions</a></h2>
-</section>
-<section class="Ss">
-<h2 class="Ss">Mandatory Functions</h2>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_tx_queues_alloc</code>(<var class="Fa">if_ctx_t
- ctx</var>, <var class="Fa">caddr_t *vaddrs</var>, <var class="Fa">uint64_t
- *paddrs</var>, <var class="Fa">int ntxqs</var>, <var class="Fa">int
- ntxqsets</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_rx_queues_alloc</code>(<var class="Fa">if_ctx_t
- ctx</var>, <var class="Fa">caddr_t *vaddrs</var>, <var class="Fa">uint64_t
- *paddrs</var>, <var class="Fa">int nrxqs</var>, <var class="Fa">int
- nrxqsets</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_queues_free</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Optional Functions</h2>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_txq_setup</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint16_t qid</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_rxq_setup</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint16_t qid</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Device_Setup_and_Teardown_Functions"><a class="permalink" href="#Device_Setup_and_Teardown_Functions">Device
- Setup and Teardown Functions</a></h2>
-</section>
-<section class="Ss">
-<h2 class="Ss">Mandatory Functions</h2>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_attach_pre</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_attach_post</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_detach</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Optional Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_vlan_register</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint16_t vtag</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_vlan_unregister</code>(<var class="Fa">if_ctx_t
- ctx</var>, <var class="Fa">uint16_t vtag</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_suspend</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_resume</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Device Configuration Functions</h2>
-</section>
-<section class="Ss">
-<h2 class="Ss">Mandatory Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_init</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_stop</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_multi_set</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_mtu_set</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint32_t mtu</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_media_status</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">struct ifmediareq *ifr</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_media_change</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_promisc_set</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">int flags</var>);</p>
-<p class="Pp"><var class="Ft">uint64_t</var>
- <br/>
- <code class="Fn">ifdi_get_counter</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">ift_counter cnt</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_update_admin_status</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Optional Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_media_set</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Interrupt_enable/disable"><a class="permalink" href="#Interrupt_enable/disable">Interrupt
- enable/disable</a></h2>
-</section>
-<section class="Ss">
-<h2 class="Ss">Mandatory Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_intr_enable</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_queue_intr_enable</code>(<var class="Fa">if_ctx_t
- ctx</var>, <var class="Fa">uint16_t qid</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_intr_disable</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="IOV_Support"><a class="permalink" href="#IOV_Support">IOV
- Support</a></h2>
-<p class="Pp"><var class="Ft">init</var>
- <br/>
- <code class="Fn">iov_init</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint16_t num_vfs</var>, <var class="Fa">const nvlist_t
- *params</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">iov_uinit</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_vflr_handle</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_vf_add</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">uint16_t vfnum</var>, <var class="Fa">const nvlist_t
- *params</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Optional Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_link_intr_enable</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Optional_Service_Routines"><a class="permalink" href="#Optional_Service_Routines">Optional
- Service Routines</a></h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_timer</code>(<var class="Fa">if_ctx_t ctx</var>);</p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_watchdog_reset</code>(<var class="Fa">if_ctx_t
- ctx</var>);</p>
-</section>
-<section class="Ss">
-<h2 class="Ss">Additional Functions</h2>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">ifdi_led_func</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">int onoff</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_sysctl_int_delay</code>(<var class="Fa">if_ctx_t
- ctx</var>, <var class="Fa">if_int_delay_info_t iidi</var>);</p>
-<p class="Pp"><var class="Ft">int</var>
- <br/>
- <code class="Fn">ifdi_i2c_req</code>(<var class="Fa">if_ctx_t ctx</var>,
- <var class="Fa">struct ifi2creq *req</var>);</p>
-</section>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="FUNCTIONS"><a class="permalink" href="#FUNCTIONS">FUNCTIONS</a></h1>
-<p class="Pp">The above named functions are device dependent configuration
- functions. These routines are registered with iflib by the driver and are
- called from the corresponding iflib function to configure device specific
- functions and registers.</p>
-<section class="Ss">
-<h2 class="Ss" id="Device_Dependent_Functions"><a class="permalink" href="#Device_Dependent_Functions">Device
- Dependent Functions</a></h2>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Soft_Queue_Setup_and_Teardown"><a class="permalink" href="#Soft_Queue_Setup_and_Teardown">Soft
- Queue Setup and Teardown</a></h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_tx_queues_alloc"><a class="permalink" href="#ifdi_tx_queues_alloc"><code class="Fn">ifdi_tx_queues_alloc</code></a>()</dt>
- <dd>Mandatory function that is called during iflib_attach to allocate transmit
- queues. vaddrs and paddrs are arrays of virtual and physical addresses
- respectively of the hardware transmit queues. ntxqs is the number of
- queues per qset. ntxqsets is the number of qsets.</dd>
- <dt id="ifdi_rx_queues_alloc"><a class="permalink" href="#ifdi_rx_queues_alloc"><code class="Fn">ifdi_rx_queues_alloc</code></a>()</dt>
- <dd>Mandatory function that is called during iflib_attach to allocate receive
- queues. vaddrs and paddrs are arrays of virtual and physical addresses
- respectively of the hardware receive queues. nrxqs is the number of queues
- per qset. nrxqsets is the number of qsets.</dd>
- <dt id="ifdi_queues_free"><a class="permalink" href="#ifdi_queues_free"><code class="Fn">ifdi_queues_free</code></a>()</dt>
- <dd>Mandatory function that frees the allocated queues and associated transmit
- buffers.</dd>
- <dt id="ifdi_txq_setup"><a class="permalink" href="#ifdi_txq_setup"><code class="Fn">ifdi_txq_setup</code></a>()</dt>
- <dd>Optional function for each transmit queue that handles device specific
- initialization.</dd>
- <dt id="ifdi_rxq_setup"><a class="permalink" href="#ifdi_rxq_setup"><code class="Fn">ifdi_rxq_setup</code></a>()</dt>
- <dd>Optional function for each receive queue that handles device specific
- initialization.</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Device_Setup_and_Teardown"><a class="permalink" href="#Device_Setup_and_Teardown">Device
- Setup and Teardown</a></h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_attach_pre"><a class="permalink" href="#ifdi_attach_pre"><code class="Fn">ifdi_attach_pre</code></a>()</dt>
- <dd>Mandatory function implemented by the driver to perform any attach logic
- that procedes interrupt and queue allocation, queue setup, and interrupt
- assignment.</dd>
- <dt id="ifdi_attach_post"><a class="permalink" href="#ifdi_attach_post"><code class="Fn">ifdi_attach_post</code></a>()</dt>
- <dd>Mandatory function implemented by the driver to perform any attach logic
- that occurs after ifdi_attach_pre, and iflib's queue setup and MSI/MSIX(X)
- or legacy interrupt assignment.</dd>
- <dt id="ifdi_detach"><a class="permalink" href="#ifdi_detach"><code class="Fn">ifdi_detach</code></a>()</dt>
- <dd>Mandatory function that frees any resources allocated by the driver in
- ifdi_attach_pre and ifdi_attach_post.</dd>
- <dt id="ifdi_vlan_register"><a class="permalink" href="#ifdi_vlan_register"><code class="Fn">ifdi_vlan_register</code></a>()</dt>
- <dd>Optional function called by the VLAN config eventhandler.
- <var class="Va">vtag</var> is the new VLAN tag.</dd>
- <dt id="ifdi_vlan_unregister"><a class="permalink" href="#ifdi_vlan_unregister"><code class="Fn">ifdi_vlan_unregister</code></a>()</dt>
- <dd>Optional function called by the VLAN unconfig eventhandler.</dd>
- <dt id="ifdi_suspend"><a class="permalink" href="#ifdi_suspend"><code class="Fn">ifdi_suspend</code></a>()</dt>
- <dd>Optional function that suspends the driver.</dd>
- <dt id="ifdi_resume"><a class="permalink" href="#ifdi_resume"><code class="Fn">ifdi_resume</code></a>()</dt>
- <dd>Optional function that resumes a driver.</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss">Device Configuration Functions</h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_init"><a class="permalink" href="#ifdi_init"><code class="Fn">ifdi_init</code></a>()</dt>
- <dd>Mandatory function that will initialize and bring up the hardware. For
- example, it will reset the chip and enable the receiver unit. It should
- mark the interface running, but not active (
- <code class="Dv">IFF_DRV_RUNNING</code>, <code class="Dv">~IIF_DRV_OACTIVE
- ).</code></dd>
- <dt id="ifdi_stop"><a class="permalink" href="#ifdi_stop"><code class="Fn">ifdi_stop</code></a>()</dt>
- <dd>Mandatory function that should disable all traffic on the interface by
- issuing a global reset on the MAC and deallocating the TX and RX
- buffers.</dd>
- <dt id="ifdi_multi_set"><a class="permalink" href="#ifdi_multi_set"><code class="Fn">ifdi_multi_set</code></a>()</dt>
- <dd>Programs the interfaces multicast addresses</dd>
- <dt id="ifdi_media_status"><a class="permalink" href="#ifdi_media_status"><code class="Fn">ifdi_media_status</code></a>()</dt>
- <dd>Media Ioctl Callback. Function is called whenever the user queries the
- status of the interface using <a class="Xr">ifconfig(8)</a>. The driver
- sets the appropriate link type and speed in ifmr-&gt;ifm_active.</dd>
- <dt id="ifdi_mtu_set"><a class="permalink" href="#ifdi_mtu_set"><code class="Fn">ifdi_mtu_set</code></a>()</dt>
- <dd>Sets the mtu interface to the value of the second function parameter
- mtu.</dd>
- <dt id="ifdi_media_change"><a class="permalink" href="#ifdi_media_change"><code class="Fn">ifdi_media_change</code></a>()</dt>
- <dd>Function is called when the user changes speed/duplex using the
- media/mediaopt option with <a class="Xr">ifconfig(8)</a>.</dd>
- <dt id="ifdi_promisc_set"><a class="permalink" href="#ifdi_promisc_set"><code class="Fn">ifdi_promisc_set</code></a>()</dt>
- <dd>Enables or disables promisc settings depending upon the flags value.
- <var class="Va">flags</var> contains the interface's
- <a class="Xr">ifnet(9)</a> flags.</dd>
- <dt id="ifdi_get_counter"><a class="permalink" href="#ifdi_get_counter"><code class="Fn">ifdi_get_counter</code></a>()</dt>
- <dd>Returns the value for counter cnt depending upon counter type.</dd>
- <dt id="ifdi_update_admin_status"><a class="permalink" href="#ifdi_update_admin_status"><code class="Fn">ifdi_update_admin_status</code></a>()</dt>
- <dd>Sets the link_up state to TRUE or FALSE depending upon the OS link state.
- A real check of the hardware only happens with a link interrupt.</dd>
- <dt id="ifdi_media_set"><a class="permalink" href="#ifdi_media_set"><code class="Fn">ifdi_media_set</code></a>()</dt>
- <dd>Need to define</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Interrupt_Enable/Disable"><a class="permalink" href="#Interrupt_Enable/Disable">Interrupt
- Enable/Disable</a></h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_intr_enable"><a class="permalink" href="#ifdi_intr_enable"><code class="Fn">ifdi_intr_enable</code></a>()</dt>
- <dd>Mandatory function that enables all interrupts.</dd>
- <dt id="ifdi_intr_disable"><a class="permalink" href="#ifdi_intr_disable"><code class="Fn">ifdi_intr_disable</code></a>()</dt>
- <dd>Mandatory function that disables all interrupts.</dd>
- <dt id="ifdi_queue_intr_enable"><a class="permalink" href="#ifdi_queue_intr_enable"><code class="Fn">ifdi_queue_intr_enable</code></a>()</dt>
- <dd>Mandatory function that enables interrupts on queue qid.</dd>
- <dt id="iov_init"><a class="permalink" href="#iov_init"><code class="Fn">iov_init</code></a>()</dt>
- <dd>Initialize num_vfs VFs.</dd>
- <dt id="io_uninit"><a class="permalink" href="#io_uninit"><code class="Fn">io_uninit</code></a>()</dt>
- <dd>Tear down the context for all VFs.</dd>
- <dt id="ifdi_vflr_handle"><a class="permalink" href="#ifdi_vflr_handle"><code class="Fn">ifdi_vflr_handle</code></a>()</dt>
- <dd>Handle any VFs that have reset themselves via a Function Level Reset
- (FLR).</dd>
- <dt id="ifdi_vf_add"><a class="permalink" href="#ifdi_vf_add"><code class="Fn">ifdi_vf_add</code></a>()</dt>
- <dd>Set parameters in params in VF vfnum.</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss" id="Service_Routines"><a class="permalink" href="#Service_Routines">Service
- Routines</a></h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_timer"><a class="permalink" href="#ifdi_timer"><code class="Fn">ifdi_timer</code></a>()</dt>
- <dd>Optional timer routine that will be run every 500ms.</dd>
- <dt id="ifdi_watchdog_reset"><a class="permalink" href="#ifdi_watchdog_reset"><code class="Fn">ifdi_watchdog_reset</code></a>()</dt>
- <dd>Optional function to run when a transmit queue is hung.</dd>
-</dl>
-</section>
-<section class="Ss">
-<h2 class="Ss">Additional Functions</h2>
-<dl class="Bl-ohang Bd-indent">
- <dt id="ifdi_led_func"><a class="permalink" href="#ifdi_led_func"><code class="Fn">ifdi_led_func</code></a>()</dt>
- <dd></dd>
- <dt id="ifdi_sysctl_int_delay"><a class="permalink" href="#ifdi_sysctl_int_delay"><code class="Fn">ifdi_sysctl_int_delay</code></a>()</dt>
- <dd></dd>
- <dt id="ifdi_i2c_req"><a class="permalink" href="#ifdi_i2c_req"><code class="Fn">ifdi_i2c_req</code></a>()</dt>
- <dd></dd>
-</dl>
-</section>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp"><a class="Xr">ifconfig(8)</a>, <a class="Xr">iflibdi(9)</a>,
- <a class="Xr">iflibtxrx(9)</a>, <a class="Xr">ifnet(9)</a></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
-<p class="Pp">This manual page was written by <span class="An">Nicole
- Graziano</span></p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">May 3, 2018</td>
- <td class="foot-os">FreeBSD 15.0</td>
- </tr>
-</table>