提交 4eb0c144 编写于 作者: H Hans Verkuil 提交者: Linus Torvalds

[PATCH] v4l: 754: add the adapter address prefix to the tda9887 kernel messages

- Add the adapter/address prefix to the tda9887 kernel messages.
Signed-off-by: NHans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: NMichael Krufky <mkrufky@m1k.net>
Signed-off-by: NMauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 98f30ed0
......@@ -44,8 +44,13 @@ MODULE_LICENSE("GPL");
/* ---------------------------------------------------------------------- */
#define UNSET (-1U)
#define PREFIX "tda9885/6/7: "
#define dprintk if (debug) printk
#define tda9887_info(fmt, arg...) do {\
printk(KERN_INFO "%s %d-%04x: " fmt, t->client.name, \
i2c_adapter_id(t->client.adapter), t->client.addr , ##arg); } while (0)
#define tda9887_dbg(fmt, arg...) do {\
if (debug) \
printk(KERN_INFO "%s %d-%04x: " fmt, t->client.name, \
i2c_adapter_id(t->client.adapter), t->client.addr , ##arg); } while (0)
struct tda9887 {
struct i2c_client client;
......@@ -237,7 +242,7 @@ static struct tvnorm radio_mono = {
/* ---------------------------------------------------------------------- */
static void dump_read_message(unsigned char *buf)
static void dump_read_message(struct tda9887 *t, unsigned char *buf)
{
static char *afc[16] = {
"- 12.5 kHz",
......@@ -257,15 +262,15 @@ static void dump_read_message(unsigned char *buf)
"+ 37.5 kHz",
"+ 12.5 kHz",
};
printk(PREFIX "read: 0x%2x\n", buf[0]);
printk(" after power on : %s\n", (buf[0] & 0x01) ? "yes" : "no");
printk(" afc : %s\n", afc[(buf[0] >> 1) & 0x0f]);
printk(" fmif level : %s\n", (buf[0] & 0x20) ? "high" : "low");
printk(" afc window : %s\n", (buf[0] & 0x40) ? "in" : "out");
printk(" vfi level : %s\n", (buf[0] & 0x80) ? "high" : "low");
tda9887_info("read: 0x%2x\n", buf[0]);
tda9887_info(" after power on : %s\n", (buf[0] & 0x01) ? "yes" : "no");
tda9887_info(" afc : %s\n", afc[(buf[0] >> 1) & 0x0f]);
tda9887_info(" fmif level : %s\n", (buf[0] & 0x20) ? "high" : "low");
tda9887_info(" afc window : %s\n", (buf[0] & 0x40) ? "in" : "out");
tda9887_info(" vfi level : %s\n", (buf[0] & 0x80) ? "high" : "low");
}
static void dump_write_message(unsigned char *buf)
static void dump_write_message(struct tda9887 *t, unsigned char *buf)
{
static char *sound[4] = {
"AM/TV",
......@@ -305,58 +310,58 @@ static void dump_write_message(unsigned char *buf)
"44 MHz",
};
printk(PREFIX "write: byte B 0x%02x\n",buf[1]);
printk(" B0 video mode : %s\n",
tda9887_info("write: byte B 0x%02x\n",buf[1]);
tda9887_info(" B0 video mode : %s\n",
(buf[1] & 0x01) ? "video trap" : "sound trap");
printk(" B1 auto mute fm : %s\n",
tda9887_info(" B1 auto mute fm : %s\n",
(buf[1] & 0x02) ? "yes" : "no");
printk(" B2 carrier mode : %s\n",
tda9887_info(" B2 carrier mode : %s\n",
(buf[1] & 0x04) ? "QSS" : "Intercarrier");
printk(" B3-4 tv sound/radio : %s\n",
tda9887_info(" B3-4 tv sound/radio : %s\n",
sound[(buf[1] & 0x18) >> 3]);
printk(" B5 force mute audio: %s\n",
tda9887_info(" B5 force mute audio: %s\n",
(buf[1] & 0x20) ? "yes" : "no");
printk(" B6 output port 1 : %s\n",
tda9887_info(" B6 output port 1 : %s\n",
(buf[1] & 0x40) ? "high (inactive)" : "low (active)");
printk(" B7 output port 2 : %s\n",
tda9887_info(" B7 output port 2 : %s\n",
(buf[1] & 0x80) ? "high (inactive)" : "low (active)");
printk(PREFIX "write: byte C 0x%02x\n",buf[2]);
printk(" C0-4 top adjustment : %s dB\n", adjust[buf[2] & 0x1f]);
printk(" C5-6 de-emphasis : %s\n", deemph[(buf[2] & 0x60) >> 5]);
printk(" C7 audio gain : %s\n",
tda9887_info("write: byte C 0x%02x\n",buf[2]);
tda9887_info(" C0-4 top adjustment : %s dB\n", adjust[buf[2] & 0x1f]);
tda9887_info(" C5-6 de-emphasis : %s\n", deemph[(buf[2] & 0x60) >> 5]);
tda9887_info(" C7 audio gain : %s\n",
(buf[2] & 0x80) ? "-6" : "0");
printk(PREFIX "write: byte E 0x%02x\n",buf[3]);
printk(" E0-1 sound carrier : %s\n",
tda9887_info("write: byte E 0x%02x\n",buf[3]);
tda9887_info(" E0-1 sound carrier : %s\n",
carrier[(buf[3] & 0x03)]);
printk(" E6 l pll gating : %s\n",
tda9887_info(" E6 l pll gating : %s\n",
(buf[3] & 0x40) ? "36" : "13");
if (buf[1] & 0x08) {
/* radio */
printk(" E2-4 video if : %s\n",
tda9887_info(" E2-4 video if : %s\n",
rif[(buf[3] & 0x0c) >> 2]);
printk(" E7 vif agc output : %s\n",
tda9887_info(" E7 vif agc output : %s\n",
(buf[3] & 0x80)
? ((buf[3] & 0x10) ? "fm-agc radio" : "sif-agc radio")
: "fm radio carrier afc");
} else {
/* video */
printk(" E2-4 video if : %s\n",
tda9887_info(" E2-4 video if : %s\n",
vif[(buf[3] & 0x1c) >> 2]);
printk(" E5 tuner gain : %s\n",
tda9887_info(" E5 tuner gain : %s\n",
(buf[3] & 0x80)
? ((buf[3] & 0x20) ? "external" : "normal")
: ((buf[3] & 0x20) ? "minimum" : "normal"));
printk(" E7 vif agc output : %s\n",
tda9887_info(" E7 vif agc output : %s\n",
(buf[3] & 0x80)
? ((buf[3] & 0x20)
? "pin3 port, pin22 vif agc out"
: "pin22 port, pin3 vif acg ext in")
: "pin3+pin22 port");
}
printk("--\n");
tda9887_info("--\n");
}
/* ---------------------------------------------------------------------- */
......@@ -380,11 +385,11 @@ static int tda9887_set_tvnorm(struct tda9887 *t, char *buf)
}
}
if (NULL == norm) {
dprintk(PREFIX "Unsupported tvnorm entry - audio muted\n");
tda9887_dbg("Unsupported tvnorm entry - audio muted\n");
return -1;
}
dprintk(PREFIX "configure for: %s\n",norm->name);
tda9887_dbg("configure for: %s\n",norm->name);
buf[1] = norm->b;
buf[2] = norm->c;
buf[3] = norm->e;
......@@ -506,26 +511,26 @@ static int tda9887_fixup_std(struct tda9887 *t)
case 'B':
case 'g':
case 'G':
dprintk(PREFIX "insmod fixup: PAL => PAL-BG\n");
tda9887_dbg("insmod fixup: PAL => PAL-BG\n");
t->std = V4L2_STD_PAL_BG;
break;
case 'i':
case 'I':
dprintk(PREFIX "insmod fixup: PAL => PAL-I\n");
tda9887_dbg("insmod fixup: PAL => PAL-I\n");
t->std = V4L2_STD_PAL_I;
break;
case 'd':
case 'D':
case 'k':
case 'K':
dprintk(PREFIX "insmod fixup: PAL => PAL-DK\n");
tda9887_dbg("insmod fixup: PAL => PAL-DK\n");
t->std = V4L2_STD_PAL_DK;
break;
case '-':
/* default parameter, do nothing */
break;
default:
printk(PREFIX "pal= argument not recognised\n");
tda9887_info("pal= argument not recognised\n");
break;
}
}
......@@ -535,19 +540,19 @@ static int tda9887_fixup_std(struct tda9887 *t)
case 'D':
case 'k':
case 'K':
dprintk(PREFIX "insmod fixup: SECAM => SECAM-DK\n");
tda9887_dbg("insmod fixup: SECAM => SECAM-DK\n");
t->std = V4L2_STD_SECAM_DK;
break;
case 'l':
case 'L':
dprintk(PREFIX "insmod fixup: SECAM => SECAM-L\n");
tda9887_dbg("insmod fixup: SECAM => SECAM-L\n");
t->std = V4L2_STD_SECAM_L;
break;
case '-':
/* default parameter, do nothing */
break;
default:
printk(PREFIX "secam= argument not recognised\n");
tda9887_info("secam= argument not recognised\n");
break;
}
}
......@@ -561,8 +566,8 @@ static int tda9887_status(struct tda9887 *t)
memset(buf,0,sizeof(buf));
if (1 != (rc = i2c_master_recv(&t->client,buf,1)))
printk(PREFIX "i2c i/o error: rc == %d (should be 1)\n",rc);
dump_read_message(buf);
tda9887_info("i2c i/o error: rc == %d (should be 1)\n",rc);
dump_read_message(t, buf);
return 0;
}
......@@ -588,13 +593,13 @@ static int tda9887_configure(struct tda9887 *t)
}
dprintk(PREFIX "writing: b=0x%02x c=0x%02x e=0x%02x\n",
tda9887_dbg("writing: b=0x%02x c=0x%02x e=0x%02x\n",
buf[1],buf[2],buf[3]);
if (debug > 1)
dump_write_message(buf);
dump_write_message(t, buf);
if (4 != (rc = i2c_master_send(&t->client,buf,4)))
printk(PREFIX "i2c i/o error: rc == %d (should be 4)\n",rc);
tda9887_info("i2c i/o error: rc == %d (should be 4)\n",rc);
if (debug > 2) {
msleep_interruptible(1000);
......@@ -612,8 +617,6 @@ static int tda9887_attach(struct i2c_adapter *adap, int addr, int kind)
client_template.adapter = adap;
client_template.addr = addr;
printk(PREFIX "chip found @ 0x%x\n", addr<<1);
if (NULL == (t = kmalloc(sizeof(*t), GFP_KERNEL)))
return -ENOMEM;
memset(t,0,sizeof(*t));
......@@ -623,6 +626,8 @@ static int tda9887_attach(struct i2c_adapter *adap, int addr, int kind)
t->pinnacle_id = UNSET;
t->radio_mode = V4L2_TUNER_MODE_STEREO;
tda9887_info("chip found @ 0x%x (%s)\n", addr<<1, adap->name);
i2c_set_clientdata(&t->client, t);
i2c_attach_client(&t->client);
......@@ -656,10 +661,10 @@ static int tda9887_detach(struct i2c_client *client)
}
#define SWITCH_V4L2 if (!t->using_v4l2 && debug) \
printk(PREFIX "switching to v4l2\n"); \
tda9887_info("switching to v4l2\n"); \
t->using_v4l2 = 1;
#define CHECK_V4L2 if (t->using_v4l2) { if (debug) \
printk(PREFIX "ignore v4l1 call\n"); \
tda9887_info("ignore v4l1 call\n"); \
return 0; }
static int
......@@ -787,7 +792,10 @@ tda9887_command(struct i2c_client *client, unsigned int cmd, void *arg)
static int tda9887_suspend(struct device * dev, pm_message_t state)
{
dprintk("tda9887: suspend\n");
struct i2c_client *c = container_of(dev, struct i2c_client, dev);
struct tda9887 *t = i2c_get_clientdata(c);
tda9887_dbg("suspend\n");
return 0;
}
......@@ -796,7 +804,7 @@ static int tda9887_resume(struct device * dev)
struct i2c_client *c = container_of(dev, struct i2c_client, dev);
struct tda9887 *t = i2c_get_clientdata(c);
dprintk("tda9887: resume\n");
tda9887_dbg("resume\n");
tda9887_configure(t);
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册