V4L/DVB (6394): Fix a cafe_ccic resume bug

If the system is suspended while the camera is streaming, it will not
continue streaming on resume.  Save the state properly so that resume
works.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
Jonathan Corbet 2007-10-23 17:30:27 -03:00 committed by Mauro Carvalho Chehab
parent a8ab68bffe
commit c303449741

View file

@ -2232,13 +2232,16 @@ static int cafe_pci_suspend(struct pci_dev *pdev, pm_message_t state)
{
struct cafe_camera *cam = cafe_find_by_pdev(pdev);
int ret;
enum cafe_state cstate;
ret = pci_save_state(pdev);
if (ret)
return ret;
cstate = cam->state; /* HACK - stop_dma sets to idle */
cafe_ctlr_stop_dma(cam);
cafe_ctlr_power_down(cam);
pci_disable_device(pdev);
cam->state = cstate;
return 0;
}