xref: /openbmc/linux/drivers/scsi/elx/libefc/efc_cmds.h (revision 2a598d0b)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (C) 2021 Broadcom. All Rights Reserved. The term
4  * “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.
5  */
6 
7 #ifndef __EFC_CMDS_H__
8 #define __EFC_CMDS_H__
9 
10 #define EFC_SPARAM_DMA_SZ	112
11 int
12 efc_cmd_nport_alloc(struct efc *efc, struct efc_nport *nport,
13 		    struct efc_domain *domain, u8 *wwpn);
14 int
15 efc_cmd_nport_attach(struct efc *efc, struct efc_nport *nport, u32 fc_id);
16 int
17 efc_cmd_nport_free(struct efc *efc, struct efc_nport *nport);
18 int
19 efc_cmd_domain_alloc(struct efc *efc, struct efc_domain *domain, u32 fcf);
20 int
21 efc_cmd_domain_attach(struct efc *efc, struct efc_domain *domain, u32 fc_id);
22 int
23 efc_cmd_domain_free(struct efc *efc, struct efc_domain *domain);
24 int
25 efc_cmd_node_detach(struct efc *efc, struct efc_remote_node *rnode);
26 int
27 efc_node_free_resources(struct efc *efc, struct efc_remote_node *rnode);
28 int
29 efc_cmd_node_attach(struct efc *efc, struct efc_remote_node *rnode,
30 		    struct efc_dma *sparms);
31 int
32 efc_cmd_node_alloc(struct efc *efc, struct efc_remote_node *rnode, u32 fc_addr,
33 		   struct efc_nport *nport);
34 
35 #endif /* __EFC_CMDS_H */
36