diff options
author | Mike Isely <isely@pobox.com> | 2009-03-06 22:45:10 -0600 |
---|---|---|
committer | Mike Isely <isely@pobox.com> | 2009-03-06 22:45:10 -0600 |
commit | bd4d80eea06a1b77b39fec47762370bb6cd6492f (patch) | |
tree | 20ea265404e61ec566d48c64ed9607e312928b9f /linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c | |
parent | eece3353234a98e74f8d3a93f0b6f21d1950e45d (diff) | |
download | mediapointer-dvb-s2-bd4d80eea06a1b77b39fec47762370bb6cd6492f.tar.gz mediapointer-dvb-s2-bd4d80eea06a1b77b39fec47762370bb6cd6492f.tar.bz2 |
pvrusb2: Sub-device update must happen BEFORE state dirty bits are cleared
From: Mike Isely <isely@pobox.com>
The sub-device update mechanism relies on various "dirty" bits in the
driver in order to know what pieces of state need to be propagated out
to the various sub-devices. But that won't work if the dirty bits are
cleared before the update gets a chance to run. This change ensures
that the update takes place before the dirty bits are cleared.
Priority: normal
Signed-off-by: Mike Isely <isely@pobox.com>
Diffstat (limited to 'linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c')
-rw-r--r-- | linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c b/linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c index 81afb6f87..632fa7211 100644 --- a/linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c +++ b/linux/drivers/media/video/pvrusb2/pvrusb2-hdw.c @@ -3262,15 +3262,15 @@ static int pvr2_hdw_commit_execute(struct pvr2_hdw *hdw) } } + /* Check and update state for all sub-devices. */ + pvr2_subdev_update(hdw); + for (idx = 0; idx < hdw->control_cnt; idx++) { cptr = hdw->controls + idx; if (!cptr->info->clear_dirty) continue; cptr->info->clear_dirty(cptr); } - /* Check and update state for all sub-devices. */ - pvr2_subdev_update(hdw); - /* Now execute i2c core update */ pvr2_i2c_core_sync(hdw); |