On Tue, Nov 21, 2023 at 4:17 AM Nuno Sa via B4 Relay <devnull+nuno.sa.analog.com@xxxxxxxxxx> wrote: > > Hi all, > > This is a Framework to handle complex IIO aggregate devices. > > The typical architecture is to have one device as the frontend device which > can be "linked" against one or multiple backend devices. All the IIO and > userspace interface is expected to be registers/managed by the frontend > device which will callback into the backends when needed (to get/set > some configuration that it does not directly control). > > The basic framework interface is pretty simple: > - Backends should register themselves with @devm_iio_backend_register() > - Frontend devices should get backends with @devm_iio_backend_get() > > (typical provider - consumer stuff) > The "typical provider - consumer stuff" seems pretty straight forward for finding and connecting two different devices, but the definition of what is a frontend and what is a backend seems a bit nebulous. It would be nice to seem some example devicetree to be able to get a better picture of how this will be used in practices (links to the the hardware docs for those examples would be nice too). In addition to the backend ops given in this series, what are some other expected ops that could be added in the future? Do we need some kind of spec to say "I need a backend with feature X and feature Y" or "I need a backend with compatible string" rather than just "I need a generic backend"?