[SCSI] bfa: Brocade BFA FC SCSI driver
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / scsi / bfa / fab.c
1 /*
2 * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
3 * All rights reserved
4 * www.brocade.com
5 *
6 * Linux driver for Brocade Fibre Channel Host Bus Adapter.
7 *
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
11 *
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.
16 */
17
18 #include <bfa.h>
19 #include <bfa_svc.h>
20 #include "fcs_lport.h"
21 #include "fcs_rport.h"
22 #include "lport_priv.h"
23
24 /**
25 * fab.c port fab implementation.
26 */
27
28 /**
29 * bfa_fcs_port_fab_public port fab public functions
30 */
31
32 /**
33 * Called by port to initialize fabric services of the base port.
34 */
35 void
36 bfa_fcs_port_fab_init(struct bfa_fcs_port_s *port)
37 {
38 bfa_fcs_port_ns_init(port);
39 bfa_fcs_port_scn_init(port);
40 bfa_fcs_port_ms_init(port);
41 }
42
43 /**
44 * Called by port to notify transition to online state.
45 */
46 void
47 bfa_fcs_port_fab_online(struct bfa_fcs_port_s *port)
48 {
49 bfa_fcs_port_ns_online(port);
50 bfa_fcs_port_scn_online(port);
51 }
52
53 /**
54 * Called by port to notify transition to offline state.
55 */
56 void
57 bfa_fcs_port_fab_offline(struct bfa_fcs_port_s *port)
58 {
59 bfa_fcs_port_ns_offline(port);
60 bfa_fcs_port_scn_offline(port);
61 bfa_fcs_port_ms_offline(port);
62 }