* [PATCH v1 0/2] scsi: ufs: Fix and cleanup device quirk @ 2020-06-10 5:36 Stanley Chu 2020-06-10 5:36 ` [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices Stanley Chu 2020-06-10 5:36 ` [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition Stanley Chu 0 siblings, 2 replies; 6+ messages in thread From: Stanley Chu @ 2020-06-10 5:36 UTC (permalink / raw) To: linux-scsi, martin.petersen, avri.altman, alim.akhtar, jejb, asutoshd Cc: bvanassche, andy.teng, cc.chou, chun-hung.wu, kuohong.wang, linux-kernel, cang, linux-mediatek, peter.wang, matthias.bgg, Stanley Chu, chaotian.jing, linux-arm-kernel, beanhuo Hi, this series provides some device quirk fixes and cleanups. Stanley Chu (2): scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices scsi: ufs: Cleanup device vendor and quirk definition drivers/scsi/ufs/ufs_quirks.h | 3 ++- drivers/scsi/ufs/ufshcd.c | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) -- 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices 2020-06-10 5:36 [PATCH v1 0/2] scsi: ufs: Fix and cleanup device quirk Stanley Chu @ 2020-06-10 5:36 ` Stanley Chu 2020-06-10 9:06 ` Bean Huo 2020-06-10 5:36 ` [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition Stanley Chu 1 sibling, 1 reply; 6+ messages in thread From: Stanley Chu @ 2020-06-10 5:36 UTC (permalink / raw) To: linux-scsi, martin.petersen, avri.altman, alim.akhtar, jejb, asutoshd Cc: bvanassche, andy.teng, cc.chou, chun-hung.wu, kuohong.wang, linux-kernel, cang, linux-mediatek, peter.wang, matthias.bgg, Stanley Chu, chaotian.jing, linux-arm-kernel, beanhuo It is confirmed that Micron device needs DELAY_BEFORE_LPM quirk to have a delay before VCC is powered off. So add Micron vendor ID and this quirk for Micron devices. Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> --- drivers/scsi/ufs/ufs_quirks.h | 1 + drivers/scsi/ufs/ufshcd.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/drivers/scsi/ufs/ufs_quirks.h b/drivers/scsi/ufs/ufs_quirks.h index e3175a63c676..e80d5f26a442 100644 --- a/drivers/scsi/ufs/ufs_quirks.h +++ b/drivers/scsi/ufs/ufs_quirks.h @@ -12,6 +12,7 @@ #define UFS_ANY_VENDOR 0xFFFF #define UFS_ANY_MODEL "ANY_MODEL" +#define UFS_VENDOR_MICRON 0x12C #define UFS_VENDOR_TOSHIBA 0x198 #define UFS_VENDOR_SAMSUNG 0x1CE #define UFS_VENDOR_SKHYNIX 0x1AD diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 04b79ca66fdf..dea4fddf9332 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -216,6 +216,8 @@ ufs_get_desired_pm_lvl_for_dev_link_state(enum ufs_dev_pwr_mode dev_state, static struct ufs_dev_fix ufs_fixups[] = { /* UFS cards deviations table */ + UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, -- 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices 2020-06-10 5:36 ` [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices Stanley Chu @ 2020-06-10 9:06 ` Bean Huo 0 siblings, 0 replies; 6+ messages in thread From: Bean Huo @ 2020-06-10 9:06 UTC (permalink / raw) To: Stanley Chu, linux-scsi, martin.petersen, avri.altman, alim.akhtar, jejb, asutoshd Cc: bvanassche, andy.teng, cc.chou, chun-hung.wu, kuohong.wang, linux-kernel, cang, linux-mediatek, peter.wang, matthias.bgg, chaotian.jing, linux-arm-kernel, beanhuo On Wed, 2020-06-10 at 13:36 +0800, Stanley Chu wrote: > It is confirmed that Micron device needs DELAY_BEFORE_LPM > quirk to have a delay before VCC is powered off. So add Micron > vendor ID and this quirk for Micron devices. > > Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> Reviewed-by: Bean Huo <beanhuo@micron.com> Thanks, Bean > --- > drivers/scsi/ufs/ufs_quirks.h | 1 + > drivers/scsi/ufs/ufshcd.c | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/drivers/scsi/ufs/ufs_quirks.h > b/drivers/scsi/ufs/ufs_quirks.h > index e3175a63c676..e80d5f26a442 100644 > --- a/drivers/scsi/ufs/ufs_quirks.h > +++ b/drivers/scsi/ufs/ufs_quirks.h > @@ -12,6 +12,7 @@ > #define UFS_ANY_VENDOR 0xFFFF > #define UFS_ANY_MODEL "ANY_MODEL" > > +#define UFS_VENDOR_MICRON 0x12C > #define UFS_VENDOR_TOSHIBA 0x198 > #define UFS_VENDOR_SAMSUNG 0x1CE > #define UFS_VENDOR_SKHYNIX 0x1AD > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c > index 04b79ca66fdf..dea4fddf9332 100644 > --- a/drivers/scsi/ufs/ufshcd.c > +++ b/drivers/scsi/ufs/ufshcd.c > @@ -216,6 +216,8 @@ ufs_get_desired_pm_lvl_for_dev_link_state(enum > ufs_dev_pwr_mode dev_state, > > static struct ufs_dev_fix ufs_fixups[] = { > /* UFS cards deviations table */ > + UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, > + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > -- > 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition 2020-06-10 5:36 [PATCH v1 0/2] scsi: ufs: Fix and cleanup device quirk Stanley Chu 2020-06-10 5:36 ` [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices Stanley Chu @ 2020-06-10 5:36 ` Stanley Chu 2020-06-11 15:34 ` Alim Akhtar 1 sibling, 1 reply; 6+ messages in thread From: Stanley Chu @ 2020-06-10 5:36 UTC (permalink / raw) To: linux-scsi, martin.petersen, avri.altman, alim.akhtar, jejb, asutoshd Cc: bvanassche, andy.teng, cc.chou, chun-hung.wu, kuohong.wang, linux-kernel, cang, linux-mediatek, peter.wang, matthias.bgg, Stanley Chu, chaotian.jing, linux-arm-kernel, beanhuo Cleanup below items, - Arrange vendor name in alphabetical order - Squash device quirks as compact as possible in device quirk table to enhance performance of the lookup. Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> --- drivers/scsi/ufs/ufs_quirks.h | 2 +- drivers/scsi/ufs/ufshcd.c | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/ufs/ufs_quirks.h b/drivers/scsi/ufs/ufs_quirks.h index e80d5f26a442..2a0041493e30 100644 --- a/drivers/scsi/ufs/ufs_quirks.h +++ b/drivers/scsi/ufs/ufs_quirks.h @@ -13,9 +13,9 @@ #define UFS_ANY_MODEL "ANY_MODEL" #define UFS_VENDOR_MICRON 0x12C -#define UFS_VENDOR_TOSHIBA 0x198 #define UFS_VENDOR_SAMSUNG 0x1CE #define UFS_VENDOR_SKHYNIX 0x1AD +#define UFS_VENDOR_TOSHIBA 0x198 #define UFS_VENDOR_WDC 0x145 /** diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index dea4fddf9332..7c93cb446f51 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -219,10 +219,8 @@ static struct ufs_dev_fix ufs_fixups[] = { UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, - UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, - UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS), - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM | + UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS | UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE), UFS_FIX(UFS_VENDOR_TOSHIBA, UFS_ANY_MODEL, UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), -- 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 6+ messages in thread
* RE: [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition 2020-06-10 5:36 ` [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition Stanley Chu @ 2020-06-11 15:34 ` Alim Akhtar 2020-06-12 1:27 ` Stanley Chu 0 siblings, 1 reply; 6+ messages in thread From: Alim Akhtar @ 2020-06-11 15:34 UTC (permalink / raw) To: 'Stanley Chu', linux-scsi, martin.petersen, avri.altman, jejb, asutoshd Cc: bvanassche, andy.teng, cc.chou, chun-hung.wu, kuohong.wang, linux-kernel, cang, linux-mediatek, peter.wang, matthias.bgg, chaotian.jing, linux-arm-kernel, beanhuo Hi Stanley > -----Original Message----- > From: Stanley Chu <stanley.chu@mediatek.com> > Sent: 10 June 2020 11:07 > To: linux-scsi@vger.kernel.org; martin.petersen@oracle.com; > avri.altman@wdc.com; alim.akhtar@samsung.com; jejb@linux.ibm.com; > asutoshd@codeaurora.org > Cc: beanhuo@micron.com; cang@codeaurora.org; matthias.bgg@gmail.com; > bvanassche@acm.org; linux-mediatek@lists.infradead.org; linux-arm- > kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > kuohong.wang@mediatek.com; peter.wang@mediatek.com; chun- > hung.wu@mediatek.com; andy.teng@mediatek.com; > chaotian.jing@mediatek.com; cc.chou@mediatek.com; Stanley Chu > <stanley.chu@mediatek.com> > Subject: [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition > > Cleanup below items, > - Arrange vendor name in alphabetical order > - Squash device quirks as compact as possible in device quirk table > to enhance performance of the lookup. > > Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> > --- > drivers/scsi/ufs/ufs_quirks.h | 2 +- > drivers/scsi/ufs/ufshcd.c | 6 ++---- > 2 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/scsi/ufs/ufs_quirks.h b/drivers/scsi/ufs/ufs_quirks.h index > e80d5f26a442..2a0041493e30 100644 > --- a/drivers/scsi/ufs/ufs_quirks.h > +++ b/drivers/scsi/ufs/ufs_quirks.h > @@ -13,9 +13,9 @@ > #define UFS_ANY_MODEL "ANY_MODEL" > > #define UFS_VENDOR_MICRON 0x12C > -#define UFS_VENDOR_TOSHIBA 0x198 > #define UFS_VENDOR_SAMSUNG 0x1CE > #define UFS_VENDOR_SKHYNIX 0x1AD > +#define UFS_VENDOR_TOSHIBA 0x198 > #define UFS_VENDOR_WDC 0x145 > > /** > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index > dea4fddf9332..7c93cb446f51 100644 > --- a/drivers/scsi/ufs/ufshcd.c > +++ b/drivers/scsi/ufs/ufshcd.c > @@ -219,10 +219,8 @@ static struct ufs_dev_fix ufs_fixups[] = { > UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, > UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > - UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > - UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS), > - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM | > + UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS | > UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE), > UFS_FIX(UFS_VENDOR_TOSHIBA, UFS_ANY_MODEL, > UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > -- While at this, may be arrange the table in alphabetical order. > 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition 2020-06-11 15:34 ` Alim Akhtar @ 2020-06-12 1:27 ` Stanley Chu 0 siblings, 0 replies; 6+ messages in thread From: Stanley Chu @ 2020-06-12 1:27 UTC (permalink / raw) To: Alim Akhtar Cc: linux-arm-kernel, bvanassche, martin.petersen, andy.teng, jejb, chun-hung.wu, kuohong.wang, linux-kernel, avri.altman, cang, linux-mediatek, peter.wang, linux-scsi, matthias.bgg, beanhuo, cc.chou, chaotian.jing, asutoshd Hi Alim, On Thu, 2020-06-11 at 21:04 +0530, Alim Akhtar wrote: > Hi Stanley > > > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index > > dea4fddf9332..7c93cb446f51 100644 > > --- a/drivers/scsi/ufs/ufshcd.c > > +++ b/drivers/scsi/ufs/ufshcd.c > > @@ -219,10 +219,8 @@ static struct ufs_dev_fix ufs_fixups[] = { > > UFS_FIX(UFS_VENDOR_MICRON, UFS_ANY_MODEL, > > UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > > UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > > - UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > > - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > > - UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS), > > - UFS_FIX(UFS_VENDOR_SAMSUNG, UFS_ANY_MODEL, > > + UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM | > > + UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS | > > UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE), > > UFS_FIX(UFS_VENDOR_TOSHIBA, UFS_ANY_MODEL, > > UFS_DEVICE_QUIRK_DELAY_BEFORE_LPM), > > -- > While at this, may be arrange the table in alphabetical order. Sure, fixed in v2. Thanks for the review. Stanley Chu _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-06-12 1:36 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-06-10 5:36 [PATCH v1 0/2] scsi: ufs: Fix and cleanup device quirk Stanley Chu 2020-06-10 5:36 ` [PATCH v1 1/2] scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices Stanley Chu 2020-06-10 9:06 ` Bean Huo 2020-06-10 5:36 ` [PATCH v1 2/2] scsi: ufs: Cleanup device vendor and quirk definition Stanley Chu 2020-06-11 15:34 ` Alim Akhtar 2020-06-12 1:27 ` Stanley Chu
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).