2 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
6 * Linux driver for Brocade Fibre Channel Host Bus Adapter.
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License (GPL) Version 2 as
10 * published by the Free Software Foundation
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
19 * bfa_fcb_rport.h BFA FCS rport driver interfaces
22 #ifndef __BFA_FCB_RPORT_H__
23 #define __BFA_FCB_RPORT_H__
26 * fcs_rport_fcb Remote port driver interfaces
33 * Callback functions from BFA FCS to driver
37 * Completion callback for bfa_fcs_rport_add().
39 * @param[in] rport_drv - driver instance of rport
43 void bfa_fcb_rport_add(struct bfad_rport_s
*rport_drv
);
46 * Completion callback for bfa_fcs_rport_remove().
48 * @param[in] rport_drv - driver instance of rport
52 void bfa_fcb_rport_remove(struct bfad_rport_s
*rport_drv
);
55 * Call to allocate a rport instance.
57 * @param[in] bfad - driver instance
58 * @param[out] rport - BFA FCS instance of rport
59 * @param[out] rport_drv - driver instance of rport
61 * @retval BFA_STATUS_OK - successfully allocated
62 * @retval BFA_STATUS_ENOMEM - cannot allocate
64 bfa_status_t
bfa_fcb_rport_alloc(struct bfad_s
*bfad
,
65 struct bfa_fcs_rport_s
**rport
,
66 struct bfad_rport_s
**rport_drv
);
69 * Call to free rport memory resources.
71 * @param[in] bfad - driver instance
72 * @param[in] rport_drv - driver instance of rport
76 void bfa_fcb_rport_free(struct bfad_s
*bfad
, struct bfad_rport_s
**rport_drv
);
80 #endif /* __BFA_FCB_RPORT_H__ */