Message ID | 20200302135346.16797-1-stanley.chu@mediatek.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 47d054580a75b7d14d275a76146ce2f41bc16a81 |
Headers | show |
Series | [v1] scsi: ufs-mediatek: fix HOST_PA_TACTIVATE quirk for Samsung UFS Devices | expand |
> > Device quirk "UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE" is enabled for all > Samsung devices by default currently. > > However MediaTek UFS host requires different host's PA_TACTIVATE > configuration. Hence clear this quirk first and then apply vendor-specific > value in vops callback. > > Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> Reviewed-by: Avri Altman <avri.altman@wdc.com> > --- > drivers/scsi/ufs/ufs-mediatek.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/scsi/ufs/ufs-mediatek.c b/drivers/scsi/ufs/ufs-mediatek.c > index de650822c9d9..3b0e575d7460 100644 > --- a/drivers/scsi/ufs/ufs-mediatek.c > +++ b/drivers/scsi/ufs/ufs-mediatek.c > @@ -533,8 +533,10 @@ static int ufs_mtk_apply_dev_quirks(struct ufs_hba > *hba) > struct ufs_dev_info *dev_info = &hba->dev_info; > u16 mid = dev_info->wmanufacturerid; > > - if (mid == UFS_VENDOR_SAMSUNG) > + if (mid == UFS_VENDOR_SAMSUNG) { > + hba->dev_quirks &= ~UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE; > ufshcd_dme_set(hba, UIC_ARG_MIB(PA_TACTIVATE), 6); > + } > > /* > * Decide waiting time before gating reference clock and > -- > 2.18.0
Stanley, > Device quirk "UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE" is enabled for all > Samsung devices by default currently. > > However MediaTek UFS host requires different host's PA_TACTIVATE > configuration. Hence clear this quirk first and then apply vendor-specific > value in vops callback. Applied to 5.7/scsi-queue, thanks!
diff --git a/drivers/scsi/ufs/ufs-mediatek.c b/drivers/scsi/ufs/ufs-mediatek.c index de650822c9d9..3b0e575d7460 100644 --- a/drivers/scsi/ufs/ufs-mediatek.c +++ b/drivers/scsi/ufs/ufs-mediatek.c @@ -533,8 +533,10 @@ static int ufs_mtk_apply_dev_quirks(struct ufs_hba *hba) struct ufs_dev_info *dev_info = &hba->dev_info; u16 mid = dev_info->wmanufacturerid; - if (mid == UFS_VENDOR_SAMSUNG) + if (mid == UFS_VENDOR_SAMSUNG) { + hba->dev_quirks &= ~UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE; ufshcd_dme_set(hba, UIC_ARG_MIB(PA_TACTIVATE), 6); + } /* * Decide waiting time before gating reference clock and
Device quirk "UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE" is enabled for all Samsung devices by default currently. However MediaTek UFS host requires different host's PA_TACTIVATE configuration. Hence clear this quirk first and then apply vendor-specific value in vops callback. Signed-off-by: Stanley Chu <stanley.chu@mediatek.com> --- drivers/scsi/ufs/ufs-mediatek.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)