There's a huge gap between the DVB specs and the current implementation. This were caused by years of changes that happened at the code but no updates to the specs were done. This patch series tries to reduce this gap. Basically, the headers at include/linux/dvb were included at the API. The Makefile scripting auto-generate references for structs, typedefs and ioctls. With this, it is now easy to identify when something is missing. After adding such logic, I've manually synchronized the specs with the header file and updated the data structures. The work is not complete yet: there are still several ioctl's not documented at the specs: Error: no ID for constraint linkend: AUDIO_BILINGUAL_CHANNEL_SELECT. Error: no ID for constraint linkend: CA_RESET. Error: no ID for constraint linkend: CA_GET_CAP. Error: no ID for constraint linkend: CA_GET_SLOT_INFO. Error: no ID for constraint linkend: CA_GET_DESCR_INFO. Error: no ID for constraint linkend: CA_GET_MSG. Error: no ID for constraint linkend: CA_SEND_MSG. Error: no ID for constraint linkend: CA_SET_DESCR. Error: no ID for constraint linkend: CA_SET_PID. Error: no ID for constraint linkend: DMX_GET_PES_PIDS. Error: no ID for constraint linkend: DMX_GET_CAPS. Error: no ID for constraint linkend: DMX_SET_SOURCE. Error: no ID for constraint linkend: DMX_ADD_PID. Error: no ID for constraint linkend: DMX_REMOVE_PID. Error: no ID for constraint linkend: NET_ADD_IF. Error: no ID for constraint linkend: NET_REMOVE_IF. Error: no ID for constraint linkend: NET_GET_IF. Error: no ID for constraint linkend: VIDEO_GET_SIZE. Error: no ID for constraint linkend: VIDEO_GET_FRAME_RATE. Error: no ID for constraint linkend: VIDEO_GET_PTS. Error: no ID for constraint linkend: VIDEO_GET_FRAME_COUNT. Error: no ID for constraint linkend: VIDEO_COMMAND. Error: no ID for constraint linkend: VIDEO_TRY_COMMAND. I also opted to not add the osd.h header into the DocBook, as it seemed odd on my eyes, and it is used only by one legacy hardware. While here, I noticed that one audio ioctl is not used anyware (AUDIO_GET_PTS). There is just the ioctl definition and that's it. I just removed this definition, as removing it won't cause any regression, as no in-kernel driver or dvb-core uses it. Btw, there are several ioctl's and correponding data structures that are used on just one or two old drivers. I think we should consider to deprecate those old stuff. Mauro Carvalho Chehab (13): [media] DocBook: Add the other DVB API header files [media] DocBook/audio.xml: match section ID's with the reference links [media] DocBook/audio.xml: synchronize attribute changes [media] DocBook: Document AUDIO_CONTINUE ioctl [media] dvb/audio.h: Remove definition for AUDIO_GET_PTS [media] Docbook/ca.xml: match section ID's with the reference links [media] DocBook/ca.xml: Describe structure ca_pid [media] DocBook/demux.xml: Fix section references with dmx.h.xml [media] DocBook/demux.xml: Add the remaining data structures to the API spec [media] DocBook/net.xml: Synchronize Network data structure [media] DocBook/Makefile: Remove osd.h header [media] DocBook/video.xml: Fix section references with video.h.xml [media] DocBook/video.xml: Document the remaining data structures Documentation/DocBook/media/Makefile | 81 ++++++++++- Documentation/DocBook/media/dvb/audio.xml | 176 +++++++++++++++-------- Documentation/DocBook/media/dvb/ca.xml | 106 ++++++++------ Documentation/DocBook/media/dvb/demux.xml | 206 +++++++++++++++----------- Documentation/DocBook/media/dvb/dvbapi.xml | 20 +++ Documentation/DocBook/media/dvb/intro.xml | 19 +++- Documentation/DocBook/media/dvb/net.xml | 17 ++ Documentation/DocBook/media/dvb/video.xml | 220 +++++++++++++++++----------- include/linux/dvb/audio.h | 14 +-- 9 files changed, 564 insertions(+), 295 deletions(-) -- 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