aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2012-04-18 05:47:02 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-05-07 14:23:17 -0400
commitff27cda340450b4d5267a79109204e853f95cb4c (patch)
tree682eb626f450cda2a503b0e46305278b6c9d4602
parent37481fcacbae3de4972dae265dab7a58f2c9cf8b (diff)
[media] radio-keene: support suspend/resume
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/radio/radio-keene.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/media/radio/radio-keene.c b/drivers/media/radio/radio-keene.c
index 5f33047d0d43..62d32c4946f7 100644
--- a/drivers/media/radio/radio-keene.c
+++ b/drivers/media/radio/radio-keene.c
@@ -156,6 +156,23 @@ static void usb_keene_disconnect(struct usb_interface *intf)
156 v4l2_device_put(&radio->v4l2_dev); 156 v4l2_device_put(&radio->v4l2_dev);
157} 157}
158 158
159static int usb_keene_suspend(struct usb_interface *intf, pm_message_t message)
160{
161 struct keene_device *radio = to_keene_dev(usb_get_intfdata(intf));
162
163 return keene_cmd_main(radio, 0, false);
164}
165
166static int usb_keene_resume(struct usb_interface *intf)
167{
168 struct keene_device *radio = to_keene_dev(usb_get_intfdata(intf));
169
170 mdelay(50);
171 keene_cmd_set(radio);
172 keene_cmd_main(radio, radio->curfreq, true);
173 return 0;
174}
175
159static int vidioc_querycap(struct file *file, void *priv, 176static int vidioc_querycap(struct file *file, void *priv,
160 struct v4l2_capability *v) 177 struct v4l2_capability *v)
161{ 178{
@@ -402,6 +419,9 @@ static struct usb_driver usb_keene_driver = {
402 .probe = usb_keene_probe, 419 .probe = usb_keene_probe,
403 .disconnect = usb_keene_disconnect, 420 .disconnect = usb_keene_disconnect,
404 .id_table = usb_keene_device_table, 421 .id_table = usb_keene_device_table,
422 .suspend = usb_keene_suspend,
423 .resume = usb_keene_resume,
424 .reset_resume = usb_keene_resume,
405}; 425};
406 426
407static int __init keene_init(void) 427static int __init keene_init(void)