public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: "Alina Friedrichsen" <x-alina@gmx.net>
To: linux-media@vger.kernel.org
Cc: rglowery@exemail.com.au
Subject: [PATCH v2] tuner_xc2028: Allow selection of the frequency adjustment code for XC3028
Date: Fri, 22 Jul 2011 18:39:40 +0200	[thread overview]
Message-ID: <20110722163940.169950@gmx.net> (raw)

Since many, many kernel releases my Hauppauge WinTV HVR-1400 doesn't work
anymore, and nobody feels responsible to fix it.
The code to get it work is still in there, it's only commented out.
My patch to enable it was rejected, because somebody had fear that it could
break other cards.
So here is a new patch, that allows you to select the frequency adjustment
code by a module parameter. Default is the old code, so it can't break
anything.

Signed-off-by: Alina Friedrichsen <x-alina@gmx.net>
---
diff -urN linux-3.0.orig/drivers/media/common/tuners/tuner-xc2028.c linux-3.0/drivers/media/common/tuners/tuner-xc2028.c
--- linux-3.0.orig/drivers/media/common/tuners/tuner-xc2028.c	2011-07-22 04:17:23.000000000 +0200
+++ linux-3.0/drivers/media/common/tuners/tuner-xc2028.c	2011-07-22 18:31:20.181449782 +0200
@@ -54,6 +54,11 @@
 MODULE_PARM_DESC(firmware_name, "Firmware file name. Allows overriding the "
 				"default firmware name\n");
 
+static int frequency_magic;
+module_param(frequency_magic, int, 0644);
+MODULE_PARM_DESC(frequency_magic, "Selects the frequency adjustment code "
+				  "for XC3028. Set it to 1 if tuning fails.");
+
 static LIST_HEAD(hybrid_tuner_instance_list);
 static DEFINE_MUTEX(xc2028_list_mutex);
 
@@ -967,34 +972,36 @@
 		 * newer firmwares
 		 */
 
-#if 1
-		/*
-		 * The proper adjustment would be to do it at s-code table.
-		 * However, this didn't work, as reported by
-		 * Robert Lowery <rglowery@exemail.com.au>
-		 */
-
-		if (priv->cur_fw.type & DTV7)
-			offset += 500000;
-
-#else
-		/*
-		 * Still need tests for XC3028L (firmware 3.2 or upper)
-		 * So, for now, let's just comment the per-firmware
-		 * version of this change. Reports with xc3028l working
-		 * with and without the lines bellow are welcome
-		 */
+		if (!frequency_magic) {
+			/*
+			 * The proper adjustment would be to do it at s-code
+			 * table. However, this didn't work, as reported by
+			 * Robert Lowery <rglowery@exemail.com.au>
+			 */
 
-		if (priv->firm_version < 0x0302) {
 			if (priv->cur_fw.type & DTV7)
 				offset += 500000;
+
 		} else {
-			if (priv->cur_fw.type & DTV7)
-				offset -= 300000;
-			else if (type != ATSC) /* DVB @6MHz, DTV 8 and DTV 7/8 */
-				offset += 200000;
+			/*
+			 * Still need tests for XC3028L (firmware 3.2 or upper)
+			 * So, for now, let's just comment the per-firmware
+			 * version of this change. Reports with xc3028l working
+			 * with and without the lines bellow are welcome
+			 */
+
+			if (priv->firm_version < 0x0302) {
+				if (priv->cur_fw.type & DTV7)
+					offset += 500000;
+			} else {
+				if (priv->cur_fw.type & DTV7)
+					offset -= 300000;
+				else if (type != ATSC) {
+					/* DVB @6MHz, DTV 8 and DTV 7/8 */
+					offset += 200000;
+				}
+			}
 		}
-#endif
 	}
 
 	div = (freq - offset + DIV / 2) / DIV;

                 reply	other threads:[~2011-07-22 16:39 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110722163940.169950@gmx.net \
    --to=x-alina@gmx.net \
    --cc=linux-media@vger.kernel.org \
    --cc=rglowery@exemail.com.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox