summaryrefslogtreecommitdiff
path: root/static/freebsd/man9/iflibdi.9 4.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man9/iflibdi.9 4.html')
-rw-r--r--static/freebsd/man9/iflibdi.9 4.html250
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> &#x2014; <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
- &lt;<a class="In">ifdi_if.h</a>&gt;</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-&gt;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>