30 Jun, 2011

37 commits

  • Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • Driver should not call shutdown call from _scsih_remove otherwise,
    The scsi midlayer can be deadlocked when devices are removed from the driver
    pci_driver->shutdown handler.

    Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • Properly handling of target reset in multi-initiator environment

    Clean up in broadcast change handling:
    (1) Need to look at the status of each task management request, and retry
    the TM when there are failures.
    (2) Need quiescence IO so the driver doesn't take on more IO request while
    it's in the middle of sending TM request to firmware
    (3) Add support to keep track of how many pending broadcast AEN events
    are received while the broadcast handling is active, then loop back at
    the end of this routine if there were any events received.

    Clean up in mpt2sas_scsih_issue_tm routine:
    (1) Make sure proper status is returned when host reset fails
    (2) Clean up sanity checks near end of routine, insuring all outstanding
    IOs were completed.

    Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • This feature is to override the default
    max_sectors setting at load time, taking max_sectors as an
    command line option when loading the driver. The setting is
    currently hard-coded in the driver to 8192 sectors (4MB transfers).
    If max_sectors is specified at load time, minimum specified
    setting will be 64, and the maximum is 8192. The driver will
    modify the setting to be on even boundary. If max_sectors is not
    specified, the driver will default to 8192.

    Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • mpt2sas driver revision q header update:

    (1) Modified the descriptions of the LocalAddress bit in the
    Flags field of the MPI SGE Format description and the MPI
    Simple Element.
    (2) Modified Data Location Address Space bits in the Flags field
    of the IEEE Chain Element.
    (3) Added more detail to the description of the DataLength field
    for the SCSI IO Request and Target Assist Request. Removed
    restriction on using chained SGLs when using multicast or
    bidirectional support.
    (4) In Manufacturing Page 7, added ReceptacleID field to
    ConnectorInfo, and reworked how the Pinout field is used.
    (5) In IO Unit Page 7, added BoardTemperature and
    BoardTemperatureUnits fields.
    (6) In IOC Page 1, changed CoalescingTimeout to units of
    half-microsecond and updated descriptions.
    (7) Modified descriptions of SATASlumberTimeout and
    SASSlumberTimeout fields in SAS IO Unit Page 5 to indicate
    the timers start after partial mode is entered.
    (8) Added Extended Manufacturing configuration pages.

    Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • This patch addresses many endian issues solved by runing sparse with the
    option __CHECK_ENDIAN__ turned on.

    Signed-off-by: Kashyap Desai
    Signed-off-by: James Bottomley

    Kashyap, Desai
     
  • Signed-off-by: Abhijeet Joglekar
    Signed-off-by: James Bottomley

    Abhijeet Joglekar
     
  • Driver was incorrectly using the SLAB_CACHE_DMA flag when creating a cache
    for SGLs. fnic device does not have 24-bit DMA restrictions. Remove the flag
    and allocations from ZONE_DMA.

    Thanks to Roland Dreier and David Rientjes for pointing out the bug.

    Signed-off-by: Abhijeet Joglekar
    Signed-off-by: James Bottomley

    Abhijeet Joglekar
     
  • Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Added BSG interface support to BFA driver
    - Adds support to send ELS/CT FC passthru commands and
    few vendor specific BSG requests.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Moved FCS initialization, which internally does the im_port creation
    as well as the scsi_host creation before bfa_init.

    Once the bfa_init is complete & successful:
    - Reset the FCS base port cfg params such as pwwn/nwwn and setup fc host
    params - based on the values learned during the ioc getattr request.
    - Change needed to support BSG commands even on bfa init failure.
    - Model description fixes for Brocade adapters.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Enhancements to FCPIM module.
    - Introduced IO tag management to allocate/release IOs to FCPIM module
    from a free IOtag pool.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Introduce FC credit recovery.
    - Added module parameter to enable/disable credit recovery.

    Bug Fixes:
    - Removed check for ignoring plogi from initiator in switched fabric mode.
    - The ABTS for PLOGI is going out few millisecs earlier due to FW
    timer calibration (around 300 miilisecs earlier). So there is a
    window if an accept comes during this time HBA would have initiated
    an ABORT.
    - Added 1 to FC_ELS_TOV for compensating for FW timer.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Added support for 16Gbps.
    - Added logic to flush pending mailbox command queue when IOC is disabled.
    - Fix to Halt the flash controller during fw initialization - since
    when asic blck is programmed flash controller's continuous access
    blocks f/w access to flash.
    - Added new asic based card types and modified IOC get card model routine.
    - Added PLL init fix to do LPU reset every time we do a memory
    initialization, since not doing so will cause LPU to be
    uninitialized during driver load.
    - Added fix to Halt flash controller before PLL initialization.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Introduced IOC poll mechanism which replaces current interrupt
    based FW READY method.
    - The timer based poll routine in IOC will query the ioc_fwstate
    register to see if there is a state change in FW, and sends the READY event.
    - Bug fixes in the new asic PLL initialization.
    - Added logic to handle CPE/RME queue interrupts before iocfc config done.
    1. Use the queue_process flag to see if iocfc configuration is done
    in INTX mode.
    2. Split the MSIX handler installation in two - one for IOC intr
    handler and the other for cpe/rme queue handler - and delay
    assigning queue handlers until iocfc config is done in MSIX mode.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • Made changes to FCS lport, vport state machines to support vport
    enable / disable operations.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Added support for Brocade-1860 Fabric Adapter.
    - Made changes to support single firmware image per asic type.
    - Combined bfi_cbreg.h and bfi_ctreg.h defines into bfi_reg.h with
    only minimal defines used by host.
    - Added changes to setup CPE/RME Queue register offsets based on
    firmware response.
    - Removed queue register offset initializations and added register offsets
    to BFI config response message.
    - Added Brocade-1860 asic specific interrupt status definitions and
    mailbox interfaces.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Add PBC port Disabled condition check.
    - Rename incorrectly named LPS I2H messages.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • Introduced a generic event notification callback function that
    receives IOC_ENABLED, IOC_DISABLED, IOC_FAILED events and notifies the
    modules registered for these events.

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • - Avoid the use of hardware defined structure bfi_sge_s for DMA
    requests in host.

    - Defined a generic address len pair to represent a DMA memory chunk
    (bfi_alen_s).

    Signed-off-by: Krishna Gudipati
    Signed-off-by: James Bottomley

    Krishna Gudipati
     
  • This fixes:

    drivers/scsi/sun3_NCR5380.c:475: warning: ‘merge_contiguous_buffers’ defined but not used

    Signed-off-by: Geert Uytterhoeven
    Cc: Sam Creasey
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • This fixes a.o.:

    drivers/scsi/sun3_scsi.h:225:5: warning: "NDEBUG" is not defined
    drivers/scsi/sun3_scsi.h:345:14: warning: "NDEBUG_ABORT" is not defined
    drivers/scsi/sun3_scsi.h:351:14: warning: "NDEBUG_TAGS" is not defined
    drivers/scsi/sun3_scsi.h:357:14: warning: "NDEBUG_MERGING" is not defined

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • This fixes:

    drivers/scsi/sun3_NCR5380.c:1448:5: warning: "NCR_TIMEOUT" is not defined

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • and call it from sun3scsi_release(), cfr. the other NCR5380 drivers.

    This fixes:

    drivers/scsi/NCR5380.h:303: warning: ‘NCR5380_exit’ declared ‘static’ but never defined

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • WARNING: vmlinux.o(.text+0x18545c): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options()
    WARNING: vmlinux.o(.text+0x18556c): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options()
    WARNING: vmlinux.o(.text+0x187692): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options()
    WARNING: vmlinux.o(.text+0x187770): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options()

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • This fixes:

    drivers/scsi/mac_scsi.c:220:5: warning: "NDEBUG_ABORT" is not defined
    drivers/scsi/mac_scsi.c:271:5: warning: "NDEBUG_ABORT" is not defined

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • WARNING: vmlinux.o(.text+0x1ecd3e): Section mismatch in reference from the function macscsi_detect() to the function .devinit.text:NCR5380_init()
    WARNING: vmlinux.o(.text+0x1ecddc): Section mismatch in reference from the function macscsi_detect() to the function .init.text:NCR5380_print_options()
    WARNING: vmlinux.o(.text+0x1ece60): Section mismatch in reference from the function macscsi_detect() to the function .init.text:NCR5380_print_options()

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • and call it from atari_scsi_release(), cfr. the other NCR5380 drivers.

    This fixes:

    drivers/scsi/NCR5380.h:303: warning: ‘NCR5380_exit’ declared ‘static’ but never defined

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • Add ISA PNP IDs of the following cards to aha152x driver:
    AVA-1502
    AVA-1505
    AHA-1510
    AVA-1515
    AHA-1520
    AHA-1522
    AHA-1530
    AHA-1532
    AIC-6360
    (list from SCSI.INF file)

    This makes my AHA-1530P card (has ADP3015 ID) work automatically.

    Signed-off-by: Ondrej Zary
    Signed-off-by: James Bottomley

    Ondrej Zary
     
  • This patch resulted from the discussion at
    https://bugzilla.novell.com/show_bug.cgi?id=679277,
    https://bugzilla.novell.com/show_bug.cgi?id=681840 .

    Signed-off-by: Werner Fink
    Signed-off-by: Ankit Jain
    Cc: stable@kernel.org
    Signed-off-by: James Bottomley

    Werner Fink
     
  • Noticed that when the sysfs interface of the SCSI SES
    driver was used to request a fault indication the LED
    flashed but the buzzer didn't sound. So it was doing
    what REQUEST IDENT (locate) should do.

    Changelog:
    - fix the setting of REQUEST FAULT for the device slot
    and array device slot elements in the enclosure control
    diagnostic page
    - note the potentially defective code that reads the
    FAULT SENSED and FAULT REQUESTED bits from the enclosure
    status diagnostic page

    The attached patch is against git/scsi-misc-2.6

    Signed-off-by: Douglas Gilbert
    Cc: stable@kernel.org
    Signed-off-by: James Bottomley

    Douglas Gilbert
     
  • commit 8ce7955aa52c37db1425ea4bd4edcfa67e253454 ("[SCSI] atari_NCR5380:
    update_timeout removal") removed all users, but not the avtual variable.

    Suggested-by: Ben Hutchings
    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • Using the current NEXT() macro for both lvalues and rvalues gives:

    In file included from drivers/scsi/sun3_scsi.c:623:
    drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_queue_command_lck’:
    drivers/scsi/sun3_NCR5380.c:993: warning: assignment discards qualifiers from pointer target type
    drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_main’:
    drivers/scsi/sun3_NCR5380.c:1147: warning: assignment discards qualifiers from pointer target type
    drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_information_transfer’:
    drivers/scsi/sun3_NCR5380.c:2277: warning: assignment discards qualifiers from pointer target type
    drivers/scsi/sun3_NCR5380.c:2333: warning: assignment discards qualifiers from pointer target type

    Change NEXT() to operate on rvalues only(), and introduce SET_NEXT() to
    operate on lvalues, as is done in drivers/scsi/atari_NCR5380.c.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: James Bottomley

    Geert Uytterhoeven
     
  • Signed-off-by: Bhanu Prakash Gollapudi
    Signed-off-by: James Bottomley

    Bhanu Prakash Gollapudi
     
  • Signed-off-by: Bhanu Prakash Gollapudi
    Signed-off-by: James Bottomley

    Bhanu Prakash Gollapudi
     
  • Deleting NPIV port causes a kernel panic when the NPIV port is in the same zone
    as the physical port and shares the same LUN. This happens due to the fact that
    vport destroy and unsolicited ELS are scheduled to run on the same workqueue,
    and vport destroy destroys the lport and the unsolicited ELS tries to access
    the invalid lport. This patch fixes this issue by maintaining a list of valid
    lports and verifying if the lport is valid or not before accessing it.

    Signed-off-by: Bhanu Prakash Gollapudi
    Signed-off-by: James Bottomley

    Bhanu Prakash Gollapudi
     

29 Jun, 2011

3 commits