buffer_from_host
struct mmal_msg_buffer_from_host buffer_from_host;
ret = buffer_from_host(instance, port, mmalbuf);
ret = buffer_from_host(instance, port, buffer);
rd_len = msg->u.buffer_from_host.buffer_header.length;
msg_context->u.bulk.dts = msg->u.buffer_from_host.buffer_header.dts;
msg_context->u.bulk.pts = msg->u.buffer_from_host.buffer_header.pts;
msg->u.buffer_from_host.short_data,
msg->u.buffer_from_host.payload_in_message);
msg->u.buffer_from_host.payload_in_message;
m.u.buffer_from_host.drvbuf.magic = MMAL_MAGIC;
m.u.buffer_from_host.drvbuf.component_handle = port->component->handle;
m.u.buffer_from_host.drvbuf.port_handle = port->handle;
m.u.buffer_from_host.drvbuf.client_context = msg_context->handle;
m.u.buffer_from_host.buffer_header.cmd = 0;
m.u.buffer_from_host.buffer_header.data =
m.u.buffer_from_host.buffer_header.alloc_size = buf->buffer_size;
m.u.buffer_from_host.buffer_header.length = 0; /* nothing used yet */
m.u.buffer_from_host.buffer_header.offset = 0; /* no offset */
m.u.buffer_from_host.buffer_header.flags = 0; /* no flags */
m.u.buffer_from_host.buffer_header.pts = MMAL_TIME_UNKNOWN;
m.u.buffer_from_host.buffer_header.dts = MMAL_TIME_UNKNOWN;
memset(&m.u.buffer_from_host.buffer_header_type_specific, 0,
sizeof(m.u.buffer_from_host.buffer_header_type_specific));
m.u.buffer_from_host.payload_in_message = 0;
sizeof(m.u.buffer_from_host));
if (msg->u.buffer_from_host.drvbuf.magic == MMAL_MAGIC) {
handle = msg->u.buffer_from_host.drvbuf.client_context;
msg->u.buffer_from_host.buffer_header.flags;
} else if (msg->u.buffer_from_host.buffer_header.length == 0) {
if (msg->u.buffer_from_host.buffer_header.flags &
} else if (msg->u.buffer_from_host.payload_in_message == 0) {
} else if (msg->u.buffer_from_host.payload_in_message <=
msg->u.buffer_from_host.payload_in_message;