upload tizen1.0 source
[kernel/linux-2.6.36.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 }