Lines Matching refs:uic_cmd
2278 ufshcd_dispatch_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_dispatch_uic_cmd() argument
2284 hba->active_uic_cmd = uic_cmd; in ufshcd_dispatch_uic_cmd()
2287 ufshcd_writel(hba, uic_cmd->argument1, REG_UIC_COMMAND_ARG_1); in ufshcd_dispatch_uic_cmd()
2288 ufshcd_writel(hba, uic_cmd->argument2, REG_UIC_COMMAND_ARG_2); in ufshcd_dispatch_uic_cmd()
2289 ufshcd_writel(hba, uic_cmd->argument3, REG_UIC_COMMAND_ARG_3); in ufshcd_dispatch_uic_cmd()
2291 ufshcd_add_uic_command_trace(hba, uic_cmd, UFS_CMD_SEND); in ufshcd_dispatch_uic_cmd()
2294 ufshcd_writel(hba, uic_cmd->command & COMMAND_OPCODE_MASK, in ufshcd_dispatch_uic_cmd()
2306 ufshcd_wait_for_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_wait_for_uic_cmd() argument
2313 if (wait_for_completion_timeout(&uic_cmd->done, in ufshcd_wait_for_uic_cmd()
2315 ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; in ufshcd_wait_for_uic_cmd()
2320 uic_cmd->command, uic_cmd->argument3); in ufshcd_wait_for_uic_cmd()
2322 if (!uic_cmd->cmd_active) { in ufshcd_wait_for_uic_cmd()
2325 ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; in ufshcd_wait_for_uic_cmd()
2345 __ufshcd_send_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd, in __ufshcd_send_uic_cmd() argument
2358 init_completion(&uic_cmd->done); in __ufshcd_send_uic_cmd()
2360 uic_cmd->cmd_active = 1; in __ufshcd_send_uic_cmd()
2361 ufshcd_dispatch_uic_cmd(hba, uic_cmd); in __ufshcd_send_uic_cmd()
2373 int ufshcd_send_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_send_uic_cmd() argument
2386 ret = __ufshcd_send_uic_cmd(hba, uic_cmd, true); in ufshcd_send_uic_cmd()
2389 ret = ufshcd_wait_for_uic_cmd(hba, uic_cmd); in ufshcd_send_uic_cmd()
3797 struct uic_command uic_cmd = {0}; in ufshcd_dme_link_startup() local
3800 uic_cmd.command = UIC_CMD_DME_LINK_STARTUP; in ufshcd_dme_link_startup()
3802 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_link_startup()
3819 struct uic_command uic_cmd = {0}; in ufshcd_dme_reset() local
3822 uic_cmd.command = UIC_CMD_DME_RESET; in ufshcd_dme_reset()
3824 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_reset()
3858 struct uic_command uic_cmd = {0}; in ufshcd_dme_enable() local
3861 uic_cmd.command = UIC_CMD_DME_ENABLE; in ufshcd_dme_enable()
3863 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_enable()
3915 struct uic_command uic_cmd = {0}; in ufshcd_dme_set_attr() local
3924 uic_cmd.command = peer ? in ufshcd_dme_set_attr()
3926 uic_cmd.argument1 = attr_sel; in ufshcd_dme_set_attr()
3927 uic_cmd.argument2 = UIC_ARG_ATTR_TYPE(attr_set); in ufshcd_dme_set_attr()
3928 uic_cmd.argument3 = mib_val; in ufshcd_dme_set_attr()
3932 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_set_attr()
3959 struct uic_command uic_cmd = {0}; in ufshcd_dme_get_attr() local
3993 uic_cmd.command = peer ? in ufshcd_dme_get_attr()
3995 uic_cmd.argument1 = attr_sel; in ufshcd_dme_get_attr()
3999 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_get_attr()
4011 *mib_val = uic_cmd.argument3; in ufshcd_dme_get_attr()
4129 struct uic_command uic_cmd = {0}; in ufshcd_uic_change_pwr_mode() local
4142 uic_cmd.command = UIC_CMD_DME_SET; in ufshcd_uic_change_pwr_mode()
4143 uic_cmd.argument1 = UIC_ARG_MIB(PA_PWRMODE); in ufshcd_uic_change_pwr_mode()
4144 uic_cmd.argument3 = mode; in ufshcd_uic_change_pwr_mode()
4146 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_change_pwr_mode()
4186 struct uic_command uic_cmd = {0}; in ufshcd_uic_hibern8_enter() local
4191 uic_cmd.command = UIC_CMD_DME_HIBER_ENTER; in ufshcd_uic_hibern8_enter()
4192 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_hibern8_enter()
4209 struct uic_command uic_cmd = {0}; in ufshcd_uic_hibern8_exit() local
4215 uic_cmd.command = UIC_CMD_DME_HIBER_EXIT; in ufshcd_uic_hibern8_exit()
4216 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_hibern8_exit()