Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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>

authored by

Olivier Moysan and committed by
Jonathan Cameron
2530d7d4 0737158a

+26 -1
+24 -1
drivers/iio/industrialio-backend.c
··· 292 292 } 293 293 294 294 /** 295 + * iio_backend_disable - Backend disable 296 + * @back: Backend device 297 + */ 298 + void iio_backend_disable(struct iio_backend *back) 299 + { 300 + __iio_backend_disable(back); 301 + } 302 + EXPORT_SYMBOL_NS_GPL(iio_backend_disable, IIO_BACKEND); 303 + 304 + /** 305 + * iio_backend_enable - Backend enable 306 + * @back: Backend device 307 + * 308 + * RETURNS: 309 + * 0 on success, negative error number on failure. 310 + */ 311 + int iio_backend_enable(struct iio_backend *back) 312 + { 313 + return iio_backend_op_call(back, enable); 314 + } 315 + EXPORT_SYMBOL_NS_GPL(iio_backend_enable, IIO_BACKEND); 316 + 317 + /** 295 318 * devm_iio_backend_enable - Device managed backend enable 296 319 * @dev: Consumer device for the backend 297 320 * @back: Backend device ··· 326 303 { 327 304 int ret; 328 305 329 - ret = iio_backend_op_call(back, enable); 306 + ret = iio_backend_enable(back); 330 307 if (ret) 331 308 return ret; 332 309
+2
include/linux/iio/backend.h
··· 144 144 int iio_backend_chan_enable(struct iio_backend *back, unsigned int chan); 145 145 int iio_backend_chan_disable(struct iio_backend *back, unsigned int chan); 146 146 int devm_iio_backend_enable(struct device *dev, struct iio_backend *back); 147 + int iio_backend_enable(struct iio_backend *back); 148 + void iio_backend_disable(struct iio_backend *back); 147 149 int iio_backend_data_format_set(struct iio_backend *back, unsigned int chan, 148 150 const struct iio_backend_data_fmt *data); 149 151 int iio_backend_data_source_set(struct iio_backend *back, unsigned int chan,