V4L/DVB (6727): tda18271: convert table lookup loops to functions

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
diff --git a/drivers/media/dvb/frontends/tda18271-priv.h b/drivers/media/dvb/frontends/tda18271-priv.h
index a3158eb..d56c2fe 100644
--- a/drivers/media/dvb/frontends/tda18271-priv.h
+++ b/drivers/media/dvb/frontends/tda18271-priv.h
@@ -21,6 +21,7 @@
 #ifndef __TDA18271_PRIV_H__
 #define __TDA18271_PRIV_H__
 
+#include <linux/kernel.h>
 #include <linux/types.h>
 
 #define R_ID     0x00	/* ID byte                */
@@ -65,26 +66,31 @@
 
 #define TDA18271_NUM_REGS 39
 
-struct tda18271_pll_map {
-	u32 lomax;
-	u8 pd; /* post div */
-	u8 d;  /*      div */
-};
+extern int tda18271_debug;
 
-extern struct tda18271_pll_map tda18271_main_pll[];
-extern struct tda18271_pll_map tda18271_cal_pll[];
+#define dprintk(level, fmt, arg...) do {\
+	if (tda18271_debug & level) \
+		printk(KERN_DEBUG "%s: " fmt, __FUNCTION__, ##arg); } while (0)
 
-struct tda18271_map {
-	u32 rfmax;
-	u8  val;
-};
+#define DBG_INFO 1
+#define DBG_MAP  2
+#define DBG_REG  4
 
-extern struct tda18271_map tda18271_bp_filter[];
-extern struct tda18271_map tda18271_km[];
-extern struct tda18271_map tda18271_rf_band[];
-extern struct tda18271_map tda18271_gain_taper[];
-extern struct tda18271_map tda18271_rf_cal[];
-extern struct tda18271_map tda18271_ir_measure[];
+#define dbg_info(fmt, arg...) dprintk(DBG_INFO, fmt, ##arg)
+#define dbg_map(fmt, arg...)   dprintk(DBG_MAP, fmt, ##arg)
+#define dbg_reg(fmt, arg...)   dprintk(DBG_REG, fmt, ##arg)
+
+/*---------------------------------------------------------------------*/
+
+extern void tda18271_calc_cal_pll(u32 *freq, u8 *post_div, u8 *div);
+extern void tda18271_calc_main_pll(u32 *freq, u8 *post_div, u8 *div);
+
+extern void tda18271_calc_bp_filter(u32 *freq, u8 *val);
+extern void tda18271_calc_km(u32 *freq, u8 *val);
+extern void tda18271_calc_rf_band(u32 *freq, u8 *val);
+extern void tda18271_calc_gain_taper(u32 *freq, u8 *val);
+extern void tda18271_calc_rf_cal(u32 *freq, u8 *val);
+extern void tda18271_calc_ir_measure(u32 *freq, u8 *val);
 
 #endif /* __TDA18271_PRIV_H__ */