summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux/drivers/media/video/tda8290.c23
-rw-r--r--linux/include/media/tuner.h3
-rw-r--r--v4l/ChangeLog8
3 files changed, 25 insertions, 9 deletions
diff --git a/linux/drivers/media/video/tda8290.c b/linux/drivers/media/video/tda8290.c
index 6c36a75d3..5205b1f5e 100644
--- a/linux/drivers/media/video/tda8290.c
+++ b/linux/drivers/media/video/tda8290.c
@@ -1,5 +1,5 @@
/*
- * $Id: tda8290.c,v 1.18 2005/09/10 08:21:57 mchehab Exp $
+ * $Id: tda8290.c,v 1.19 2005/09/29 18:20:25 nsh Exp $
*
* i2c tv tuner chip device driver
* controls the philips tda8290+75 tuner chip combo.
@@ -183,18 +183,25 @@ static void set_audio(struct tuner *t)
{
t->i2c_easy_mode[0] = 0x01;
- if (t->std & V4L2_STD_MN)
+ if (t->std & V4L2_STD_MN) {
+ t->sgIF = 736;
t->i2c_easy_mode[1] = 0x01;
- else if (t->std & V4L2_STD_B)
+ } else if (t->std & V4L2_STD_B) {
+ t->sgIF = 864;
t->i2c_easy_mode[1] = 0x02;
- else if (t->std & V4L2_STD_GH)
+ } else if (t->std & V4L2_STD_GH) {
+ t->sgIF = 992;
t->i2c_easy_mode[1] = 0x04;
- else if (t->std & V4L2_STD_PAL_I)
+ } else if (t->std & V4L2_STD_PAL_I) {
+ t->sgIF = 992;
t->i2c_easy_mode[1] = 0x08;
- else if (t->std & V4L2_STD_DK)
+ } else if (t->std & V4L2_STD_DK) {
+ t->sgIF = 992;
t->i2c_easy_mode[1] = 0x10;
- else if (t->std & V4L2_STD_SECAM_L)
+ } else if (t->std & V4L2_STD_SECAM_L) {
+ t->sgIF = 992;
t->i2c_easy_mode[1] = 0x20;
+ }
}
static void set_tv_freq(struct i2c_client *c, unsigned int freq)
@@ -202,7 +209,7 @@ static void set_tv_freq(struct i2c_client *c, unsigned int freq)
struct tuner *t = i2c_get_clientdata(c);
set_audio(t);
- set_frequency(t, 864, freq);
+ set_frequency(t, t->sgIF, freq);
tda8290_tune(c);
}
diff --git a/linux/include/media/tuner.h b/linux/include/media/tuner.h
index 57f275c07..abe7a8817 100644
--- a/linux/include/media/tuner.h
+++ b/linux/include/media/tuner.h
@@ -1,4 +1,4 @@
-/* $Id: tuner.h,v 1.53 2005/09/28 19:28:51 nsh Exp $
+/* $Id: tuner.h,v 1.54 2005/09/29 18:20:25 nsh Exp $
*
tuner.h - definition for different tuners
@@ -192,6 +192,7 @@ struct tuner {
/* used by tda8290 */
unsigned char i2c_easy_mode[2];
unsigned char i2c_set_freq[8];
+ unsigned int sgIF;
/* function ptrs */
void (*tv_freq)(struct i2c_client *c, unsigned int freq);
diff --git a/v4l/ChangeLog b/v4l/ChangeLog
index a9cbc4bb1..1b48cb29f 100644
--- a/v4l/ChangeLog
+++ b/v4l/ChangeLog
@@ -1,3 +1,11 @@
+2005-09-29 18:20 nshmyrev
+
+ * tda8290.c: (set_audio), (set_tv_freq):
+ * tuner.h:
+ - Set IF of tda8275 according to tv norm.
+
+ Signed-off-by: Nickolay V. Shmyrev <nshmyrev@yandex.ru>
+
2005-09-29 13:59 mchehab
* doc/CARDLIST.saa7134: