* [PATCH] xc5000: fix incorrect debug printnk
@ 2013-03-13 4:23 Dmitri Belimov
0 siblings, 0 replies; only message in thread
From: Dmitri Belimov @ 2013-03-13 4:23 UTC (permalink / raw)
To: Devin Heitmueller, LMML
Hello
I found very small bag in xc5000 source.
When set option debug=1 and listen a radio we see in dmesg
xc5000: xc_SetTVStandard() Standard = M/N-NTSC/PAL-BTSC
at all time.
But true value is "FM Radio-INPUT1_MONO".
It happens because in function xc5000_set_radio_freq get correct value VideoMode and AudioMode for radio and
call xc_SetTVStandard where name of standard get from incorrect place priv->video_standard .
This incorrect debug message do debugging little difficult.
I found very small bag in xc5000 source.
When set option debug=1 and listen a radio we see in dmesg
xc5000: xc_SetTVStandard() Standard = M/N-NTSC/PAL-BTSC
at all time.
But true value is "FM Radio-INPUT1_MONO".
It happens because in function xc5000_set_radio_freq get correct value VideoMode and AudioMode for radio and
call xc_SetTVStandard where name of standard get from incorrect place priv->video_standard .
This incorrect debug message do debugging little difficult.
diff --git a/drivers/media/tuners/xc5000.c b/drivers/media/tuners/xc5000.c
index d6be1b6..5cd09a6 100644
--- a/drivers/media/tuners/xc5000.c
+++ b/drivers/media/tuners/xc5000.c
@@ -422,13 +422,19 @@ static int xc_initialize(struct xc5000_priv *priv)
}
static int xc_SetTVStandard(struct xc5000_priv *priv,
- u16 VideoMode, u16 AudioMode)
+ u16 VideoMode, u16 AudioMode, u8 RadioMode)
{
int ret;
dprintk(1, "%s(0x%04x,0x%04x)\n", __func__, VideoMode, AudioMode);
- dprintk(1, "%s() Standard = %s\n",
- __func__,
- XC5000_Standard[priv->video_standard].Name);
+ if (RadioMode) {
+ dprintk(1, "%s() Standard = %s\n",
+ __func__,
+ XC5000_Standard[RadioMode].Name);
+ } else {
+ dprintk(1, "%s() Standard = %s\n",
+ __func__,
+ XC5000_Standard[priv->video_standard].Name);
+ }
ret = xc_write_reg(priv, XREG_VIDEO_MODE, VideoMode);
if (ret == XC_RESULT_SUCCESS)
@@ -824,7 +830,7 @@ static int xc5000_set_params(struct dvb_frontend *fe)
ret = xc_SetTVStandard(priv,
XC5000_Standard[priv->video_standard].VideoMode,
- XC5000_Standard[priv->video_standard].AudioMode);
+ XC5000_Standard[priv->video_standard].AudioMode, 0);
if (ret != XC_RESULT_SUCCESS) {
printk(KERN_ERR "xc5000: xc_SetTVStandard failed\n");
return -EREMOTEIO;
@@ -940,7 +946,7 @@ tune_channel:
ret = xc_SetTVStandard(priv,
XC5000_Standard[priv->video_standard].VideoMode,
- XC5000_Standard[priv->video_standard].AudioMode);
+ XC5000_Standard[priv->video_standard].AudioMode, 0);
if (ret != XC_RESULT_SUCCESS) {
printk(KERN_ERR "xc5000: xc_SetTVStandard failed\n");
return -EREMOTEIO;
@@ -1003,7 +1009,7 @@ static int xc5000_set_radio_freq(struct dvb_frontend *fe,
priv->rf_mode = XC_RF_MODE_AIR;
ret = xc_SetTVStandard(priv, XC5000_Standard[radio_input].VideoMode,
- XC5000_Standard[radio_input].AudioMode);
+ XC5000_Standard[radio_input].AudioMode, radio_input);
if (ret != XC_RESULT_SUCCESS) {
printk(KERN_ERR "xc5000: xc_SetTVStandard failed\n");
Signed-off-by: Dmitry Belimov <d.belimov@gmail.com>
With my best regards, Dmitry.
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2013-03-13 4:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-13 4:23 [PATCH] xc5000: fix incorrect debug printnk Dmitri Belimov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox