提交 6d676d8a 编写于 作者: D Devin Heitmueller 提交者: Mauro Carvalho Chehab

V4L/DVB (9745): em28xx: Cleanup GPIO/GPO setup code

Cleanup the calls to set the GPIOs and GPOs for various devices,
replacing the register number with the #define from em28xx-reg.h and
converting over to using em28xx_write_reg()
Signed-off-by: NDevin Heitmueller <devin.heitmueller@gmail.com>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 55927684
......@@ -1487,7 +1487,7 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_FREQ_100_KHZ);
/* FIXME guess */
/* Turn on analog audio output */
em28xx_write_regs_req(dev, 0x00, 0x08, "\xfd", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfd);
break;
case EM2861_BOARD_KWORLD_PVRTV_300U:
......@@ -1499,9 +1499,9 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_CLK_WAIT_ENABLE |
EM28XX_I2C_FREQ_100_KHZ);
msleep(10);
em28xx_write_regs(dev, 0x08, "\x6d", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0x6d);
msleep(10);
em28xx_write_regs(dev, 0x08, "\x7d", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0x7d);
msleep(10);
break;
......@@ -1527,17 +1527,17 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_FREQ_100_KHZ);
/* TODO: someone can do some cleanup here...
not everything's needed */
em28xx_write_regs(dev, 0x04, "\x00", 1);
em28xx_write_reg(dev, EM2880_R04_GPO, 0x00);
msleep(10);
em28xx_write_regs(dev, 0x04, "\x01", 1);
em28xx_write_reg(dev, EM2880_R04_GPO, 0x01);
msleep(10);
em28xx_write_regs(dev, 0x08, "\xfd", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfd);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xfc", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfc);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xdc", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xdc);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xfc", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfc);
mdelay(70);
break;
......@@ -1550,11 +1550,11 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_FREQ_100_KHZ);
/* this device needs some gpio writes to get the DVB-T
demod work */
em28xx_write_regs(dev, 0x08, "\xfe", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfe);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xde", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xde);
mdelay(70);
dev->em28xx_write_regs(dev, 0x08, "\xfe", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfe);
mdelay(70);
break;
......@@ -1565,11 +1565,11 @@ void em28xx_pre_card_setup(struct em28xx *dev)
/* this device needs some gpio writes to get the
DVB-T demod work */
em28xx_write_regs(dev, 0x08, "\xfe", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfe);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xde", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xde);
mdelay(70);
em28xx_write_regs(dev, 0x08, "\xfe", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfe);
mdelay(70);
/* switch em2880 rc protocol */
/* djh - I have serious doubts this is right... */
......@@ -1587,7 +1587,7 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_CLK_WAIT_ENABLE |
EM28XX_I2C_FREQ_100_KHZ);
/* Turn on analog audio output */
em28xx_write_regs_req(dev, 0x00, 0x08, "\xfd", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfd);
break;
case EM2860_BOARD_GADMEI_UTV330:
......@@ -1608,7 +1608,7 @@ void em28xx_pre_card_setup(struct em28xx *dev)
EM28XX_I2C_CLK_WAIT_ENABLE |
EM28XX_I2C_FREQ_100_KHZ);
/* enables audio for that device */
em28xx_write_regs_req(dev, 0x00, 0x08, "\xfd", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xfd);
break;
case EM2874_BOARD_PINNACLE_PCTV_80E:
......@@ -1861,7 +1861,7 @@ void em28xx_card_setup(struct em28xx *dev)
}
case EM2820_BOARD_KWORLD_PVRTV2800RF:
/* GPIO enables sound on KWORLD PVR TV 2800RF */
em28xx_write_regs_req(dev, 0x00, 0x08, "\xf9", 1);
em28xx_write_reg(dev, EM28XX_R08_GPIO, 0xf9);
break;
case EM2820_BOARD_UNKNOWN:
case EM2800_BOARD_UNKNOWN:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册