Lines Matching refs:cmd
200 static TEE_Result versal_mbox_write_req(struct versal_ipi_cmd *cmd) in versal_mbox_write_req() argument
205 if (!cmd->ibuf[i].mem.buf) in versal_mbox_write_req()
208 if (!IS_ALIGNED((uintptr_t)cmd->ibuf[i].mem.buf, in versal_mbox_write_req()
211 cmd->ibuf[i].mem.buf); in versal_mbox_write_req()
215 if (!IS_ALIGNED(cmd->ibuf[i].mem.alloc_len, CACHELINE_LEN)) { in versal_mbox_write_req()
217 i, cmd->ibuf[i].mem.alloc_len); in versal_mbox_write_req()
221 cache_operation(TEE_CACHEFLUSH, cmd->ibuf[i].mem.buf, in versal_mbox_write_req()
222 cmd->ibuf[i].mem.alloc_len); in versal_mbox_write_req()
225 memcpy(ipi.req, cmd->data, sizeof(cmd->data)); in versal_mbox_write_req()
228 cache_operation(TEE_CACHEFLUSH, ipi.req, sizeof(cmd->data)); in versal_mbox_write_req()
233 static TEE_Result versal_mbox_read_rsp(struct versal_ipi_cmd *cmd, in versal_mbox_read_rsp() argument
251 if (!cmd->ibuf[i].mem.buf) in versal_mbox_read_rsp()
254 if (!IS_ALIGNED((uintptr_t)cmd->ibuf[i].mem.buf, in versal_mbox_read_rsp()
257 i, cmd->ibuf[i].mem.buf); in versal_mbox_read_rsp()
261 if (!IS_ALIGNED(cmd->ibuf[i].mem.alloc_len, CACHELINE_LEN)) { in versal_mbox_read_rsp()
263 i, cmd->ibuf[i].mem.alloc_len); in versal_mbox_read_rsp()
268 cmd->ibuf[i].mem.buf, in versal_mbox_read_rsp()
269 cmd->ibuf[i].mem.alloc_len); in versal_mbox_read_rsp()
293 TEE_Result versal_mbox_notify(struct versal_ipi_cmd *cmd, in versal_mbox_notify() argument
301 ret = versal_mbox_write_req(cmd); in versal_mbox_notify()
308 versal_mbox_call_trace(cmd->data[0]); in versal_mbox_notify()
316 ret = versal_mbox_read_rsp(cmd, rsp, &remote_status); in versal_mbox_notify()