mbox series

[v2,0/5] ufs: core: mcq: Add ufshcd_abort() and error handler support in MCQ mode

Message ID cover.1681764704.git.quic_nguyenb@quicinc.com (mailing list archive)
Headers show
Series ufs: core: mcq: Add ufshcd_abort() and error handler support in MCQ mode | expand

Message

Bao D. Nguyen April 17, 2023, 9:05 p.m. UTC
This patch series enable support for ufshcd_abort() and error handler in MCQ mode.
The first 3 patches are for supporting ufshcd_abort().
The 4th and 5th patches are for supporting error handler.

Bao D. Nguyen (5):
  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
---
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.
---

 drivers/ufs/core/ufs-mcq.c     | 258 ++++++++++++++++++++++++++++++++++++++++-
 drivers/ufs/core/ufshcd-priv.h |  15 ++-
 drivers/ufs/core/ufshcd.c      | 140 ++++++++++++++++++----
 drivers/ufs/host/ufs-qcom.c    |   2 +-
 include/ufs/ufshcd.h           |   2 +-
 include/ufs/ufshci.h           |  17 +++
 6 files changed, 404 insertions(+), 30 deletions(-)

Comments

Stanley Jhu April 21, 2023, 2:32 a.m. UTC | #1
Bao D. Nguyen <quic_nguyenb@quicinc.com> 於 2023年4月18日 週二 上午5:12寫道:
>
> This patch series enable support for ufshcd_abort() and error handler in MCQ mode.
> The first 3 patches are for supporting ufshcd_abort().
> The 4th and 5th patches are for supporting error handler.
>
> Bao D. Nguyen (5):
>   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
> ---
> 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.
> ---
>
>  drivers/ufs/core/ufs-mcq.c     | 258 ++++++++++++++++++++++++++++++++++++++++-
>  drivers/ufs/core/ufshcd-priv.h |  15 ++-
>  drivers/ufs/core/ufshcd.c      | 140 ++++++++++++++++++----
>  drivers/ufs/host/ufs-qcom.c    |   2 +-
>  include/ufs/ufshcd.h           |   2 +-
>  include/ufs/ufshci.h           |  17 +++
>  6 files changed, 404 insertions(+), 30 deletions(-)
>
> --
> 2.7.4
>

This series looks good to me.

Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Po-Wen Kao April 21, 2023, 2:49 a.m. UTC | #2
On Mon, 2023-04-17 at 14:05 -0700, Bao D. Nguyen wrote:
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
> 
> 
> This patch series enable support for ufshcd_abort() and error handler
> in MCQ mode.
> The first 3 patches are for supporting ufshcd_abort().
> The 4th and 5th patches are for supporting error handler.
> 
> Bao D. Nguyen (5):
>   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
> ---
> 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.
> ---
> 
>  drivers/ufs/core/ufs-mcq.c     | 258
> ++++++++++++++++++++++++++++++++++++++++-
>  drivers/ufs/core/ufshcd-priv.h |  15 ++-
>  drivers/ufs/core/ufshcd.c      | 140 ++++++++++++++++++----
>  drivers/ufs/host/ufs-qcom.c    |   2 +-
>  include/ufs/ufshcd.h           |   2 +-
>  include/ufs/ufshci.h           |  17 +++
>  6 files changed, 404 insertions(+), 30 deletions(-)
> 
> --
> 2.7.4
> 

Reviewed-by: Po-Wen Kao <powen.kao@mediatek.com>