On 2020-05-04 07:20, huobean@xxxxxxxxx wrote: > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c > index 698e8d20b4ba..de13d2333f1f 100644 > --- a/drivers/scsi/ufs/ufshcd.c > +++ b/drivers/scsi/ufs/ufshcd.c > @@ -6627,6 +6627,17 @@ static int ufs_get_device_desc(struct ufs_hba *hba) > goto out; > } > > + if (desc_buf[DEVICE_DESC_PARAM_UFS_FEAT] & 0x80) { > + hba->dev_info.hpb_control_mode = > + desc_buf[DEVICE_DESC_PARAM_HPB_CTRL_MODE]; > + hba->dev_info.hpb_ver = > + (u16) (desc_buf[DEVICE_DESC_PARAM_HPB_VER] << 8) | > + desc_buf[DEVICE_DESC_PARAM_HPB_VER + 1]; > + dev_info(hba->dev, "HPB Version: 0x%2x\n", > + hba->dev_info.hpb_ver); > + dev_info(hba->dev, "HPB control mode: %d\n", > + hba->dev_info.hpb_control_mode); > + } > /* > * getting vendor (manufacturerID) and Bank Index in big endian > * format Please introduce a symbolic name for the constant 0x80, e.g. UFS_FEATURE_HPB. Please use get_unaligned_be16() instead of open-coding it. Thanks, Bart.