Lines Matching +full:host +full:- +full:only

1 /* SPDX-License-Identifier: GPL-2.0-only */
13 * communication by the host driver to the fcp firmware.
17 * Exchange and sequence id space allocated to the host driver
105 * The header command tag. All host requests will use the "tag" field
107 * a host request, it will copy the tag field into the response.
109 * The only firmware requests that will use the rx_id/ox_id fields instead
111 * requests. These two requests do not have corresponding host requests
127 tag->u.req_id = id; in fcpio_tag_id_enc()
133 *id = tag->u.req_id; in fcpio_tag_id_dec()
139 tag->u.ex_id.rx_id = rx_id; in fcpio_tag_exid_enc()
140 tag->u.ex_id.ox_id = ox_id; in fcpio_tag_exid_enc()
146 *rx_id = tag->u.ex_id.rx_id; in fcpio_tag_exid_dec()
147 *ox_id = tag->u.ex_id.ox_id; in fcpio_tag_exid_dec()
152 * host driver
166 hdr->type = type; in fcpio_header_enc()
167 hdr->status = status; in fcpio_header_enc()
168 hdr->_resvd = 0; in fcpio_header_enc()
169 hdr->tag = tag; in fcpio_header_enc()
177 *type = hdr->type; in fcpio_header_dec()
178 *status = hdr->status; in fcpio_header_dec()
179 *tag = hdr->tag; in fcpio_header_dec()
187 * fcpio_icmnd_16: host -> firmware request
189 * used for sending out an initiator SCSI 16-byte command
195 u32 sgl_cnt; /* scatter-gather list count */
197 u64 sgl_addr; /* scatter-gather list addr */
205 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
207 u8 d_id[3]; /* FC vNIC only: Target D_ID */
208 u16 mss; /* FC vNIC only: max burst */
210 u32 r_a_tov; /* FC vNIC only: Res. Alloc Timeout */
211 u32 e_d_tov; /* FC vNIC only: Err Detect Timeout */
235 * fcpio_icmnd_32: host -> firmware request
237 * used for sending out an initiator SCSI 32-byte command
243 u32 sgl_cnt; /* scatter-gather list count */
245 u64 sgl_addr; /* scatter-gather list addr */
253 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
255 u8 d_id[3]; /* FC vNIC only: Target D_ID */
256 u16 mss; /* FC vNIC only: max burst */
258 u32 r_a_tov; /* FC vNIC only: Res. Alloc Timeout */
259 u32 e_d_tov; /* FC vNIC only: Error Detect Timeout */
263 * fcpio_itmf: host -> firmware request
268 * The t_tag field is only needed when the request type is ABT_TASK.
275 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
277 u8 d_id[3]; /* FC vNIC only: Target D_ID */
278 u32 r_a_tov; /* FC vNIC only: R_A_TOV in msec */
279 u32 e_d_tov; /* FC vNIC only: E_D_TOV in msec */
295 * fcpio_tdata: host -> firmware request
304 u32 sgl_cnt; /* scatter-gather list count */
306 u64 sgl_addr; /* scatter-gather list address */
315 * fcpio_txrdy: host -> firmware request
324 u32 sgl_cnt; /* scatter-gather list count */
326 u64 sgl_addr; /* scatter-gather list address */
330 * fcpio_trsp: host -> firmware request
353 * fcpio_ttmf_ack: host -> firmware response
355 * used by the host to indicate to the firmware it has received and processed
365 * fcpio_tabort: host -> firmware request
367 * used by the host to request the firmware to abort a target request that was
375 * fcpio_reset: host -> firmware request
377 * used by the host to signal a reset of the driver to the firmware
390 * fcpio_flogi_reg: host -> firmware request
392 * fc vnic only
393 * used by the host to notify the firmware of the lif's s_id
398 u8 s_id[3]; /* FC vNIC only: Source S_ID */
406 * fcpio_echo: host -> firmware request
415 * fcpio_lunmap_req: host -> firmware request
417 * scsi vnic only
426 * fcpio_flogi_fip_reg: host -> firmware request
428 * fc vnic only
429 * used by the host to notify the firmware of the lif's s_id
434 u8 s_id[3]; /* FC vNIC only: Source S_ID */
439 u8 ha_mac[ETH_ALEN]; /* Host adapter source mac */
444 * Basic structure for all fcpio structures that are sent from the host to the
447 #define FCPIO_HOST_REQ_LEN 128 /* expected length of host requests */
456 u8 buf[FCPIO_HOST_REQ_LEN - sizeof(struct fcpio_header)];
459 * Initiator host requests
466 * Target host requests
486 * fcpio_icmnd_cmpl: firmware -> host response
488 * used for sending the host a response to an initiator command
505 * fcpio_itmf_cmpl: firmware -> host response
507 * used for sending the host a response for a itmf request
514 * fcpio_tcmnd_16: firmware -> host request
516 * used by the firmware to notify the host of an incoming target SCSI 16-Byte
520 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
528 u8 s_id[3]; /* FC vNIC only: Source S_ID */
547 * fcpio_tcmnd_32: firmware -> host request
549 * used by the firmware to notify the host of an incoming target SCSI 32-Byte
553 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
561 u8 s_id[3]; /* FC vNIC only: Source S_ID */
565 * fcpio_tdrsp_cmpl: firmware -> host response
567 * used by the firmware to notify the host of a response to a host target
576 * fcpio_ttmf: firmware -> host request
578 * used by the firmware to notify the host of an incoming task management
583 u8 s_id[3]; /* FC vNIC only: Source S_ID */
584 u8 lun[LUN_ADDRESS]; /* FC vNIC only: LUN address */
600 * fcpio_tabort_cmpl: firmware -> host response
602 * used by the firmware to respond to a host's tabort request
610 * fcpio_ack: firmware -> host response
612 * used by firmware to notify the host of the last work request received
615 u16 request_out; /* last host entry received */
620 * fcpio_reset_cmpl: firmware -> host response
622 * use by firmware to respond to the host's reset request
629 * fcpio_flogi_reg_cmpl: firmware -> host response
631 * fc vnic only
639 * fcpio_echo_cmpl: firmware -> host response
648 * fcpio_lunmap_chng: firmware -> host notification
650 * scsi vnic only
651 * notifies the host that the lunmap tables have changed
658 * fcpio_lunmap_req_cmpl: firmware -> host response
660 * scsi vnic only
661 * response for lunmap table request from the host
669 * the host. They are 64 bytes per structure.
679 u8 buf[FCPIO_FW_REQ_LEN - sizeof(struct fcpio_header)];
722 u8 *c = ((u8 *) fw_req) + sizeof(struct fcpio_fw_req) - 1; in fcpio_color_enc()
732 u8 *c = ((u8 *) fw_req) + sizeof(struct fcpio_fw_req) - 1; in fcpio_color_dec()