summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/ivtv/ivtvfb.c
AgeCommit message (Collapse)Author
2007-11-05ivtv: Initial merge of video48 yuv handling into the IVTV_IOC_DMA_FRAME ↵Hans Verkuil
framework From: Ian Armstrong <ian@iarmst.demon.co.uk> Previously, all yuv data written to /dev/video48 had only basic support with no double buffering to avoid display tearing. With this patch, yuv frames written to video48 are now handled by the existing IVTV_IOC_DMA_FRAME framework. As such, the frames are hardware buffered to avoid tearing, and honour scaling mode & field order options. Unlike the proprietary IVTV_IOC_DMA_FRAME ioctl, all parameters are controlled by the V4L2 API. Due to mpeg & yuv output restrictions being different, their V4L2 output controls have been separated. To control the yuv output, the V4L2 calls must be done via video48. If the ivtvfb module is loaded, there will be one side effect to this merge. The yuv output window will be constrained to the visible framebuffer area. In the event that a virtual framebuffer size is being used, the limit to the output size will be the virtual dimensions, but only the portion that falls within the currently visible area of the framebuffer will be shown. Like the IVTV_IOC_DMA_FRAME ioctl, the supplied frames must be padded to 720 pixels wide. However the height must only be padded up the nearest multiple of 32. This would mean an image of 102 lines must be padded to 128. As long as the true source image size is given, the padding will not be visible in the final output. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-17ivtvfb: Removal of the 'osd_compat' module option.Hans Verkuil
From: Ian Armstrong <ian@iarmst.demon.co.uk> Due to changes in the core ivtv driver as of release 1.0, the osd_compat module option has been rendered obsolete. This patch removes the option and all code associated with it. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-14ivtvfb: check return value of unregister_framebuffer.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Prevent unloading the framebuffer if it is still in use. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-12ivtvfb: screen mode change sometimes goes wrong.Hans Verkuil
From: Ian Armstrong <ian@iarmst.demon.co.uk> This patch partially reverts a previous change that caused the CX2341X_OSD_SET_PIXEL_FORMAT firmware calls to be skipped when the pixel format of the framebuffer wasn't altered by FBIOPUT_VSCREENINFO. Unfortunately, another firmware call on the PVR350 sometimes scrambles the display when trying to adjust the framebuffer settings. This patch re-enables the CX2341X_OSD_SET_PIXEL_FORMAT calls to try and prevent this from occurring. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-08-28ivtvfb: fix an obvious bug in ivtvfb_release_buffers()Hans Verkuil
From: Adrian Bunk <bunk@kernel.org> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-08-28ivtvfb: replace ivtv_fb prefix to ivtvfb, change warning to info message.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-08-26ivtvfb: rename some missed ivtv-fb references to ivtvfb.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-08-26ivtvfb: renamed ivtv-fb to ivtvfb, move header to include/linuxHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The convention for framebuffer devices is to call them xxxfb, not xxx-fb. Conform to this. Also move the ivtvfb.h header to include/linux: it is a public header. The FBIO_WAITFORVSYNC ioctl is now also defined in the ivtvfb.h header, no more need to include matroxfb.h for just this ioctl. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>