linux/Documentation/ABI/testing
Robert Love 9a74e884ee [SCSI] libfcoe: Add fcoe_sysfs
This patch adds a 'fcoe bus' infrastructure to the kernel
that is driven by changes to libfcoe which allow LLDs to
present FIP (FCoE Initialization Protocol) discovered
entities and their attributes to user space via sysfs.

This patch adds the following APIs-

fcoe_ctlr_device_add
fcoe_ctlr_device_delete
fcoe_fcf_device_add
fcoe_fcf_device_delete

They allow the LLD to expose the FCoE ENode Controller
and any discovered FCFs (Fibre Channel Forwarders, e.g.
FCoE switches) to the user. Each of these new devices
has their own bus_type so that they are grouped together
for easy lookup from a user space application. Each
new class has an attribute_group to expose attributes
for any created instances. The attributes are-

fcoe_ctlr_device
* fcf_dev_loss_tmo
* lesb_link_fail
* lesb_vlink_fail
* lesb_miss_fka
* lesb_symb_err
* lesb_err_block
* lesb_fcs_error

fcoe_fcf_device
* fabric_name
* switch_name
* priority
* selected
* fc_map
* vfid
* mac
* fka_peroid
* fabric_state
* dev_loss_tmo

A device loss infrastructre similar to the FC Transport's
is also added by this patch. It is nice to have so that a
link flapping adapter doesn't continually advance the count
used to identify the discovered FCF. FCFs will exist in a
"Disconnected" state until either the timer expires or the
FCF is rediscovered and becomes "Connected."

This patch generates a few checkpatch.pl WARNINGS that
I'm not sure what to do about. They're macros modeled
around the FC Transport attribute building macros, which
have the same 'feature' where the caller can ommit a cast
in the argument list and no cast occurs in the code. I'm
not sure how to keep the code condensed while keeping the
macros. Any advice would be appreciated.

Signed-off-by: Robert Love <robert.w.love@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
2012-05-23 09:40:09 +01:00
..
configfs-spear-pcie-gadget ST SPEAr: PCIE gadget suppport 2011-03-22 17:44:10 -07:00
debugfs-ec Documentation: Add new /sys/kernel/debug/ec/* files to ABI 2010-08-03 09:49:07 -04:00
debugfs-ideapad ideapad: add debugfs support 2011-10-24 16:52:39 +02:00
debugfs-olpc x86/olpc: Add debugfs interface for EC commands 2012-03-27 20:54:52 +02:00
debugfs-pktcdvd doc: use correct debugfs mountpoint 2009-04-13 15:04:33 -07:00
evm evm: re-release 2011-07-18 12:29:40 -04:00
ima_policy ima: rename PATH_CHECK to FILE_CHECK 2010-02-07 03:06:23 -05:00
procfs-diskstats tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
pstore pstore: Allow the user to explicitly choose a backend 2011-07-22 16:14:39 -07:00
sysfs-ata [libata] Add ATA transport class 2010-10-21 20:21:03 -04:00
sysfs-block block: Revert "[SCSI] genhd: add a new attribute "alias" in gendisk" 2011-11-10 09:03:55 +01:00
sysfs-block-dm dm: document sysfs entries 2012-03-28 18:41:23 +01:00
sysfs-block-rssd mtip32xx: Add new sysfs entry 'status' 2012-04-09 08:35:38 +02:00
sysfs-block-zram Staging: zram: Document sysfs entries 2010-08-31 15:34:36 -07:00
sysfs-bus-bcma Documentation/ABI/: update version number references from 2.6.x to 3.x 2011-08-05 13:32:40 +02:00
sysfs-bus-css Fix common misspellings 2011-03-31 11:26:23 -03:00
sysfs-bus-event_source-devices-format perf: Adding sysfs group format attribute for pmu device 2012-03-16 14:06:06 -03:00
sysfs-bus-fcoe [SCSI] libfcoe: Add fcoe_sysfs 2012-05-23 09:40:09 +01:00
sysfs-bus-hsi HSI: Add HSI ABI documentation 2012-04-23 14:23:32 +03:00
sysfs-bus-i2c-devices-fsa9480 drivers/misc: add support the FSA9480 USB Switch 2011-07-25 20:57:14 -07:00
sysfs-bus-i2c-devices-hm6352 hmc6352: add driver for the HMC6352 compass 2010-08-09 20:45:10 -07:00
sysfs-bus-media [media] media: Media device 2011-03-22 04:53:09 -03:00
sysfs-bus-pci PCI/sysfs: add per pci device msi[x] irq listing (v5) 2011-12-05 10:21:44 -08:00
sysfs-bus-pci-devices-cciss cciss: add transport mode attribute to sys 2011-08-08 11:40:17 +02:00
sysfs-bus-pci-drivers-ehci_hcd USB: document ehci-hcd's "companion" sysfs attribute 2011-09-18 01:48:37 -07:00
sysfs-bus-rbd rbd: remove buggy rollback functionality 2011-12-07 10:46:19 -08:00
sysfs-bus-rpmsg rpmsg: add virtio-based remote processor messaging bus 2012-02-08 22:53:58 +02:00
sysfs-bus-umc uwb: document UWB and WUSB sysfs files 2008-09-17 16:54:35 +01:00
sysfs-bus-usb usb: Add support for indicating whether a port is removable 2012-02-09 08:40:11 -08:00
sysfs-bus-usb-devices-usbsevseg USB: Added driver for a Delcom USB 7-segment LED Display 2008-10-17 14:40:51 -07:00
sysfs-c2port Add c2 port support 2008-11-12 17:17:18 -08:00
sysfs-cfq-target-latency Documentation: Add sysfs ABI change for cfq's target latency. 2012-04-01 14:33:40 -07:00
sysfs-class driver-core: documentation: fix up Greg's email address 2012-02-15 14:48:01 -08:00
sysfs-class-backlight-driver-adp8870 Documentation/ABI/: update version number references from 2.6.x to 3.x 2011-08-05 13:32:40 +02:00
sysfs-class-bdi fuse: fix bdi naming conflict 2008-05-24 09:56:07 -07:00
sysfs-class-devfreq PM / devfreq: Add basic governors 2011-10-02 00:19:34 +02:00
sysfs-class-lcd video/lcd: document sysfs interface 2009-08-28 15:21:12 -04:00
sysfs-class-led Fix common misspellings 2011-03-31 11:26:23 -03:00
sysfs-class-mtd Documentation: add MTD sysfs docs 2009-05-29 15:13:04 +01:00
sysfs-class-net-batman-adv net: Add batman-adv meshing protocol 2010-12-16 13:44:24 -08:00
sysfs-class-net-mesh batman-adv: make bridge loop avoidance switchable 2012-04-11 14:28:59 +02:00
sysfs-class-pktcdvd
sysfs-class-power ds2760_battery: Document ABI change 2010-05-19 12:25:39 +04:00
sysfs-class-regulator regulator: add get_status() 2009-03-31 09:56:20 +01:00
sysfs-class-rtc-rtc0-device-rtc_calibration rtc/ab8500: add calibration attribute to AB8500 RTC 2012-01-10 16:30:52 -08:00
sysfs-class-scsi_host [SCSI] isci: Adding documentation to API change and fixup sysfs registration 2011-08-23 19:54:24 -07:00
sysfs-class-uwb_rc uwb: add basic radio manager 2008-11-19 14:46:33 +00:00
sysfs-class-uwb_rc-wusbhc USB: wusb: add wusb_phy_rate sysfs file to host controllers 2009-12-11 11:55:16 -08:00
sysfs-dev sysfs: add /sys/dev/{char,block} to lookup sysfs path by major:minor 2008-07-21 21:54:40 -07:00
sysfs-devices driver-core: documentation: fix up Greg's email address 2012-02-15 14:48:01 -08:00
sysfs-devices-memory Documentation: update broken web addresses. 2010-08-04 15:21:40 +02:00
sysfs-devices-mmc mmc: export eMMC4.4 enhanced area details to sysfs 2011-03-15 13:48:01 -04:00
sysfs-devices-node mm: compaction: add /sys trigger for per-node memory compaction 2010-05-25 08:06:59 -07:00
sysfs-devices-platform-_UDC_-gadget USB: gadget: storage: optional SCSI WRITE FUA bit 2010-08-10 14:35:42 -07:00
sysfs-devices-platform-docg3 Documentation: add sysfs entries for mtd docg3 chips 2012-01-09 18:12:17 +00:00
sysfs-devices-power PM / QoS: Make it possible to expose PM QoS latency constraints 2012-03-13 22:37:14 +01:00
sysfs-devices-soc Documentation: add information for new sysfs soc bus functionality 2012-02-10 11:42:25 -08:00
sysfs-devices-system-cpu Documentation, ABI: Update L3 cache index disable text 2011-05-16 11:24:30 -07:00
sysfs-devices-system-ibm-rtl IBM Real-Time "SMI Free" mode driver -v7 2010-10-21 10:10:46 -04:00
sysfs-driver-hid HID: Add HID Report Descriptor to sysfs 2011-02-17 13:23:14 +01:00
sysfs-driver-hid-logitech-lg4ff misc latin1 to utf8 conversions 2012-01-02 13:04:55 +01:00
sysfs-driver-hid-multitouch HID: multitouch: create sysfs attribute to control quirks from user-space 2011-11-23 14:50:38 +01:00
sysfs-driver-hid-picolcd HID: split picolcd's operation_mode sysfs attribute 2010-04-27 15:31:26 +02:00
sysfs-driver-hid-prodikeys HID: Prodikeys PC-MIDI HID Driver 2010-05-12 15:18:59 +02:00
sysfs-driver-hid-roccat-arvo HID: roccat: Add 'Users:' tag to sysfs documentation 2011-02-03 17:29:49 +01:00
sysfs-driver-hid-roccat-isku HID: roccat: Add support for Isku keyboard 2011-12-06 10:21:10 +01:00
sysfs-driver-hid-roccat-kone Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-roccat-koneplus HID: roccat: Add "Roccat Talk" support for koneplus 2011-06-13 12:50:40 +02:00
sysfs-driver-hid-roccat-kovaplus Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-roccat-pyra Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-wiimote HID: wiimote: Add extension sysfs attribute 2011-11-22 23:09:08 +01:00
sysfs-driver-samsung-laptop Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 2012-03-28 14:20:23 -07:00
sysfs-driver-wacom Input: wacom - add LED support for Cintiq 24HD 2011-12-12 00:14:21 -08:00
sysfs-firmware-acpi ACPI: Add support for exposing BGRT data 2012-03-30 04:09:24 -04:00
sysfs-firmware-dmi firmware: Fix grammar in sysfs-firmware-dmi doc 2011-04-19 16:45:51 -07:00
sysfs-firmware-gsmi driver: Google EFI SMI 2011-04-29 18:09:34 -07:00
sysfs-firmware-log driver: Google Memory Console 2011-04-29 18:09:34 -07:00
sysfs-firmware-memmap Bernhard has moved 2009-02-18 15:37:56 -08:00
sysfs-firmware-sfi SFI: add sysfs interface for SFI tables. 2010-05-27 12:46:20 -04:00
sysfs-firmware-sgi_uv sysfs: document files in /sys/firmware/sgi_uv/ 2008-09-02 19:21:40 -07:00
sysfs-fs-ext4 ext4: update ext4 documentation 2011-02-21 20:16:21 -05:00
sysfs-gpio gpiolib: allow poll() on value 2009-09-23 07:39:48 -07:00
sysfs-i2c-bmp085 drivers/misc: support for the pressure sensor BMP085 from Bosch Sensortec 2010-08-09 20:45:05 -07:00
sysfs-ibft
sysfs-kernel-fscaps kernel/ksysfs.c: expose file_caps_enabled in sysfs 2011-04-19 16:45:51 -07:00
sysfs-kernel-mm mm: create /sys/kernel/mm 2008-07-24 10:47:17 -07:00
sysfs-kernel-mm-hugepages hugetlb: new sysfs interface 2008-07-24 10:47:17 -07:00
sysfs-kernel-slab slub: document setting min order with debug_guardpage_minorder > 0 2012-01-12 20:13:04 -08:00
sysfs-kernel-uids
sysfs-memory-page-offline HWPOISON: Add soft page offline support 2009-12-16 12:20:00 +01:00
sysfs-module modules: sysfs - export: taint, coresize, initsize 2012-01-13 09:32:15 +10:30
sysfs-ocfs2
sysfs-platform-asus-laptop Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-platform-asus-wmi eeepc-wmi: asus generic asus-wmi.ko module 2011-03-28 06:07:20 -04:00
sysfs-platform-at91 can: at91_can: make can_id of mailbox 0 configurable 2011-01-24 14:56:37 +01:00
sysfs-platform-eeepc-laptop eeepc-laptop: set the right paths in the documentation 2010-02-28 19:30:57 +01:00
sysfs-platform-ideapad-laptop ideapad: remove sysfs node for cfg 2011-10-24 16:52:39 +02:00
sysfs-platform-kim drivers:misc: ti-st: move from rfkill to sysfs 2011-02-04 12:41:20 -08:00
sysfs-power PM / Hibernate: Add sysfs knob to control size of memory for drivers 2011-05-17 23:19:19 +02:00
sysfs-pps LinuxPPS: core support 2009-06-18 13:04:04 -07:00
sysfs-profiling profiling: dynamically enable readprofile at runtime 2008-10-16 11:21:31 -07:00
sysfs-ptp ptp: Added a brand new class driver for ptp clocks. 2011-05-23 13:01:00 -07:00
sysfs-tty tty: add 'active' sysfs attribute to tty0 and console device 2010-12-16 16:15:34 -08:00
sysfs-wusb_cbaf uwb: document UWB and WUSB sysfs files 2008-09-17 16:54:35 +01:00