Loading drivers/scsi/ufs/ufs-debugfs.c +11 −2 Original line number Diff line number Diff line Loading @@ -1303,6 +1303,7 @@ static int ufsdbg_dme_read(void *data, u64 *attr_val, bool peer) struct ufs_hba *hba = data; u32 attr_id, read_val = 0; int (*read_func)(struct ufs_hba *, u32, u32 *); u32 attr_sel; if (!hba) return -EINVAL; Loading @@ -1313,8 +1314,16 @@ static int ufsdbg_dme_read(void *data, u64 *attr_val, bool peer) pm_runtime_get_sync(hba->dev); scsi_block_requests(hba->host); ret = ufshcd_wait_for_doorbell_clr(hba, DOORBELL_CLR_TOUT_US); if (!ret) ret = read_func(hba, UIC_ARG_MIB(attr_id), &read_val); if (!ret) { if ((attr_id >= MPHY_RX_ATTR_ADDR_START) && (attr_id <= MPHY_RX_ATTR_ADDR_END)) attr_sel = UIC_ARG_MIB_SEL(attr_id, UIC_ARG_MPHY_RX_GEN_SEL_INDEX(0)); else attr_sel = UIC_ARG_MIB(attr_id); ret = read_func(hba, attr_sel, &read_val); } scsi_unblock_requests(hba->host); pm_runtime_put_sync(hba->dev); Loading drivers/scsi/ufs/unipro.h +3 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,9 @@ #define RX_MIN_ACTIVATETIME_CAPABILITY 0x008F #define RX_HIBERN8TIME_CAPABILITY 0x0092 #define MPHY_RX_ATTR_ADDR_START 0x81 #define MPHY_RX_ATTR_ADDR_END 0xC1 #define is_mphy_tx_attr(attr) (attr < RX_MODE) #define RX_MIN_ACTIVATETIME_UNIT_US 100 #define HIBERN8TIME_UNIT_US 100 Loading Loading
drivers/scsi/ufs/ufs-debugfs.c +11 −2 Original line number Diff line number Diff line Loading @@ -1303,6 +1303,7 @@ static int ufsdbg_dme_read(void *data, u64 *attr_val, bool peer) struct ufs_hba *hba = data; u32 attr_id, read_val = 0; int (*read_func)(struct ufs_hba *, u32, u32 *); u32 attr_sel; if (!hba) return -EINVAL; Loading @@ -1313,8 +1314,16 @@ static int ufsdbg_dme_read(void *data, u64 *attr_val, bool peer) pm_runtime_get_sync(hba->dev); scsi_block_requests(hba->host); ret = ufshcd_wait_for_doorbell_clr(hba, DOORBELL_CLR_TOUT_US); if (!ret) ret = read_func(hba, UIC_ARG_MIB(attr_id), &read_val); if (!ret) { if ((attr_id >= MPHY_RX_ATTR_ADDR_START) && (attr_id <= MPHY_RX_ATTR_ADDR_END)) attr_sel = UIC_ARG_MIB_SEL(attr_id, UIC_ARG_MPHY_RX_GEN_SEL_INDEX(0)); else attr_sel = UIC_ARG_MIB(attr_id); ret = read_func(hba, attr_sel, &read_val); } scsi_unblock_requests(hba->host); pm_runtime_put_sync(hba->dev); Loading
drivers/scsi/ufs/unipro.h +3 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,9 @@ #define RX_MIN_ACTIVATETIME_CAPABILITY 0x008F #define RX_HIBERN8TIME_CAPABILITY 0x0092 #define MPHY_RX_ATTR_ADDR_START 0x81 #define MPHY_RX_ATTR_ADDR_END 0xC1 #define is_mphy_tx_attr(attr) (attr < RX_MODE) #define RX_MIN_ACTIVATETIME_UNIT_US 100 #define HIBERN8TIME_UNIT_US 100 Loading