1. 29 Dec, 2008 2 commits
    • Robert Love's avatar
      [SCSI] libfc: A modular Fibre Channel library · 42e9a92f
      Robert Love authored
      
      
      libFC is composed of 4 blocks supported by an exchange manager
      and a framing library. The upper 4 layers are fc_lport, fc_disc,
      fc_rport and fc_fcp. A LLD that uses libfc could choose to
      either use libfc's block, or using the transport template
      defined in libfc.h, override one or more blocks with its own
      implementation.
      
      The EM (Exchange Manager) manages exhcanges/sequences for all
      commands- ELS, CT and FCP.
      
      The framing library frames ELS and CT commands.
      
      The fc_lport block manages the library's representation of the
      host's FC enabled ports.
      
      The fc_disc block manages discovery of targets as well as
      handling changes that occur in the FC fabric (via. RSCN events).
      
      The fc_rport block manages the library's representation of other
      entities in the FC fabric. Currently the library uses this block
      for targets, its peer when in point-to-point mode and the
      directory server, but can be extended for other entities if
      needed.
      
      The fc_fcp block interacts with the scsi-ml and handles all
      I/O.
      Signed-off-by: default avatarRobert Love <robert.w.love@intel.com>
      [jejb: added include of delay.h to fix ppc64 compile prob spotted by sfr]
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      42e9a92f
    • James Smart's avatar
  2. 14 Oct, 2008 2 commits
  3. 03 Oct, 2008 1 commit
  4. 29 Aug, 2008 1 commit
  5. 26 Jul, 2008 1 commit
  6. 12 Jul, 2008 2 commits
  7. 05 Jun, 2008 1 commit
  8. 05 May, 2008 1 commit
  9. 02 May, 2008 1 commit
  10. 27 Apr, 2008 1 commit
  11. 07 Apr, 2008 1 commit
  12. 09 Mar, 2008 1 commit
  13. 23 Feb, 2008 1 commit
  14. 13 Feb, 2008 1 commit
  15. 08 Feb, 2008 5 commits
    • James Bottomley's avatar
      [SCSI] ses: add new Enclosure ULD · 9927c688
      James Bottomley authored
      
      
      This adds support to SCSI for enclosure services devices. It also makes
      use of the enclosure services added in an earlier patch to display the
      enclosure topology in sysfs.
      
      At the moment, the enclosures are SAS specific, but if anyone actually
      has a non-SAS enclosure that follows the SES-2 standard, we can add that
      as well.
      
      On my Vitesse based system, the enclosures show up like this:
      
      sparkweed:~# ls -l /sys/class/enclosure/0\:0\:1\:0/
      total 0
      -r--r--r-- 1 root root 4096 2008-02-03 15:44 components
      lrwxrwxrwx 1 root root    0 2008-02-03 15:44 device -> ../../../devices/pci0000:01/0000:01:02.0/host0/port-0:0/expander-0:0/port-0:0:12/end_device-0:0:12/target0:0:1/0:0:1:0
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 000
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 001
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 002
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 003
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 004
      drwxr-xr-x 2 root root    0 2008-02-03 15:44 SLOT 005
      lrwxrwxrwx 1 root root    0 2008-02-03 15:44 subsystem -> ../../enclosure
      --w------- 1 root root 4096 2008-02-03 15:44 uevent
      
      And the individual occupied slots like this:
      
      sparkweed:~# ls -l /sys/class/enclosure/0\:0\:1\:0/SLOT\ 001/
      total 0
      -rw-r--r-- 1 root root 4096 2008-02-03 15:45 active
      lrwxrwxrwx 1 root root    0 2008-02-03 15:45 device -> ../../../../devices/pci0000:01/0000:01:02.0/host0/port-0:0/expander-0:0/port-0:0:11/end_device-0:0:11/target0:0:0/0:0:0:0
      -rw-r--r-- 1 root root 4096 2008-02-03 15:45 fault
      -rw-r--r-- 1 root root 4096 2008-02-03 15:45 locate
      -rw-r--r-- 1 root root 4096 2008-02-03 15:45 status
      lrwxrwxrwx 1 root root    0 2008-02-03 15:45 subsystem -> ../../../enclosure_component
      -r--r--r-- 1 root root 4096 2008-02-03 15:45 type
      --w------- 1 root root 4096 2008-02-03 15:45 uevent
      
      You can flash the various blinky lights by echoing to the fault and locate files.
      
      >From the device's point of view, you can see it has an enclosure like this:
      
      sparkweed:~# ls /sys/class/scsi_disk/0\:0\:0\:0/device/
      block:sda                     generic        queue_depth          state
      bsg:0:0:0:0                   iocounterbits  queue_type           subsystem
      bus                           iodone_cnt     rescan               timeout
      delete                        ioerr_cnt      rev                  type
      device_blocked                iorequest_cnt  scsi_device:0:0:0:0  uevent
      driver                        modalias       scsi_disk:0:0:0:0    vendor
      enclosure_component:SLOT 001  model          scsi_generic:sg0
      evt_media_change              power          scsi_level
      
      Note the enclosure_component:SLOT 001 which shows where in the enclosure
      this device fits.
      
      The astute will notice that I'm using SCSI VPD Inquiries to identify the
      devices.  This, unfortunately, won't work for SATA devices unless we do
      some really nasty hacking about on the SAT because the only think that
      knows the SAS addresses for SATA devices is libsas, not libata where the
      SAT resides.
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      9927c688
    • James Bottomley's avatar
      [SCSI] remove m68k NCR53C9x based drivers · 642978be
      James Bottomley authored
      
      
      These drivers depend on the deprecated NCR53C9X core and need to be converted
      to the esp_scsi core.
      Acked-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      Cc: Linux/m68k <linux-m68k@vger.kernel.org>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      642978be
    • James Bottomley's avatar
      [SCSI] dec_esp: Remove driver · da19d2f5
      James Bottomley authored
      
      
      This driver depends on the deprecated NCR53C9X core and needs to be converted
      to the esp_scsi core.
      Acked-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      Cc: "Maciej W. Rozycki" <macro@linux-mips.org>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      da19d2f5
    • James Bottomley's avatar
      [SCSI] mca_53c9x: remove driver · c9e86b8b
      James Bottomley authored
      
      
      This driver depends on the deprecated NCR53C9X core and needs to be converted
      to the esp_scsi core.
      Acked-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      c9e86b8b
    • Thomas Bogendoerfer's avatar
      [SCSI] sun3x_esp: convert to esp_scsi · 0bb67f18
      Thomas Bogendoerfer authored
      
      
      Converted sun3x_esp driver to use esp_scsi.c
      Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      0bb67f18
  16. 30 Jan, 2008 1 commit
  17. 22 Jan, 2008 1 commit
  18. 12 Jan, 2008 4 commits
  19. 05 Nov, 2007 1 commit
  20. 30 Oct, 2007 1 commit
  21. 19 Oct, 2007 1 commit
  22. 12 Oct, 2007 8 commits
  23. 23 Aug, 2007 1 commit