Commit e1a7aa25 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull SCSI updates from James Bottomley:
 "This series consists of the usual driver updates (ufs, pm80xx, lpfc,
  mpi3mr, mpt3sas, hisi_sas, libsas) and minor updates and bug fixes.

  The most impactful change is likely the switch from GFP_DMA to
  GFP_KERNEL in a bunch of drivers, but even that shouldn't affect too
  many people"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (121 commits)
  scsi: mpi3mr: Bump driver version to 8.0.0.61.0
  scsi: mpi3mr: Fixes around reply request queues
  scsi: mpi3mr: Enhanced Task Management Support Reply handling
  scsi: mpi3mr: Use TM response codes from MPI3 headers
  scsi: mpi3mr: Add io_uring interface support in I/O-polled mode
  scsi: mpi3mr: Print cable mngnt and temp threshold events
  scsi: mpi3mr: Support Prepare for Reset event
  scsi: mpi3mr: Add Event acknowledgment logic
  scsi: mpi3mr: Gracefully handle online FW update operation
  scsi: mpi3mr: Detect async reset that occurred in firmware
  scsi: mpi3mr: Add IOC reinit function
  scsi: mpi3mr: Handle offline FW activation in graceful manner
  scsi: mpi3mr: Code refactor of IOC init - part2
  scsi: mpi3mr: Code refactor of IOC init - part1
  scsi: mpi3mr: Fault IOC when internal command gets timeout
  scsi: mpi3mr: Display IOC firmware package version
  scsi: mpi3mr: Handle unaligned PLL in unmap cmnds
  scsi: mpi3mr: Increase internal cmnds timeout to 60s
  scsi: mpi3mr: Do access status validation before adding devices
  scsi: mpi3mr: Add support for PCIe Managed Switch SES device
  ...
parents fb3b0673 c77b1f8a
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -7081,9 +7081,7 @@ S: Maintained
F:	drivers/mmc/host/cqhci*
EMULEX 10Gbps iSCSI - OneConnect DRIVER
M:	Subbu Seetharaman <subbu.seetharaman@broadcom.com>
M:	Ketan Mukadam <ketan.mukadam@broadcom.com>
M:	Jitendra Bhivare <jitendra.bhivare@broadcom.com>
L:	linux-scsi@vger.kernel.org
S:	Supported
W:	http://www.broadcom.com
+7 −15
Original line number Diff line number Diff line
@@ -163,27 +163,19 @@ EXPORT_SYMBOL(blk_pre_runtime_resume);
/**
 * blk_post_runtime_resume - Post runtime resume processing
 * @q: the queue of the device
 * @err: return value of the device's runtime_resume function
 *
 * Description:
 *    Update the queue's runtime status according to the return value of the
 *    device's runtime_resume function. If the resume was successful, call
 *    blk_set_runtime_active() to do the real work of restarting the queue.
 *    For historical reasons, this routine merely calls blk_set_runtime_active()
 *    to do the real work of restarting the queue.  It does this regardless of
 *    whether the device's runtime-resume succeeded; even if it failed the
 *    driver or error handler will need to communicate with the device.
 *
 *    This function should be called near the end of the device's
 *    runtime_resume callback.
 */
void blk_post_runtime_resume(struct request_queue *q, int err)
void blk_post_runtime_resume(struct request_queue *q)
{
	if (!q->dev)
		return;
	if (!err) {
	blk_set_runtime_active(q);
	} else {
		spin_lock_irq(&q->queue_lock);
		q->rpm_status = RPM_SUSPENDED;
		spin_unlock_irq(&q->queue_lock);
	}
}
EXPORT_SYMBOL(blk_post_runtime_resume);

@@ -201,7 +193,7 @@ EXPORT_SYMBOL(blk_post_runtime_resume);
 * runtime PM status and re-enable peeking requests from the queue. It
 * should be called before first request is added to the queue.
 *
 * This function is also called by blk_post_runtime_resume() for successful
 * This function is also called by blk_post_runtime_resume() for
 * runtime resumes.  It does everything necessary to restart the queue.
 */
void blk_set_runtime_active(struct request_queue *q)
+2 −4
Original line number Diff line number Diff line
@@ -1274,8 +1274,6 @@ mpt_send_handshake_request(u8 cb_idx, MPT_ADAPTER *ioc, int reqBytes, u32 *req,
static int
mpt_host_page_access_control(MPT_ADAPTER *ioc, u8 access_control_value, int sleepFlag)
{
	int	 r = 0;

	/* return if in use */
	if (CHIPREG_READ32(&ioc->chip->Doorbell)
	    & MPI_DOORBELL_ACTIVE)
@@ -1289,9 +1287,9 @@ mpt_host_page_access_control(MPT_ADAPTER *ioc, u8 access_control_value, int slee
		 (access_control_value<<12)));

	/* Wait for IOC to clear Doorbell Status bit */
	if ((r = WaitForDoorbellAck(ioc, 5, sleepFlag)) < 0) {
	if (WaitForDoorbellAck(ioc, 5, sleepFlag) < 0)
		return -2;
	}else
	else
		return 0;
}

+0 −2
Original line number Diff line number Diff line
@@ -904,13 +904,11 @@ static int inia100_build_scb(struct orc_host * host, struct orc_scb * scb, struc
/**
 *	inia100_queue_lck		-	queue command with host
 *	@cmd: Command block
 *	@done: Completion function
 *
 *	Called by the mid layer to queue a command. Process the command
 *	block, build the host specific scb structures and if there is room
 *	queue the command down to the controller
 */

static int inia100_queue_lck(struct scsi_cmnd *cmd)
{
	struct orc_scb *scb;
+0 −1
Original line number Diff line number Diff line
@@ -614,7 +614,6 @@ static irqreturn_t atp870u_intr_handle(int irq, void *dev_id)
/**
 *	atp870u_queuecommand_lck -	Queue SCSI command
 *	@req_p: request block
 *	@done: completion function
 *
 *	Queue a command to the ATP queue. Called with the host lock held.
 */
Loading