mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
scsi: ufs: core: Inline two functions related to UIC commands
The implementation of the two functions ufshcd_get_uic_cmd_result() and ufshcd_get_dme_attr_val() is very short. Additionally, both functions only have one caller. Inline both functions to make the code shorter. Reviewed-by: Peter Wang <peter.wang@mediatek.com> Signed-off-by: Bart Van Assche <bvanassche@acm.org> Link: https://patch.msgid.link/20260519212135.3130556-2-bvanassche@acm.org Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
c1f7275b61
commit
727e78887e
|
|
@ -912,33 +912,6 @@ static inline int ufshcd_get_lists_status(u32 reg)
|
|||
return !((reg & UFSHCD_STATUS_READY) == UFSHCD_STATUS_READY);
|
||||
}
|
||||
|
||||
/**
|
||||
* ufshcd_get_uic_cmd_result - Get the UIC command result
|
||||
* @hba: Pointer to adapter instance
|
||||
*
|
||||
* This function gets the result of UIC command completion
|
||||
*
|
||||
* Return: 0 on success; non-zero value on error.
|
||||
*/
|
||||
static inline int ufshcd_get_uic_cmd_result(struct ufs_hba *hba)
|
||||
{
|
||||
return ufshcd_readl(hba, REG_UIC_COMMAND_ARG_2) &
|
||||
MASK_UIC_COMMAND_RESULT;
|
||||
}
|
||||
|
||||
/**
|
||||
* ufshcd_get_dme_attr_val - Get the value of attribute returned by UIC command
|
||||
* @hba: Pointer to adapter instance
|
||||
*
|
||||
* This function gets UIC command argument3
|
||||
*
|
||||
* Return: 0 on success; non-zero value on error.
|
||||
*/
|
||||
static inline u32 ufshcd_get_dme_attr_val(struct ufs_hba *hba)
|
||||
{
|
||||
return ufshcd_readl(hba, REG_UIC_COMMAND_ARG_3);
|
||||
}
|
||||
|
||||
/**
|
||||
* ufshcd_get_req_rsp - returns the TR response transaction type
|
||||
* @ucd_rsp_ptr: pointer to response UPIU
|
||||
|
|
@ -5810,8 +5783,14 @@ static irqreturn_t ufshcd_uic_cmd_compl(struct ufs_hba *hba, u32 intr_status)
|
|||
hba->errors |= (UFSHCD_UIC_HIBERN8_MASK & intr_status);
|
||||
|
||||
if (intr_status & UIC_COMMAND_COMPL) {
|
||||
cmd->argument2 |= ufshcd_get_uic_cmd_result(hba);
|
||||
cmd->argument3 = ufshcd_get_dme_attr_val(hba);
|
||||
/*
|
||||
* Store the UIC command result in the lowest byte of
|
||||
* cmd->argument2.
|
||||
*/
|
||||
cmd->argument2 |= ufshcd_readl(hba, REG_UIC_COMMAND_ARG_2) &
|
||||
MASK_UIC_COMMAND_RESULT;
|
||||
/* Store the DME attribute value in cmd->argument3. */
|
||||
cmd->argument3 = ufshcd_readl(hba, REG_UIC_COMMAND_ARG_3);
|
||||
if (!hba->uic_async_done)
|
||||
cmd->cmd_active = false;
|
||||
complete(&cmd->done);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user