mirror of https://github.com/thesofproject/sof.git
ipc: reply: Add message replies to component creation.
Make sure we return an error or 0 after component creation. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
This commit is contained in:
parent
2cfaebe1f0
commit
2126e25089
|
@ -622,11 +622,15 @@ static int ipc_glb_tplg_comp_new(uint32_t header)
|
||||||
/* register component */
|
/* register component */
|
||||||
ret = ipc_comp_new(_ipc, comp);
|
ret = ipc_comp_new(_ipc, comp);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
trace_ipc_error("etc");
|
trace_ipc_error("cn1");
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* write component values to the outbox */
|
/* write component values to the outbox */
|
||||||
|
reply.rhdr.hdr.size = sizeof(reply);
|
||||||
|
reply.rhdr.hdr.cmd = header;
|
||||||
|
reply.rhdr.error = 0;
|
||||||
|
reply.offset = 0; /* TODO: set this up for mmaped components */
|
||||||
mailbox_outbox_write(0, &reply, sizeof(reply));
|
mailbox_outbox_write(0, &reply, sizeof(reply));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -634,19 +638,47 @@ static int ipc_glb_tplg_comp_new(uint32_t header)
|
||||||
static int ipc_glb_tplg_buffer_new(uint32_t header)
|
static int ipc_glb_tplg_buffer_new(uint32_t header)
|
||||||
{
|
{
|
||||||
struct sof_ipc_buffer *ipc_buffer = _ipc->comp_data;
|
struct sof_ipc_buffer *ipc_buffer = _ipc->comp_data;
|
||||||
|
struct sof_ipc_comp_reply reply;
|
||||||
|
int ret;
|
||||||
|
|
||||||
trace_ipc("Ibn");
|
trace_ipc("Ibn");
|
||||||
|
|
||||||
return ipc_buffer_new(_ipc, ipc_buffer);
|
ret = ipc_buffer_new(_ipc, ipc_buffer);
|
||||||
|
if (ret < 0) {
|
||||||
|
trace_ipc_error("bn1");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* write component values to the outbox */
|
||||||
|
reply.rhdr.hdr.size = sizeof(reply);
|
||||||
|
reply.rhdr.hdr.cmd = header;
|
||||||
|
reply.rhdr.error = 0;
|
||||||
|
reply.offset = 0; /* TODO: set this up for mmaped components */
|
||||||
|
mailbox_outbox_write(0, &reply, sizeof(reply));
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ipc_glb_tplg_pipe_new(uint32_t header)
|
static int ipc_glb_tplg_pipe_new(uint32_t header)
|
||||||
{
|
{
|
||||||
struct sof_ipc_pipe_new *ipc_pipeline = _ipc->comp_data;
|
struct sof_ipc_pipe_new *ipc_pipeline = _ipc->comp_data;
|
||||||
|
struct sof_ipc_comp_reply reply;
|
||||||
|
int ret;
|
||||||
|
|
||||||
trace_ipc("Ipn");
|
trace_ipc("Ipn");
|
||||||
|
|
||||||
return ipc_pipeline_new(_ipc, ipc_pipeline);
|
ret = ipc_pipeline_new(_ipc, ipc_pipeline);
|
||||||
|
if (ret < 0) {
|
||||||
|
trace_ipc_error("pn1");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* write component values to the outbox */
|
||||||
|
reply.rhdr.hdr.size = sizeof(reply);
|
||||||
|
reply.rhdr.hdr.cmd = header;
|
||||||
|
reply.rhdr.error = 0;
|
||||||
|
reply.offset = 0; /* TODO: set this up for mmaped components */
|
||||||
|
mailbox_outbox_write(0, &reply, sizeof(reply));
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ipc_glb_tplg_pipe_complete(uint32_t header)
|
static int ipc_glb_tplg_pipe_complete(uint32_t header)
|
||||||
|
|
Loading…
Reference in New Issue