mirror of https://github.com/thesofproject/sof.git
comp: implement component_set_period_frames() function
This patch implements generic component_set_period_frames() function. It can be utilized in order to set "frames" parameter in comp_dev structure. Signed-off-by: Bartosz Kokoszko <bartoszx.kokoszko@linux.intel.com>
This commit is contained in:
parent
5e3edf8cd1
commit
51e793ea0a
|
@ -668,6 +668,21 @@ static inline int comp_get_endpoint_type(struct comp_dev *dev)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* \brief Set component period frames */
|
||||||
|
static inline void component_set_period_frames(struct comp_dev *current,
|
||||||
|
uint32_t rate)
|
||||||
|
{
|
||||||
|
int period;
|
||||||
|
|
||||||
|
period = current->pipeline->ipc_pipe.period;
|
||||||
|
|
||||||
|
/* Samplerate is in Hz and period in microseconds.
|
||||||
|
* As we don't have floats use scale divider 1000000.
|
||||||
|
* Also integer round up the result.
|
||||||
|
*/
|
||||||
|
current->frames = ceil_divide(rate * period, 1000000);
|
||||||
|
}
|
||||||
|
|
||||||
/** @}*/
|
/** @}*/
|
||||||
|
|
||||||
/** \name XRUN handling.
|
/** \name XRUN handling.
|
||||||
|
|
Loading…
Reference in New Issue