linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/7] ufs: core: mcq: Add ufshcd_abort() and error handler support in MCQ mode
@ 2023-05-12  6:28 Bao D. Nguyen
  2023-05-12  6:28 ` [PATCH v5 1/7] ufs: core: Combine 32-bit command_desc_base_addr_lo/hi Bao D. Nguyen
                   ` (6 more replies)
  0 siblings, 7 replies; 21+ messages in thread
From: Bao D. Nguyen @ 2023-05-12  6:28 UTC (permalink / raw)
  To: quic_asutoshd, quic_cang, bvanassche, mani, stanley.chu,
	adrian.hunter, beanhuo, avri.altman, martin.petersen
  Cc: linux-scsi, Bao D. Nguyen

This patch series enable support for ufshcd_abort() and error handler in MCQ mode.

Bao D. Nguyen (7):
  ufs: core: Combine 32-bit command_desc_base_addr_lo/hi
  ufs: core: Update the ufshcd_clear_cmds() functionality
  ufs: mcq: Add supporting functions for mcq abort
  ufs: mcq: Add support for clean up mcq resources
  ufs: mcq: Added ufshcd_mcq_abort()
  ufs: mcq: Use ufshcd_mcq_poll_cqe_lock() in mcq mode
  ufs: core: Add error handling for MCQ mode

 drivers/ufs/core/ufs-mcq.c     | 233 ++++++++++++++++++++++++++++++++++++++++-
 drivers/ufs/core/ufshcd-priv.h |  17 ++-
 drivers/ufs/core/ufshcd.c      | 216 ++++++++++++++++++++++++++++++--------
 drivers/ufs/host/ufs-qcom.c    |   2 +-
 include/ufs/ufshcd.h           |   5 +-
 include/ufs/ufshci.h           |  23 +++-
 6 files changed, 440 insertions(+), 56 deletions(-)
---
v4->v5:
patch #4: fixed uninitialized variable access introduced in patch v3.
---
v3->v4: Mainly addressed Bart's comments
patch #1: updated the commit message
patch #2: renamed ufshcd_clear_cmds() into ufshcd_clear_cmd()
patch #3: removed result arg in ufshcd_mcq_sq_cleanup()
patch #4: removed check for "!rq" in ufshcd_cmd_inflight()
          avoided access to door bell register in mcq mode 
patch #5, 6: unchanged
patch #7: ufshcd_clear_cmds() to ufshcd_clear_cmd()
--- 
v2->v3:
patch #1:
  New patch per Bart's comment. Helps process utp cmd
  descriptor addr easier.
patch #2:
  New patch to address Bart's comment regarding potentialoverflow 
  when mcq queue depth becomes greater than 64.
patch #3:
  Address Bart's comments
  . Replaced ufshcd_mcq_poll_register() with read_poll_timeout()
  . Replace spin_lock(sq_lock) with mutex(sq_mutex)
  . Updated ufshcd_mcq_nullify_cmd() and renamed to ufshcd_mcq_nullify_sqe()
  . Minor cosmetic changes
patch #4:
  Adress Bart's comments. Added new function ufshcd_cmd_inflight()
  to replace the usage of lrbp->cmd
patch #5:
  Continue replacing lrbp->cmd with ufshcd_cmd_inflight()
patch #6:
  No change
patch #7:
  Address Stanley Chu's comment about clearing hba->dev_cmd.complete
  in clear ufshcd_wait_for_dev_cmd()
  Address Bart's comment.
---
v1->v2:
patch #1: Addressed Powen's comment. Replaced read_poll_timeout()
with ufshcd_mcq_poll_register(). The function read_poll_timeout()
may sleep while the caller is holding a spin_lock(). Poll the registers
in a tight loop instead. 
---
-- 
2.7.4


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-05-23  7:01 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-12  6:28 [PATCH v5 0/7] ufs: core: mcq: Add ufshcd_abort() and error handler support in MCQ mode Bao D. Nguyen
2023-05-12  6:28 ` [PATCH v5 1/7] ufs: core: Combine 32-bit command_desc_base_addr_lo/hi Bao D. Nguyen
2023-05-19 22:46   ` Bart Van Assche
2023-05-12  6:28 ` [PATCH v5 2/7] ufs: core: Update the ufshcd_clear_cmds() functionality Bao D. Nguyen
2023-05-19 22:53   ` Bart Van Assche
2023-05-12  6:28 ` [PATCH v5 3/7] ufs: mcq: Add supporting functions for mcq abort Bao D. Nguyen
2023-05-19 22:56   ` Bart Van Assche
2023-05-12  6:28 ` [PATCH v5 4/7] ufs: mcq: Add support for clean up mcq resources Bao D. Nguyen
2023-05-19 22:58   ` Bart Van Assche
2023-05-12  6:28 ` [PATCH v5 5/7] ufs: mcq: Added ufshcd_mcq_abort() Bao D. Nguyen
2023-05-17  3:15   ` Stanley Chu
2023-05-17  3:25     ` Bao D. Nguyen
2023-05-12  6:28 ` [PATCH v5 6/7] ufs: mcq: Use ufshcd_mcq_poll_cqe_lock() in mcq mode Bao D. Nguyen
2023-05-19 22:59   ` Bart Van Assche
2023-05-12  6:28 ` [PATCH v5 7/7] ufs: core: Add error handling for MCQ mode Bao D. Nguyen
2023-05-19 23:03   ` Bart Van Assche
2023-05-20  0:11     ` Bao D. Nguyen
2023-05-23  6:58     ` Bao D. Nguyen
2023-05-22  6:48   ` Stanley Chu
2023-05-22  6:56     ` Stanley Chu
2023-05-23  7:01       ` Bao D. Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).