devm_iio_device_alloc()¶
Purpose¶
Allocates an iio_dev object with device-managed lifetime.
Header¶
Prototype¶
Parameters¶
dev: parent device used for managed cleanup.sizeof_priv: size of the private driver data placed after theiio_devobject.
Return Value¶
- Success: pointer to
struct iio_dev. - Failure:
NULL.
Minimal Example¶
indio_dev = devm_iio_device_alloc(dev, sizeof(*priv));
if (!indio_dev)
return -ENOMEM;
priv = iio_priv(indio_dev);
Common Pitfalls¶
- Use
iio_priv()to access the private driver data. - Do not manually free the returned object when using the
devm_variant. - Initialize
indio_dev->info,indio_dev->channels,indio_dev->num_channels, andindio_dev->modesbefore registration.