mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-13 09:40:36 -04:00
iio: add enable and disable services to iio backend framework
Add iio_backend_disable() and iio_backend_enable() APIs to allow IIO backend consumer to request backend disabling and enabling. Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com> Reviewed-by: Nuno Sa <nuno.sa@analog.com> Link: https://patch.msgid.link/20240730084640.1307938-3-olivier.moysan@foss.st.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
committed by
Jonathan Cameron
parent
0737158aab
commit
2530d7d44c
@@ -291,6 +291,29 @@ static void __iio_backend_disable(void *back)
|
||||
iio_backend_void_op_call(back, disable);
|
||||
}
|
||||
|
||||
/**
|
||||
* iio_backend_disable - Backend disable
|
||||
* @back: Backend device
|
||||
*/
|
||||
void iio_backend_disable(struct iio_backend *back)
|
||||
{
|
||||
__iio_backend_disable(back);
|
||||
}
|
||||
EXPORT_SYMBOL_NS_GPL(iio_backend_disable, IIO_BACKEND);
|
||||
|
||||
/**
|
||||
* iio_backend_enable - Backend enable
|
||||
* @back: Backend device
|
||||
*
|
||||
* RETURNS:
|
||||
* 0 on success, negative error number on failure.
|
||||
*/
|
||||
int iio_backend_enable(struct iio_backend *back)
|
||||
{
|
||||
return iio_backend_op_call(back, enable);
|
||||
}
|
||||
EXPORT_SYMBOL_NS_GPL(iio_backend_enable, IIO_BACKEND);
|
||||
|
||||
/**
|
||||
* devm_iio_backend_enable - Device managed backend enable
|
||||
* @dev: Consumer device for the backend
|
||||
@@ -303,7 +326,7 @@ int devm_iio_backend_enable(struct device *dev, struct iio_backend *back)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = iio_backend_op_call(back, enable);
|
||||
ret = iio_backend_enable(back);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
||||
@@ -144,6 +144,8 @@ struct iio_backend_info {
|
||||
int iio_backend_chan_enable(struct iio_backend *back, unsigned int chan);
|
||||
int iio_backend_chan_disable(struct iio_backend *back, unsigned int chan);
|
||||
int devm_iio_backend_enable(struct device *dev, struct iio_backend *back);
|
||||
int iio_backend_enable(struct iio_backend *back);
|
||||
void iio_backend_disable(struct iio_backend *back);
|
||||
int iio_backend_data_format_set(struct iio_backend *back, unsigned int chan,
|
||||
const struct iio_backend_data_fmt *data);
|
||||
int iio_backend_data_source_set(struct iio_backend *back, unsigned int chan,
|
||||
|
||||
Reference in New Issue
Block a user