Lines Matching refs:uic_cmd
2466 ufshcd_dispatch_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_dispatch_uic_cmd() argument
2472 hba->active_uic_cmd = uic_cmd; in ufshcd_dispatch_uic_cmd()
2475 ufshcd_writel(hba, uic_cmd->argument1, REG_UIC_COMMAND_ARG_1); in ufshcd_dispatch_uic_cmd()
2476 ufshcd_writel(hba, uic_cmd->argument2, REG_UIC_COMMAND_ARG_2); in ufshcd_dispatch_uic_cmd()
2477 ufshcd_writel(hba, uic_cmd->argument3, REG_UIC_COMMAND_ARG_3); in ufshcd_dispatch_uic_cmd()
2479 ufshcd_add_uic_command_trace(hba, uic_cmd, UFS_CMD_SEND); in ufshcd_dispatch_uic_cmd()
2482 ufshcd_writel(hba, uic_cmd->command & COMMAND_OPCODE_MASK, in ufshcd_dispatch_uic_cmd()
2494 ufshcd_wait_for_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_wait_for_uic_cmd() argument
2501 if (wait_for_completion_timeout(&uic_cmd->done, in ufshcd_wait_for_uic_cmd()
2503 ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; in ufshcd_wait_for_uic_cmd()
2508 uic_cmd->command, uic_cmd->argument3); in ufshcd_wait_for_uic_cmd()
2510 if (!uic_cmd->cmd_active) { in ufshcd_wait_for_uic_cmd()
2513 ret = uic_cmd->argument2 & MASK_UIC_COMMAND_RESULT; in ufshcd_wait_for_uic_cmd()
2532 __ufshcd_send_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in __ufshcd_send_uic_cmd() argument
2542 init_completion(&uic_cmd->done); in __ufshcd_send_uic_cmd()
2544 uic_cmd->cmd_active = 1; in __ufshcd_send_uic_cmd()
2545 ufshcd_dispatch_uic_cmd(hba, uic_cmd); in __ufshcd_send_uic_cmd()
2557 int ufshcd_send_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_send_uic_cmd() argument
2568 ret = __ufshcd_send_uic_cmd(hba, uic_cmd); in ufshcd_send_uic_cmd()
2570 ret = ufshcd_wait_for_uic_cmd(hba, uic_cmd); in ufshcd_send_uic_cmd()
3997 struct uic_command uic_cmd = { in ufshcd_dme_link_startup() local
4002 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_link_startup()
4019 struct uic_command uic_cmd = { in ufshcd_dme_reset() local
4024 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_reset()
4058 struct uic_command uic_cmd = { in ufshcd_dme_enable() local
4063 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_enable()
4120 struct uic_command uic_cmd = { in ufshcd_dme_set_attr() local
4136 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_set_attr()
4163 struct uic_command uic_cmd = { in ufshcd_dme_get_attr() local
4202 ret = ufshcd_send_uic_cmd(hba, &uic_cmd); in ufshcd_dme_get_attr()
4214 *mib_val = uic_cmd.argument3; in ufshcd_dme_get_attr()
4329 int ufshcd_send_bsg_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd) in ufshcd_send_bsg_uic_cmd() argument
4338 if (uic_cmd->argument1 == UIC_ARG_MIB(PA_PWRMODE) && in ufshcd_send_bsg_uic_cmd()
4339 uic_cmd->command == UIC_CMD_DME_SET) { in ufshcd_send_bsg_uic_cmd()
4340 ret = ufshcd_uic_pwr_ctrl(hba, uic_cmd); in ufshcd_send_bsg_uic_cmd()
4347 ret = __ufshcd_send_uic_cmd(hba, uic_cmd); in ufshcd_send_bsg_uic_cmd()
4349 ret = ufshcd_wait_for_uic_cmd(hba, uic_cmd); in ufshcd_send_bsg_uic_cmd()
4368 struct uic_command uic_cmd = { in ufshcd_uic_change_pwr_mode() local
4386 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_change_pwr_mode()
4425 struct uic_command uic_cmd = { in ufshcd_uic_hibern8_enter() local
4433 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_hibern8_enter()
4450 struct uic_command uic_cmd = { in ufshcd_uic_hibern8_exit() local
4458 ret = ufshcd_uic_pwr_ctrl(hba, &uic_cmd); in ufshcd_uic_hibern8_exit()