Commit 57747b7f authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

V4L/DVB (5476): Fix gpiomux array size

there were several "magic" for loops, addressing gpiomux array size (4).
Adrian Bunk showed that one of the loops were wrong, going from 0 to 4.

This patch provides the right fix for this trouble, by using ARRAY_SIZE
on all places where we have a for loop using gpiomux.

Thanks to: Adrian Bunk <bunk@stusta.de> for pointing me about this trouble.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent f423b9a8
...@@ -2970,20 +2970,20 @@ void __devinit bttv_idcard(struct bttv *btv) ...@@ -2970,20 +2970,20 @@ void __devinit bttv_idcard(struct bttv *btv)
if (UNSET != audiomux[0]) { if (UNSET != audiomux[0]) {
gpiobits = 0; gpiobits = 0;
for (i = 0; i < 4; i++) { for (i = 0; i < ARRAY_SIZE(bttv_tvcards->gpiomux); i++) {
bttv_tvcards[btv->c.type].gpiomux[i] = audiomux[i]; bttv_tvcards[btv->c.type].gpiomux[i] = audiomux[i];
gpiobits |= audiomux[i]; gpiobits |= audiomux[i];
} }
} else { } else {
gpiobits = audioall; gpiobits = audioall;
for (i = 0; i < 4; i++) { for (i = 0; i < ARRAY_SIZE(bttv_tvcards->gpiomux); i++) {
bttv_tvcards[btv->c.type].gpiomux[i] = audioall; bttv_tvcards[btv->c.type].gpiomux[i] = audioall;
} }
} }
bttv_tvcards[btv->c.type].gpiomask = (UNSET != gpiomask) ? gpiomask : gpiobits; bttv_tvcards[btv->c.type].gpiomask = (UNSET != gpiomask) ? gpiomask : gpiobits;
printk(KERN_INFO "bttv%d: gpio config override: mask=0x%x, mux=", printk(KERN_INFO "bttv%d: gpio config override: mask=0x%x, mux=",
btv->c.nr,bttv_tvcards[btv->c.type].gpiomask); btv->c.nr,bttv_tvcards[btv->c.type].gpiomask);
for (i = 0; i < 5; i++) { for (i = 0; i < ARRAY_SIZE(bttv_tvcards->gpiomux); i++) {
printk("%s0x%x", i ? "," : "", bttv_tvcards[btv->c.type].gpiomux[i]); printk("%s0x%x", i ? "," : "", bttv_tvcards[btv->c.type].gpiomux[i]);
} }
printk("\n"); printk("\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment