diff options
author | Hans Verkuil <hans.verkuil@cisco.com> | 2012-04-18 05:47:02 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-05-07 14:23:17 -0400 |
commit | ff27cda340450b4d5267a79109204e853f95cb4c (patch) | |
tree | 682eb626f450cda2a503b0e46305278b6c9d4602 | |
parent | 37481fcacbae3de4972dae265dab7a58f2c9cf8b (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.c | 20 |
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 | ||
159 | static 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 | |||
166 | static 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 | |||
159 | static int vidioc_querycap(struct file *file, void *priv, | 176 | static 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 | ||
407 | static int __init keene_init(void) | 427 | static int __init keene_init(void) |