public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 3/4] fc0011: Add some sanity checks and cleanups
@ 2013-02-07 16:19 Michael Büsch
  0 siblings, 0 replies; only message in thread
From: Michael Büsch @ 2013-02-07 16:19 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: linux-media

[-- Attachment #1: Type: text/plain, Size: 1202 bytes --]

Add some sanity checks to the calculations and make the REG_16 register write consistent
with the other ones.

Signed-off-by: Michael Buesch <m@bues.ch>

---

Index: linux/drivers/media/tuners/fc0011.c
===================================================================
--- linux.orig/drivers/media/tuners/fc0011.c	2012-10-22 16:15:46.000000000 +0200
+++ linux/drivers/media/tuners/fc0011.c	2012-10-22 16:17:15.280720317 +0200
@@ -220,6 +220,7 @@
 
 	/* Calc XIN. The PLL reference frequency is 18 MHz. */
 	xdiv = fvco / 18000;
+	WARN_ON(xdiv > 0xFF);
 	frac = fvco - xdiv * 18000;
 	frac = (frac << 15) / 18000;
 	if (frac >= 16384)
@@ -346,6 +347,8 @@
 	vco_cal &= FC11_VCOCAL_VALUEMASK;
 
 	switch (vco_sel) {
+	default:
+		WARN_ON(1);
 	case 0:
 		if (vco_cal < 8) {
 			regs[FC11_REG_VCOSEL] &= ~(FC11_VCOSEL_1 | FC11_VCOSEL_2);
@@ -427,7 +430,8 @@
 	err = fc0011_writereg(priv, FC11_REG_RCCAL, regs[FC11_REG_RCCAL]);
 	if (err)
 		return err;
-	err = fc0011_writereg(priv, FC11_REG_16, 0xB);
+	regs[FC11_REG_16] = 0xB;
+	err = fc0011_writereg(priv, FC11_REG_16, regs[FC11_REG_16]);
 	if (err)
 		return err;
 


-- 
Greetings, Michael.

PGP: 908D8B0E

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-02-07 17:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-07 16:19 [PATCH 3/4] fc0011: Add some sanity checks and cleanups Michael Büsch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox