summaryrefslogtreecommitdiff
path: root/drivers/media/pci/cx23885/altera-ci.c
diff options
context:
space:
mode:
authorAnton Nurkin <ptqa@netup.ru>2012-08-16 10:55:40 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-09-10 11:53:50 -0300
commit4b83a7a75375f9d5edd1fb0067986a0f23695ddd (patch)
tree8bf610333d008bb728975a39a2e0264151611972 /drivers/media/pci/cx23885/altera-ci.c
parent0a23dc24cd007a1dd6efade8384dbe735b3b0d4f (diff)
[media] cx23885: fix pointer to structure for CAM
Fixes problem with CAM, when after re-iinitialization CAM used old pointer to structure. Signed-off-by: Anton Nurkin <ptqa@netup.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/pci/cx23885/altera-ci.c')
-rw-r--r--drivers/media/pci/cx23885/altera-ci.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/pci/cx23885/altera-ci.c b/drivers/media/pci/cx23885/altera-ci.c
index 1fa8927f0d36..aee7f0dacff1 100644
--- a/drivers/media/pci/cx23885/altera-ci.c
+++ b/drivers/media/pci/cx23885/altera-ci.c
@@ -724,6 +724,7 @@ int altera_ci_init(struct altera_ci_config *config, int ci_nr)
if (temp_int != NULL) {
inter = temp_int->internal;
(inter->cis_used)++;
+ inter->fpga_rw = config->fpga_rw;
ci_dbg_print("%s: Find Internal Structure!\n", __func__);
} else {
inter = kzalloc(sizeof(struct fpga_internal), GFP_KERNEL);
@@ -743,7 +744,6 @@ int altera_ci_init(struct altera_ci_config *config, int ci_nr)
ci_dbg_print("%s: setting state = %p for ci = %d\n", __func__,
state, ci_nr - 1);
- inter->state[ci_nr - 1] = state;
state->internal = inter;
state->nr = ci_nr - 1;
@@ -765,6 +765,8 @@ int altera_ci_init(struct altera_ci_config *config, int ci_nr)
if (0 != ret)
goto err;
+ inter->state[ci_nr - 1] = state;
+
altera_hw_filt_init(config, ci_nr);
if (inter->strt_wrk) {