Skip to content

Commit

Permalink
[media] cx23885: Cleanup MPEG encoder GPIO handling
Browse files Browse the repository at this point in the history
During initialization the prior GPIO's were not being preserved
and restore correctly. Small cleanups to configure the GPIO's
for the HVR1700, HVR1800 and HVR1850.

Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Steven Toth authored and Mauro Carvalho Chehab committed Jan 4, 2012
1 parent 4c3764d commit 182d29f
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions drivers/media/video/cx23885/cx23885-417.c
Original file line number Diff line number Diff line change
Expand Up @@ -900,14 +900,15 @@ static int cx23885_load_firmware(struct cx23885_dev *dev)
int i, retval = 0;
u32 value = 0;
u32 gpio_output = 0;
u32 gpio_value;
u32 checksum = 0;
u32 *dataptr;

dprintk(2, "%s()\n", __func__);

/* Save GPIO settings before reset of APU */
retval |= mc417_memory_read(dev, 0x9020, &gpio_output);
retval |= mc417_memory_read(dev, 0x900C, &value);
retval |= mc417_memory_read(dev, 0x900C, &gpio_value);

retval = mc417_register_write(dev,
IVTV_REG_VPU, 0xFFFFFFED);
Expand Down Expand Up @@ -991,11 +992,18 @@ static int cx23885_load_firmware(struct cx23885_dev *dev)

/* F/W power up disturbs the GPIOs, restore state */
retval |= mc417_register_write(dev, 0x9020, gpio_output);
retval |= mc417_register_write(dev, 0x900C, value);
retval |= mc417_register_write(dev, 0x900C, gpio_value);

retval |= mc417_register_read(dev, IVTV_REG_VPU, &value);
retval |= mc417_register_write(dev, IVTV_REG_VPU, value & 0xFFFFFFE8);

/* Hardcoded GPIO's here */
retval |= mc417_register_write(dev, 0x9020, 0x4000);
retval |= mc417_register_write(dev, 0x900C, 0x4000);

mc417_register_read(dev, 0x9020, &gpio_output);
mc417_register_read(dev, 0x900C, &gpio_value);

if (retval < 0)
printk(KERN_ERR "%s: Error with mc417_register_write\n",
__func__);
Expand Down

0 comments on commit 182d29f

Please sign in to comment.