Lines Matching +full:host +full:- +full:controller
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 2022-2024 Chelsio Communications, Inc.
24 * Parameters shared by all queue-pairs of an association. Note that
30 bool dynamic_controller_model; /* Controller only */
31 uint16_t max_admin_qsize; /* Controller only */
32 uint32_t max_io_qsize; /* Controller only, 0 for discovery */
35 uint8_t pda; /* Tx-side PDA. */
38 uint32_t maxr2t; /* Host only */
39 uint32_t maxh2cdata; /* Controller only */
46 bool admin; /* Host only */
56 /* Transport-independent APIs. */
59 * A host should allocate a new association for each association with
60 * a controller. After the admin queue has been allocated and the
61 * controller's data has been fetched, it should be passed to
62 * nvmf_update_association to update internal transport-specific
65 * A controller uses a single association to manage all incoming
68 * controller they are created against.
71 bool controller, const struct nvmf_association_params *params);
76 /* The most recent association-wide error message. */
95 * Capsules are either commands (host -> controller) or responses
96 * (controller -> host). A single data buffer segment may be
124 /* Controller-specific APIs. */
127 * A controller calls this function to check for any
128 * transport-specific errors (invalid fields) in a received command
135 * A controller calls this function to query the amount of data
141 * A controller calls this function to receive data associated with a
143 * either return in-capsule data or fetch data from the host
151 * A controller calls this function to send data in response to a
181 /* Send a response capsule from a controller. */
221 /* Compute the initial state of CAP for a controller. */
224 /* Generate a serial number string from a host ID. */
228 * Populate an Identify Controller data structure for a Discovery
229 * controller.
235 * Populate an Identify Controller data structure for an I/O
236 * controller.
258 /* Prepare to handoff a controller qpair. */
263 /* Host-specific APIs. */
278 * Send a command to the controller. This can fail with EBUSY if the
300 /* Read a controller property. */
304 /* Write a controller property. */
308 /* Construct a 16-byte HostId from kern.hostuuid. */
314 /* Fetch controller data via IDENTIFY. */
332 * used by a host association's admin queue pair.
347 * Handoff active host association to the kernel. This frees the
356 * Disconnect an active host association previously handed off to the
360 int nvmf_disconnect_host(const char *host);
363 * Disconnect all active host associations previously handed off to
369 * Fetch reconnect parameters from an existing kernel host to use for
376 * Handoff active host association to an existing host in the kernel.
385 * Fetch connection status from an existing kernel host.