[linux-dvb] problems and workaround when tuning to a channel with DD enabled

Wolfgang Rohdewald wolfgang at rohdewald.de
Wed Jun 8 12:27:43 CEST 2005


On Mittwoch 08 Juni 2005 11:56, Dr. Werner Fink wrote:
> > My idea would be: on entry of OSDSetBlock: if there is a current transfer,
> > wait for it to finish, call ReleaseBitmap and start all over.
> 
> This does not work.  The OSD commands are queued by the
> firmware upto the point where the data load is done.

so ReleaseBitmap triggers the data load from the queue to
the OSD image? Can I download a description of the firmware
API somewhere?


would this be better:

remember how much has been done: add a counter to struct av7110
which is incremented in relevant places like in LoadBitmap,
BlitBitmap, SetFont, FlushText, WriteText etc. On next try,
dry-run these places (i.e. do not pass anything to the firmware)
until the counter is reached. This mechanism could be used by
OSD_Setblock, OSD_Text and others.

in case of a result other than -ERESTARTSYS (success, timeout,
other errors) the counter would be reset to 0.

or could there be a simpler solution?

-- 
Wolfgang




More information about the linux-dvb mailing list