linux/drivers/scsi/bnx2fc
Robert Love 6a891b071b libfcoe, fcoe, bnx2fc: Add new fcoe control interface
This patch does a few things.

1) Makes /sys/bus/fcoe/ctlr_{create,destroy} interfaces.
   These interfaces take an <ifname> and will either
   create an FCoE Controller or destroy an FCoE
   Controller depending on which file is written to.

   The new FCoE Controller will start in a DISABLED
   state and will not do discovery or login until it
   is ENABLED. This pause will allow us to configure
   the FCoE Controller before enabling it.

2) Makes the 'mode' attribute of a fcoe_ctlr_device
   writale. This allows the user to configure the mode
   in which the FCoE Controller will start in when it
   is ENABLED.

   Possible modes are 'Fabric', or 'VN2VN'.

   The default mode for a fcoe_ctlr{,_device} is 'Fabric'.
   Drivers must implement the set_fcoe_ctlr_mode routine
   to support this feature.

   libfcoe offers an exported routine to set a FCoE
   Controller's mode. The mode can only be changed
   when the FCoE Controller is DISABLED.

   This patch also removes the get_fcoe_ctlr_mode pointer
   in the fcoe_sysfs function template, the code in
   fcoe_ctlr.c to get the mode and the assignment of
   the fcoe_sysfs function pointer to the fcoe_ctlr.c
   implementation (in fcoe and bnx2fc). fcoe_sysfs can
   return that value for the mode without consulting the
   LLD.

3) Make a 'enabled' attribute of a fcoe_ctlr_device. On a
   read, fcoe_sysfs will return the attribute's value. On
   a write, fcoe_sysfs will call the LLD (if there is a
   callback) to notifiy that the enalbed state has changed.

This patch maintains the old FCoE control interfaces as
module parameters, but it adds comments pointing out that
the old interfaces are deprecated.

Signed-off-by: Robert Love <robert.w.love@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
2012-12-14 10:38:54 -08:00
..
57xx_hsi_bnx2fc.h New 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc 2011-06-15 10:56:37 -04:00
Kconfig cnic: Fix select dependencies in bnx2fc/bnx2i Kconfig. 2011-08-12 03:00:47 -07:00
Makefile [SCSI] bnx2fc: Reduce object size by consolidating formats 2012-07-20 08:58:17 +01:00
bnx2fc.h SCSI misc on 20120724 2012-07-24 18:11:22 -07:00
bnx2fc_constants.h cnic: Fix parity error code conflict 2012-03-21 21:57:36 -04:00
bnx2fc_debug.c [SCSI] bnx2fc: Reduce object size by consolidating formats 2012-07-20 08:58:17 +01:00
bnx2fc_debug.h [SCSI] bnx2fc: Reduce object size by consolidating formats 2012-07-20 08:58:17 +01:00
bnx2fc_els.c [SCSI] bnx2fc: Allocate fcoe_ctlr with bnx2fc_interface, not as a member 2012-05-23 09:38:11 +01:00
bnx2fc_fcoe.c libfcoe, fcoe, bnx2fc: Add new fcoe control interface 2012-12-14 10:38:54 -08:00
bnx2fc_hwi.c [SCSI] bnx2fc: Improve error recovery by handling parity errors 2012-07-20 08:58:23 +01:00
bnx2fc_io.c [SCSI] Fix incorrect memset in bnx2fc_parse_fcp_rsp 2012-09-24 12:11:00 +04:00
bnx2fc_tgt.c [SCSI] bnx2fc: use list_entry instead of explicit cast 2012-07-20 08:58:24 +01:00