diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2008-10-19 23:58:26 +0200 |
---|---|---|
committer | Hans Verkuil <hverkuil@xs4all.nl> | 2008-10-19 23:58:26 +0200 |
commit | cb8889206ccd1bba415637cab83e4ef38fd74b1e (patch) | |
tree | b8bae434d08940a6c4e3376432cd8bb0289c4046 /linux/drivers | |
parent | 5b2bce737fc14b7bb7d6234cf959fc84b4d8a4ef (diff) | |
download | mediapointer-dvb-s2-cb8889206ccd1bba415637cab83e4ef38fd74b1e.tar.gz mediapointer-dvb-s2-cb8889206ccd1bba415637cab83e4ef38fd74b1e.tar.bz2 |
ivtvfb: FB_BLANK_POWERDOWN turns off video output
From: Ian Armstrong <ian@iarmst.demon.co.uk>
When using FBIOBLANK, FB_BLANK_POWERDOWN will now switch off the video output.
Since some televisions turn themselves off after a while with no signal, this
is the closest we can get to power-saving.
Priority: normal
Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Diffstat (limited to 'linux/drivers')
-rw-r--r-- | linux/drivers/media/video/ivtv/ivtv-i2c.c | 1 | ||||
-rw-r--r-- | linux/drivers/media/video/ivtv/ivtvfb.c | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/linux/drivers/media/video/ivtv/ivtv-i2c.c b/linux/drivers/media/video/ivtv/ivtv-i2c.c index 6c37203db..c251ddb2f 100644 --- a/linux/drivers/media/video/ivtv/ivtv-i2c.c +++ b/linux/drivers/media/video/ivtv/ivtv-i2c.c @@ -760,6 +760,7 @@ int ivtv_saa7127(struct ivtv *itv, unsigned int cmd, void *arg) { return ivtv_call_i2c_client(itv, IVTV_SAA7127_I2C_ADDR, cmd, arg); } +EXPORT_SYMBOL(ivtv_saa7127); int ivtv_saa717x(struct ivtv *itv, unsigned int cmd, void *arg) { diff --git a/linux/drivers/media/video/ivtv/ivtvfb.c b/linux/drivers/media/video/ivtv/ivtvfb.c index 1ac3af3fc..5e3613d86 100644 --- a/linux/drivers/media/video/ivtv/ivtvfb.c +++ b/linux/drivers/media/video/ivtv/ivtvfb.c @@ -48,6 +48,7 @@ #endif #include "ivtv-driver.h" +#include "ivtv-i2c.h" #include "ivtv-udma.h" #include "ivtv-mailbox.h" @@ -903,11 +904,16 @@ static int ivtvfb_blank(int blank_mode, struct fb_info *info) switch (blank_mode) { case FB_BLANK_UNBLANK: ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 1); + ivtv_saa7127(itv, VIDIOC_STREAMON, NULL); break; case FB_BLANK_NORMAL: case FB_BLANK_HSYNC_SUSPEND: case FB_BLANK_VSYNC_SUSPEND: + ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 0); + ivtv_saa7127(itv, VIDIOC_STREAMON, NULL); + break; case FB_BLANK_POWERDOWN: + ivtv_saa7127(itv, VIDIOC_STREAMOFF, NULL); ivtv_vapi(itv, CX2341X_OSD_SET_STATE, 1, 0); break; } |