[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 16/24] usb: add usb_wakeup() + wakeup callback to po
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 16/24] usb: add usb_wakeup() + wakeup callback to port ops |
Date: |
Thu, 9 Dec 2010 13:30:19 +0100 |
Add wakeup callback to port ops for remote wakeup handling.
Also add a usb_wakeup() function for devices which want
trigger a remote wakeup.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb.c | 7 +++++++
hw/usb.h | 2 ++
2 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/hw/usb.c b/hw/usb.c
index 2eda86a..ba720b4 100644
--- a/hw/usb.c
+++ b/hw/usb.c
@@ -49,6 +49,13 @@ void usb_attach(USBPort *port, USBDevice *dev)
}
}
+void usb_wakeup(USBDevice *dev)
+{
+ if (dev->remote_wakeup && dev->port && dev->port->ops->wakeup) {
+ dev->port->ops->wakeup(dev);
+ }
+}
+
/**********************/
/* generic USB device helpers (you are not forced to use them when
diff --git a/hw/usb.h b/hw/usb.h
index 6b008cc..9f454e6 100644
--- a/hw/usb.h
+++ b/hw/usb.h
@@ -220,6 +220,7 @@ struct USBDeviceInfo {
typedef struct USBPortOps {
void (*attach)(USBPort *port);
void (*detach)(USBPort *port);
+ void (*wakeup)(USBDevice *dev);
} USBPortOps;
/* USB port on which a device can be connected */
@@ -274,6 +275,7 @@ static inline void usb_cancel_packet(USBPacket * p)
}
void usb_attach(USBPort *port, USBDevice *dev);
+void usb_wakeup(USBDevice *dev);
int usb_generic_handle_packet(USBDevice *s, USBPacket *p);
int set_usb_string(uint8_t *buf, const char *str);
void usb_send_msg(USBDevice *dev, int msg);
--
1.7.1
- [Qemu-devel] [PATCH 09/24] usb storage: serial number support, (continued)
- [Qemu-devel] [PATCH 09/24] usb storage: serial number support, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 08/24] usb descriptors: add settable strings., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 11/24] usb: move USB_REQ_SET_ADDRESS handling to common code, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 05/24] usb wacom: use new descriptor infrastructure., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 07/24] usb hub: use new descriptor infrastructure., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 14/24] usb: create USBPortOps, move attach there., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 06/24] usb bluetooth: use new descriptor infrastructure., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 12/24] usb: move USB_REQ_{GET, SET}_CONFIGURATION handling to common code, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 10/24] usb network: use new descriptor infrastructure., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 13/24] usb: move remote wakeup handling to common code, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 16/24] usb: add usb_wakeup() + wakeup callback to port ops,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 20/24] usb: add attach callback, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 17/24] usb: uhci: remote wakeup support., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 18/24] usb: hid: remote wakeup support., Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 15/24] usb: rework attach/detach workflow, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 23/24] usb storage: high speed support, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 21/24] usb: add usb_desc_attach, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 19/24] usb: add speed mask to ports, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 22/24] usb: add device qualifier support, Gerd Hoffmann, 2010/12/09
- [Qemu-devel] [PATCH 24/24] usb storage: fix status reporting, Gerd Hoffmann, 2010/12/09