Hi, On Sat, Sep 12, 2009 at 12:57 PM, Hans Verkuil <hverkuil@xxxxxxxxx> wrote: > Rather than writing long mails on what a media controller is and what it can > do, I thought that I could just as well implement it. > > So in 4 hours I implemented pretty much all of the media controller > functionality. The main missing features are the ability to register non-v4l > device nodes so that they can be enumerated and setting controls private to > a sub-device. For that I should first finish the control handling framework. > > The datastructures and naming conventions needs to be cleaned up, and it > needs some tweaking, but I'd say this is pretty much the way I want it. > > The code is available here: > > http://linuxtv.org/hg/~hverkuil/v4l-dvb-mc/ > > It includes a v4l2-mc utility in v4l2-apps/util that has the > --show-topology option that enumerates all nodes and subdev. Currently any > registered subdevs and v4l device nodes are already automatically added. > Obviously, there are no links setup between them, that would require work > in the drivers. > > Total diffstat: > > b/linux/include/media/v4l2-mc.h | 54 +++++ > b/v4l2-apps/util/v4l2-mc.cpp | 325 ++++++++++++++++++++++++++++++++ > linux/drivers/media/video/v4l2-dev.c | 15 + > linux/drivers/media/video/v4l2-device.c | 265 +++++++++++++++++++++++++- > linux/include/linux/videodev2.h | 74 +++++++ > linux/include/media/v4l2-dev.h | 6 > linux/include/media/v4l2-device.h | 23 +- > linux/include/media/v4l2-subdev.h | 11 - > v4l2-apps/util/Makefile | 2 > 9 files changed, 762 insertions(+), 13 deletions(-) > > Ignoring the new utility that's just 435 lines of core code. > > Now try this with sysfs. Brrr. > please even more important when doing this push out a proper documentation for it, The s2api is a mess seen from the documentation people need to hack existing code in order to figure out how to use it it seems. v4l2/(incomplete)linuxdvb v3 API are still the best references to start with right now. Markus -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html