summaryrefslogtreecommitdiff
path: root/linux
AgeCommit message (Collapse)Author
2009-03-13mr97310a: don't discard frame headers on stream outputMauro Carvalho Chehab
From: Theodore Kilgore <kilgota@auburn.edu> Fix a bug where all frame headers were being discarded, instead of being part of the stream output, on MR97310A cameras. The frame headers contain information which may be useful in processing the video output and therefore should be kept and not discarded. A corresponding patch to the decompression algorithm in libv4lconvert/mr97310a.c corrects the change in frame offset. Priority: high Signed-off-by: Theodore Kilgore <kilgota@auburn.edu> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-13mt9t031 bugfixGuennadi Liakhovetski
From: Philippe Rétornaz <philippe.retornaz@epfl.ch> - The video device is not allocated when mt9t031_init() is called, don't use it in debug printk. - The clock polarity is inverted in mt9t031_set_bus_param(), use the correct one. Signed-off-by: Philippe Rétornaz <philippe.retornaz@epfl.ch> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/mt9t031.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
2009-03-13soc-camera: remove now unused gpio member of struct soc_camera_linkGuennadi Liakhovetski
From: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- arch/arm/mach-pxa/pcm990-baseboard.c | 1 - include/media/soc_camera.h | 2 -- 2 files changed, 0 insertions(+), 3 deletions(-)
2009-03-13mt9v022: allow setting of bus width from board codeGuennadi Liakhovetski
From: Sascha Hauer <s.hauer@pengutronix.de> This patch removes the phytec specific setting of the bus width and switches to the more generic query_bus_param/set_bus_param hooks Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/Kconfig | 7 -- drivers/media/video/mt9v022.c | 141 ++++++++++++----------------------------- 2 files changed, 42 insertions(+), 106 deletions(-)
2009-03-13mt9m001: allow setting of bus width from board codeGuennadi Liakhovetski
From: Sascha Hauer <s.hauer@pengutronix.de> This patch removes the phytec specific setting of the bus width and switches to the more generic query_bus_param/set_bus_param hooks Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/Kconfig | 7 -- drivers/media/video/mt9m001.c | 143 +++++++++++----------------------------- 2 files changed, 40 insertions(+), 110 deletions(-)
2009-03-13pcm990 baseboard: add camera bus width switch settingGuennadi Liakhovetski
From: Sascha Hauer <s.hauer@pengutronix.de> Some Phytec cameras have a I2C GPIO expander which allows it to switch between different sensor bus widths. This was previously handled in the camera driver. Since handling of this switch varies on several boards the cameras are used on, the board support seems a better place to handle the switch Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- arch/arm/mach-pxa/pcm990-baseboard.c | 54 ++++++++++++++++++++++++++++----- 1 files changed, 45 insertions(+), 9 deletions(-)
2009-03-13soc-camera: add board hook to specify the buswidth for camera sensorsGuennadi Liakhovetski
From: Sascha Hauer <s.hauer@pengutronix.de> Camera sensors have a native bus width say support, but on some boards not all sensor data lines are connected to the image interface and thus support a different bus width than the sensors native one. Some boards even have a bus driver which dynamically switches between different bus widths with a GPIO. This patch adds a hook which board code can use to support different bus widths. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- include/media/soc_camera.h | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
2009-03-13video: use videobuf_waiton() in sh_mobile_ceu free_buffer()Guennadi Liakhovetski
From: Magnus Damm <damm@igel.co.jp> Make sure videobuf_waiton() is used before freeing a buffer. Without this fix we may return the buffer to the allocator before the bus mastering operation is finished. Reported-by: Matthieu CASTET <matthieu.castet@parrot.com> Tested-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/sh_mobile_ceu_camera.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
2009-03-13ov772x: use soft sleep mode in stop_captureGuennadi Liakhovetski
From: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/ov772x.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
2009-03-13soc-camera: configure drivers with a default format at probe timeGuennadi Liakhovetski
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Currently soc-camera doesn't set up any image format without an explicit S_FMT. According to the API this should be supported, for example, capture-example.c from v4l2-apps by default doesn't issue an S_FMT. This patch moves negotiating of available host-camera format translations to probe() time, and restores the state from the last close() on the next open(). This is needed for some drivers, which power down or reset hardware after the last user closes the interface. This patch also has a nice side-effect of avoiding multiple allocation anf freeing of format translation tables. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/soc_camera.c | 39 ++++++++++++++++++++++--------------- include/media/soc_camera.h | 1 + 2 files changed, 24 insertions(+), 16 deletions(-)
2009-03-13sh-mobile-ceu-camera: set field to the value, configured at open()Guennadi Liakhovetski
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de> For the case, that we have to capture with a default format, i.e., when the user doesn't call S_FMT, we have to use the field value according to the default, configured at open() time. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/sh_mobile_ceu_camera.c | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-)
2009-03-13soc-camera: configure drivers with a default format on openGuennadi Liakhovetski
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Currently soc-camera doesn't set up any image format without an explicit S_FMT. It seems this should be supported, since, for example, capture-example.c from v4l2-apps by default doesn't issue an S_FMT. This patch configures a default image format on open(). Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/soc_camera.c | 100 ++++++++++++++++++++++++++------------ 1 files changed, 68 insertions(+), 32 deletions(-)
2009-03-13soc-camera: separate S_FMT and S_CROP operationsGuennadi Liakhovetski
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de> As host and camera drivers become more complex, differences between S_FMT and S_CROP functionality grow, this patch separates them. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/mt9m001.c | 19 +++- drivers/media/video/mt9m111.c | 56 +++++++--- drivers/media/video/mt9t031.c | 84 ++++++++++------ drivers/media/video/mt9v022.c | 62 +++++++---- drivers/media/video/mx3_camera.c | 157 +++++++++++++++++----------- drivers/media/video/ov772x.c | 31 +++++- drivers/media/video/pxa_camera.c | 67 +++++++++--- drivers/media/video/sh_mobile_ceu_camera.c | 17 ++- drivers/media/video/soc_camera.c | 20 ++-- drivers/media/video/soc_camera_platform.c | 9 ++- drivers/media/video/tw9910.c | 45 +++++--- include/media/soc_camera.h | 6 +- 12 files changed, 381 insertions(+), 192 deletions(-)
2009-03-12merge: http://linuxtv.org/hg/~mkrufky/lgdt3305Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-12v4l2-common: add missing i2c_unregister_device.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> If the i2c sub-device cannot be found, then we must unregister the i2c_client. Otherwise this will prevent a possible probe for a different device on that same address. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-12cx231xx: fix compile warningHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-12doc: improve the v4l2-framework documentation.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Emphasize the need to call i2c_set_adapdata and clarify the use of the chipid in v4l2_i2c_new_(probed_)device(). Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-12merge: http://jusst.de/hg/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-12lgdt3305: avoid OOPS in error path of lgdt3305_attachMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Setting state->frontend.demodulator_priv to NULL in the event of a kzalloc error will result in an OOPS. Just remove that line. Thanks to Matthias Schwarzott for pointing this out. Priority: normal Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Cc: Matthias Schwarzott <zzam@gentoo.org>
2009-03-12merge: http://linuxtv.org/hg/~anttip/zl10353/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-12merge: http://linuxtv.org/hg/~mkrufky/lgdt3305Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-12merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-03-11au0828: make sure v4l2_device name is uniqueDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make sure newly created v4l2 devices have a unique name, modeling the logic after the cx18 driver. Thanks to Andy Walls <awalls@radix.net> for pointing out the issue. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-11ivtv: bump versionHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11fired-avc: fix print_hex_dump warning on 2.6.22.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11ir-kbd-i2c: fix compat for old kernels.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> compat.h was included too late. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11fired-avc: fix printk formatting warning.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> size_t should be printed with %zu. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11radio-terratec: remove linux/delay.h which hadn't been used.Hans Verkuil
From: Alexey Klimov <klimov.linux@gmail.com> Priority: normal Signed-off-by: Alexey Klimov <klimov.linux@gmail.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11omap24xxcam: don't set vfl_type.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The vfl_type field is set by the core, so anything you fill in here will be overwritten. And it will be set to a VFL_TYPE_ value, not a VID_TYPE_ value which is an obsolete V4L1 type. Since these V4L1 types have been made unavailable for V4L2 drivers, this driver stopped compiling. In this case the fix is just removing this assignment. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> CC: Sakari Ailus <sakari.ailus@nokia.com>
2009-03-11radio: remove uaccess includeHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> This include isn't needed and so can be removed. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-03-11au0828: Convert to use v4l2_device/subdev frameworkDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Convert over to using the new subdev framework for the au0828 bridge. This includes using the new i2c probing mechanism. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-11au0828: fix panic on disconnect if analog initialization failedDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> If the analog initialization failed to create the video device, we never actually add the entry to the au0828_devlist. Therefore a panic occurs when unregistering the analog subsystem. Make it so we only remove the entry from the list if we added it to the list in the first place. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: properly handle non-existent analog inputsDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> It is not valid to look for dev->board.input == NULL to detect an undefined analog configuration section, since it is a member of the struct and not a pointer (hence it will *always* be non-NULL). Do the check based on whether the first input is actually a valid input type instead. Thanks to Michael Krufky <mkrufky@linuxtv.org> for providing sample hardware of various configurations to test with. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: properly handle missing analog USB endpointDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Move the setup of the analog isoc handler into au0828-video.c, so it does not occur if there is not an .input section defined for the board. Also fixes a case where if there is an input section but the board does not actually have analog support, the digital support will continue to work as expected. Thanks to Michael Krufky <mkrufky@linuxtv.org> for providing sample hardware of various configurations to test with. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: make g_chip_ident call work properlyDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make the g_chip_ident call work for the au0828/au8522. Discovered when testing with the v4l2_compliance tool Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: make register debug lines easier to readDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make it a little easier to read the debug messages for register read/write operations Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: fix i2c enumeration bugDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> There was a bug where enumerating the i2c for devices would result in false positives. The root of the issue was the scanning was using SMBUS_QUICK messages, which are zero length write requests (which our i2c adapter implementation didn't handle). Because we never strobed any bytes onto the bus, the status register would still contain the value from the previous request. Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: disable VBI code since it doesn't yet workDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Since the VBI support is not yet working for the au0828, don't advertise the capability or create the /dev/vbi device. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: advertise only NTSC-M (as opposed to all NTSC standards)Devin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> We don't now how to make any variant of NTSC work other than NTSC-M, so don't advertise that we support the other variants. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-11tveeprom: add the xc5000 tuner to the tveeprom definitionDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Prior to now, we never relied on the Hauppauge tveeprom to identify which tuner is associated with the board. Now that the HVR-950q determines what the tuner is based on the eeprom, set the tuner ID appropriately. Thanks to Michael Krufky <mkrufky@linuxtv.org> for providing information on the tveeprom organization. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: Rework the way the analog video binding occursDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Rework the way boards are managed so that we can change the board description based on the Hauppauge eeprom (modeled after cx88-cards.c). Also, make sure that we don't load the analog stack if there are no analog inputs defined in the board profile. Thanks to Michael Krufky <mkrufky@linuxtv.org> for providing information on the various ways different Hauppauge boards can be configured. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: add mutex protecting use of hybrid stateDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Access using the hybrid state framework requires the list to be protected by a mutex. Thanks to Michael Krufky <mkrufky@linuxtv.org> for reporting this during a code review. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: add analog profile for the HVR-850Devin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add the analog parameters to the device profile for the HVR-850 Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au0828: workaround a bug in the au0828 i2c handlingDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> There is an issue related to the i2c clock for addressing the xc5000. The au0828 chip does not support clock stretching, which the xc5000 makes use of. This results in cases where we silently get back garbage in i2c read operations. To work around this issue until we slow down the i2c clock when talking with that specific device. This was not an issue before we had analog support because we never needed to enumerate the i2c bus, and digital tuning never actually needed to perform read operations against the xc5000. Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2009-03-11au0828: add support for analog functionality in bridgeDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add support for the analog functionality found in the au0828 bridge Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: add support for analog side of demodulatorDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add support for the analog functionality in the au8522 analog/digital demodulator Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: make use of hybrid framework so analog/digital demod can share stateDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Make use of the hybrid tuner framework so the analog and digital parts of the au8522 demodulator can make use of the same shared state. Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: power down the digital demod when not in useDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> When the au8522 is idle, put the chip into a low power mode (reduces power consumption from 450ma to 346ma) Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: fix register read/write high bitsDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> For the i2c messages to read and write registers, the two high order bits of the first byte dictates whether it is a read or a write operation. Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2009-03-11au8522: move shared state and common functions into a separate header filesDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Move the au8522 state structure, as well as exposing functions needed by the analog side of the demodulator into a common header file. Thanks to Michael Krufky <mkrufky@linuxtv.org> and Steven Toth <stoth@linuxtv.org> for providing sample hardware, engineering level support, and testing. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>