Adds new set_attribute component operations, which
allows to set some custom internal attributes.
Also adds COMP_ATTR_COPY_BLOCKING attribute and
implements it for host component.
Signed-off-by: Tomasz Lauda <email address hidden>
Adds implementation of blocking copy mode for Host DMA.
In blocking mode we are waiting for data to be actually
copied by DMA after incrementing pointer. Normally
there is no need to wait since next copy call should
read DMA pointers and calculate how many bytes can be
copied next, but there can be a situation, where we
want to copy as much data as possible as fast as possible
without any delayed scheduling. For this kind of usage
scenario blocking mode can be used without a need to
add any delay nor checking DMA pointers from external
components.
Signed-off-by: Tomasz Lauda <email address hidden>