Lines Matching refs:scmd
272 int smu_queue_simple(struct smu_simple_cmd *scmd, u8 command,
277 struct smu_cmd *cmd = &scmd->cmd;
281 if (data_len > sizeof(scmd->buffer))
284 memset(scmd, 0, sizeof(*scmd));
287 cmd->data_buf = scmd->buffer;
288 cmd->reply_len = sizeof(scmd->buffer);
289 cmd->reply_buf = scmd->buffer;
295 scmd->buffer[i] = (u8)va_arg(list, int);
712 list_add_tail(&cmd->scmd.link, &smu->cmd_list);
733 cmd->scmd.reply_len = sizeof(cmd->pdata);
734 smu_queue_cmd(&cmd->scmd);
738 static void smu_i2c_low_completion(struct smu_cmd *scmd, void *misc)
744 cmd->stage, scmd->status, cmd->pdata[0], scmd->reply_len);
747 if (scmd->status < 0)
781 scmd->reply_buf = cmd->pdata;
782 scmd->reply_len = sizeof(cmd->pdata);
783 scmd->data_buf = cmd->pdata;
784 scmd->data_len = 1;
788 smu_queue_cmd(scmd);
799 /* Fill most fields of scmd */
800 cmd->scmd.cmd = SMU_CMD_I2C_COMMAND;
801 cmd->scmd.done = smu_i2c_low_completion;
802 cmd->scmd.misc = cmd;
803 cmd->scmd.reply_buf = cmd->pdata;
804 cmd->scmd.reply_len = sizeof(cmd->pdata);
805 cmd->scmd.data_buf = (u8 *)(char *)&cmd->info;
806 cmd->scmd.status = 1;
837 cmd->scmd.data_len = 9;
841 cmd->scmd.data_len = 9 + cmd->info.datalen;
857 list_add_tail(&cmd->scmd.link, &smu->cmd_list);