diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-10-12 05:57:15 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-10-12 05:57:15 +0200 |
commit | 00dd414a0b9c3dd9bf1f917770b08fc5ed270e53 (patch) | |
tree | 6ed5b3d471829a133c62496210c3f3497c42c9a4 /linux/drivers/media/video/saa7134/saa7134.h | |
parent | 6945de76e40b14657304088ee49c320b293478fe (diff) | |
download | mediapointer-dvb-s2-00dd414a0b9c3dd9bf1f917770b08fc5ed270e53.tar.gz mediapointer-dvb-s2-00dd414a0b9c3dd9bf1f917770b08fc5ed270e53.tar.bz2 |
Additional Fixes for saa7134 suspend/resume
From: Maxim Levitsky <maximlevitsky@gmail.com>
Fixes few more problems I found in my saa7134 resume code:
* Race between IRQ handler and .suspend()/.resume() functions
* Removes timeout timers on active buffers - those
buffers will be recaptured after resume
* Adds suspend/resume for IR code - probably
necessary if using polling mode
* Adds #ifdef CONFIG_PM overs suspend code
* Runs a quirk in set_tvnorm in suspend/resume too
* Rearranges the order of calls in saa7134_resume to
be exactly as in saa7134_initdev thus the card is
initialized in exactly the same way
* Since DMA audio capture suspend/resume isn't yet supported,
avoid re-enabling it on resume for now
Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'linux/drivers/media/video/saa7134/saa7134.h')
-rw-r--r-- | linux/drivers/media/video/saa7134/saa7134.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/linux/drivers/media/video/saa7134/saa7134.h b/linux/drivers/media/video/saa7134/saa7134.h index 87dd6f3cb..cc6a34899 100644 --- a/linux/drivers/media/video/saa7134/saa7134.h +++ b/linux/drivers/media/video/saa7134/saa7134.h @@ -545,7 +545,7 @@ struct saa7134_dev { unsigned int hw_mute; int last_carrier; int nosignal; - unsigned int inresume; + unsigned int insuspend; /* SAA7134_MPEG_* */ struct saa7134_ts ts; @@ -653,7 +653,7 @@ extern struct video_device saa7134_radio_template; void set_tvnorm(struct saa7134_dev *dev, struct saa7134_tvnorm *norm); int saa7134_videoport_init(struct saa7134_dev *dev); -void saa7134_set_decoder(struct saa7134_dev *dev); +void saa7134_set_tvnorm_hw(struct saa7134_dev *dev); int saa7134_common_ioctl(struct saa7134_dev *dev, unsigned int cmd, void *arg); @@ -727,6 +727,8 @@ int saa7134_input_init1(struct saa7134_dev *dev); void saa7134_input_fini(struct saa7134_dev *dev); void saa7134_input_irq(struct saa7134_dev *dev); void saa7134_set_i2c_ir(struct saa7134_dev *dev, struct IR_i2c *ir); +void saa7134_ir_start(struct saa7134_dev *dev, struct card_ir *ir); +void saa7134_ir_stop(struct saa7134_dev *dev); /* |