diff options
Diffstat (limited to 'static/freebsd/man9/iflibdi.9 4.html')
| -rw-r--r-- | static/freebsd/man9/iflibdi.9 4.html | 250 |
1 files changed, 0 insertions, 250 deletions
diff --git a/static/freebsd/man9/iflibdi.9 4.html b/static/freebsd/man9/iflibdi.9 4.html deleted file mode 100644 index 0c074e67..00000000 --- a/static/freebsd/man9/iflibdi.9 4.html +++ /dev/null @@ -1,250 +0,0 @@ -<table class="head"> - <tr> - <td class="head-ltitle">IFLIBDI(9)</td> - <td class="head-vol">Kernel Developer's Manual</td> - <td class="head-rtitle">IFLIBDI(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">iflibdi</code> — <span class="Nd">Device - Independent 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 - <<a class="In">ifdi_if.h</a>></code></p> -<section class="Ss"> -<h2 class="Ss">Device Independent Functions</h2> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_attach</code>(<var class="Fa">device_t - dev</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_detach</code>(<var class="Fa">device_t - dev</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_suspend</code>(<var class="Fa">device_t - dev</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_resume</code>(<var class="Fa">device_t - dev</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_register</code>(<var class="Fa">device_t - dev</var>, <var class="Fa">void *softc</var>, - <var class="Fa">if_shared_ctx_t sctx</var>, <var class="Fa">if_ctx_t - *ctxp</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_device_deregister</code>(<var class="Fa">if_ctx_t - ctx</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_irq_alloc</code>(<var class="Fa">if_ctx_t ctx</var>, - <var class="Fa">if_irq_t irq_info</var>, <var class="Fa">int rid</var>, - <var class="Fa">driver_filter_t filter</var>, <var class="Fa">void - *filter_arg</var>, <var class="Fa">driver_intr_t handler</var>, - <var class="Fa">void *arg</var>, <var class="Fa">char *name</var>);</p> -<p class="Pp"><var class="Ft">int</var> - <br/> - <code class="Fn">iflib_irq_alloc_generic</code>(<var class="Fa">if_ctx_t - ctx</var>, <var class="Fa">if_irq_t irq</var>, <var class="Fa">int - rid</var>, <var class="Fa">intr_type_t type</var>, - <var class="Fa">driver_filter_t *filter</var>, <var class="Fa">void - *filter_arg</var>, <var class="Fa">int qid</var>, <var class="Fa">char - *name</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_led_create</code>(<var class="Fa">if_ctx_t - ctx</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_tx_intr_deferred</code>(<var class="Fa">if_ctx_t - ctx</var>, <var class="Fa">int txqid</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_rx_intr_deferred</code>(<var class="Fa">if_ctx_t - ctx</var>, <var class="Fa">int rxqid</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_link_intr_deferred</code>(<var class="Fa">if_ctx_t - ctx</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_link_state_change</code>(<var class="Fa">if_ctx_t - ctx</var>, <var class="Fa">int linkstate</var>);</p> -<p class="Pp"><var class="Ft">void</var> - <br/> - <code class="Fn">iflib_add_int_delay_sysctl</code>(<var class="Fa">if_ctx_t - ctx</var>, <var class="Fa">const char *</var>, <var class="Fa">const char - *</var>, <var class="Fa">if_int_delay_info_t</var>, - <var class="Fa">int</var>, <var class="Fa">int</var>);</p> -</section> -<section class="Ss"> -<h2 class="Ss" id="Global_Variables"><a class="permalink" href="#Global_Variables">Global - Variables</a></h2> -<p class="Pp"><var class="Vt">extern struct if_txrx</var></p> -</section> -</section> -<section class="Sh"> -<h1 class="Sh" id="DATA_STRUCTURES"><a class="permalink" href="#DATA_STRUCTURES">DATA - STRUCTURES</a></h1> -<p class="Pp">The <i>if_ctx_t</i> Structure is the device independent data - structure that contains statistics and identifying information used to - transmit and receive data packets. The interface is associated with an array - of queues assigned sequentially. Each queue has its own transmit - (iflib_txq_t) and receive (iflib_rxq_t) queue. The transmit queue is used to - hold packets while the interface is in the process of sending another. The - receive queue is used to receive packets that are awaiting processing.</p> -<section class="Ss"> -<h2 class="Ss" id="The_if_ctx_t_Structure"><a class="permalink" href="#The_if_ctx_t_Structure">The - if_ctx_t Structure</a></h2> -<p class="Pp">The fields of <var class="Vt">struct if_ctx_t</var> are as - follows:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt id="if_softc"><var class="Va">if_softc</var></dt> - <dd>(<var class="Vt">void</var>) A pointer to the driver's private state - block.</dd> - <dt id="ifc_dev"><var class="Va">ifc_dev</var></dt> - <dd>(<var class="Vt">device_t</var>) The underlying device structure.</dd> - <dt id="ifc_ip"><var class="Va">ifc_ip</var></dt> - <dd>(<var class="Vt">if_t</var>) A link back to the interface structure</dd> - <dt id="ifc_cpus"><var class="Va">ifc_cpus</var></dt> - <dd>(<var class="Vt">cpuset_t</var>)</dd> - <dt id="ifc_mutex"><var class="Va">ifc_mutex</var></dt> - <dd>(<var class="Vt">struct mtx</var>) Mutex lock used to maintain data - integrity</dd> - <dt id="ifc_mtx_name"><var class="Va">ifc_mtx_name</var></dt> - <dd>(<var class="Vt">char *</var>) The name of the mutex</dd> - <dt id="ifc_txqs"><var class="Va">ifc_txqs</var></dt> - <dd>(<var class="Vt">iflib_txq_t</var>) Device independent transmit queue - maintained internally by iflib</dd> - <dt id="ifc_rxqs"><var class="Va">ifc_rxqs</var></dt> - <dd>(<var class="Vt">iflib_rxq_t</var>) Device independent receive queue - maintained internally by iflib</dd> - <dt id="ifc_qsets"><var class="Va">ifc_qsets</var></dt> - <dd>(<var class="Vt">iflib_qset_t</var>) Output queue that contains a single - transmit (ifc_txq_t) and receive (ifc_rxq_t) queue</dd> - <dt id="ifc_if_flags"><var class="Va">ifc_if_flags</var></dt> - <dd>(<var class="Vt">uint32_t</var>) Flags describing the operational - parameter of the interface</dd> - <dt id="ifc_in_detach"><var class="Va">ifc_in_detach</var></dt> - <dd>(<var class="Vt">int</var>)</dd> - <dt id="ifc_link_state"><var class="Va">ifc_link_state</var></dt> - <dd>(<var class="Vt">int</var>) Describes the current link state of the - Ethernet interface. Its possible values are either active or - inactive.</dd> - <dt id="ifc_link_irq"><var class="Va">ifc_link_irq</var></dt> - <dd>(<var class="Vt">int</var>)</dd> - <dt id="ifc_vlan_attach_event"><var class="Va">ifc_vlan_attach_event</var></dt> - <dd>(<var class="Vt">eventhandler_tag</var>)</dd> - <dt id="ifc_vlan_detach_event"><var class="Va">ifc_vlan_detach_event</var></dt> - <dd>(<var class="Vt">eventhandler_tag</var>)</dd> - <dt id="ifc_pause_frames"><var class="Va">ifc_pause_frames</var></dt> - <dd>(<var class="Vt">int</var>)</dd> - <dt id="ifc_watchdog_events"><var class="Va">ifc_watchdog_events</var></dt> - <dd>(<var class="Vt">int</var>)</dd> - <dt id="ifc_mac"><var class="Va">ifc_mac</var></dt> - <dd>(<var class="Vt">uint8_t</var>)</dd> - <dt id="ifc_msix_mem"><var class="Va">ifc_msix_mem</var></dt> - <dd>(<var class="Vt">struct resource *</var>)</dd> - <dt id="ifc_legacy_irq"><var class="Va">ifc_legacy_irq</var></dt> - <dd>(<var class="Vt">struct if_irq</var>)</dd> - <dt id="ifc_admin_task"><var class="Va">ifc_admin_task</var></dt> - <dd>(<var class="Vt">struct grouptask</var>) Taskqueue task scheduled for link - state change events of the interface</dd> - <dt id="ifc_filter_info"><var class="Va">ifc_filter_info</var></dt> - <dd>(<var class="Vt">struct iflib_filter_info</var>) Statistics and - information relating to the interface device filter</dd> - <dt id="ifc_media"><var class="Va">ifc_media</var></dt> - <dd>(<var class="Vt">struct ifmedia</var>)</dd> - <dt id="ifc_txrx"><var class="Va">ifc_txrx</var></dt> - <dd>(<var class="Vt">struct if_txrx</var>)</dd> -</dl> -</div> -</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 found exclusively in iflib. They are - independent of the underlying hardware type or configuration.</p> -<section class="Ss"> -<h2 class="Ss">Device Independent Functions</h2> -<dl class="Bl-ohang Bd-indent"> - <dt id="iflib_device_attach"><a class="permalink" href="#iflib_device_attach"><code class="Fn">iflib_device_attach</code></a>()</dt> - <dd>Function initiates a device registration with the iflib framework. It - calls the iflib_register function, which is responsible for allocating and - initializing the <i>if_ctx_t</i> structure.</dd> - <dt id="iflib_device_detach"><a class="permalink" href="#iflib_device_detach"><code class="Fn">iflib_device_detach</code></a>()</dt> - <dd>Shutdown and detach the device. Unregister vlan events, drain any - dependent tasks, and release irq, pci, and msix memory.</dd> - <dt id="iflib_device_suspend"><a class="permalink" href="#iflib_device_suspend"><code class="Fn">iflib_device_suspend</code></a>()</dt> - <dd>Suspend a device by calling the device dependent suspend function and - bus_generic_suspend.</dd> - <dt id="iflib_device_resume"><a class="permalink" href="#iflib_device_resume"><code class="Fn">iflib_device_resume</code></a>()</dt> - <dd>Resume a device by calling the device dependent resume function, the - iflib_init_locked function, and bus_generic_resume.</dd> - <dt id="iflib_device_register"><a class="permalink" href="#iflib_device_register"><code class="Fn">iflib_device_register</code></a>()</dt> - <dd>Register a device with the iflib framework. Allocate and initialize the - <i>if_ctx_t</i> structure. Setup and initialize the MSI or MSI/X interrupt - queues if necessary. Allocate memory for queues and qset structure - setup.</dd> - <dt id="iflib_irq_alloc"><a class="permalink" href="#iflib_irq_alloc"><code class="Fn">iflib_irq_alloc</code></a>()</dt> - <dd>Allocate an interrupt resource for a given rid value with an associated - filter and handler function.</dd> - <dt id="iflib_irq_alloc_generic"><a class="permalink" href="#iflib_irq_alloc_generic"><code class="Fn">iflib_irq_alloc_generic</code></a>()</dt> - <dd>Performs the same function as iflib_device_irq_alloc along with the - additional functionality of adding a taskgroup. The data fields and - callback function are determined by the type of interrupt, such as - <code class="Dv">IFLIB_INTR_TX</code>, - <code class="Dv">IFLIB_INTR_RX</code>, and - <code class="Dv">IFLIB_INTR_ADMIN</code>.</dd> - <dt id="iflib_led_create"><a class="permalink" href="#iflib_led_create"><code class="Fn">iflib_led_create</code></a>()</dt> - <dd>Calls led_create to initialize the ctx->ifc_led_dev field</dd> - <dt id="iflib_tx_intr_deferred"><a class="permalink" href="#iflib_tx_intr_deferred"><code class="Fn">iflib_tx_intr_deferred</code></a>()</dt> - <dd>Calls GROUPTASK_ENQUEUE to enqueue the transfer queues ift_task.</dd> - <dt id="iflib_rx_intr_deferred"><a class="permalink" href="#iflib_rx_intr_deferred"><code class="Fn">iflib_rx_intr_deferred</code></a>()</dt> - <dd>Calls GROUPTASK_ENQUEUE to enqueue the receive queues ifr_task.</dd> - <dt id="iflib_link_intr_deferred"><a class="permalink" href="#iflib_link_intr_deferred"><code class="Fn">iflib_link_intr_deferred</code></a>()</dt> - <dd>Calls GROUPTASK_ENQUEUE to enqueue the link task</dd> - <dt id="iflib_link_state_change"><a class="permalink" href="#iflib_link_state_change"><code class="Fn">iflib_link_state_change</code></a>()</dt> - <dd>Change the interface link status to either - <code class="Dv">LINK_STATE_UP</code> or - <code class="Dv">LINK_STATE_DOWN</code> as specified by the second - argument to the function. - <p class="Pp" id="Interface"><a class="permalink" href="#Interface"><i class="Em">Interface - Link States</i></a> The following link states are currently defined:</p> - </dd> - <dt id="LINK_STATE_UP"><a class="permalink" href="#LINK_STATE_UP"><code class="Dv">LINK_STATE_UP</code></a></dt> - <dd>The link is up.</dd> - <dt id="LINK_STATE_DOWN"><a class="permalink" href="#LINK_STATE_DOWN"><code class="Dv">LINK_STATE_DOWN</code></a></dt> - <dd>The link is down.</dd> - <dt id="iflib_add_int_delay_sysctl"><a class="permalink" href="#iflib_add_int_delay_sysctl"><code class="Fn">iflib_add_int_delay_sysctl</code></a>()</dt> - <dd>Modifies settings to user defined values for a given set of - variables.</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">iflibdd(9)</a>, <a class="Xr">iflibtxrx(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 21, 2019</td> - <td class="foot-os">FreeBSD 15.0</td> - </tr> -</table> |
