[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 19/25] usb: add USBBusOps->wakeup_endpoint
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 19/25] usb: add USBBusOps->wakeup_endpoint |
Date: |
Mon, 23 Jan 2012 15:55:05 +0100 |
Add usb bus op which is called whenever a usb endpoint becomes ready,
so the host adapter emulation can react on that event.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb.c | 4 ++++
hw/usb.h | 1 +
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/hw/usb.c b/hw/usb.c
index 381558d..2d7088d 100644
--- a/hw/usb.c
+++ b/hw/usb.c
@@ -77,10 +77,14 @@ void usb_device_reset(USBDevice *dev)
void usb_wakeup(USBEndpoint *ep)
{
USBDevice *dev = ep->dev;
+ USBBus *bus = usb_bus_from_device(dev);
if (dev->remote_wakeup && dev->port && dev->port->ops->wakeup) {
dev->port->ops->wakeup(dev->port);
}
+ if (bus->ops->wakeup_endpoint) {
+ bus->ops->wakeup_endpoint(bus, ep);
+ }
}
/**********************/
diff --git a/hw/usb.h b/hw/usb.h
index 6b4684f..0dd6b88 100644
--- a/hw/usb.h
+++ b/hw/usb.h
@@ -419,6 +419,7 @@ struct USBBus {
struct USBBusOps {
int (*register_companion)(USBBus *bus, USBPort *ports[],
uint32_t portcount, uint32_t firstport);
+ void (*wakeup_endpoint)(USBBus *bus, USBEndpoint *ep);
};
void usb_bus_new(USBBus *bus, USBBusOps *ops, DeviceState *host);
--
1.7.1
- [Qemu-devel] [PATCH 05/25] usb-hub: implement find_device, (continued)
- [Qemu-devel] [PATCH 05/25] usb-hub: implement find_device, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 12/25] usb: kill handle_packet callback, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 09/25] usb-ohci: switch to usb_find_device(), Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 14/25] usb: USBPacket: add status, rename owner -> ep, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 06/25] usb: handle dev == NULL in usb_handle_packet(), Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 20/25] xhci: signal low- and fullspeed support, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 08/25] usb-ehci: switch to usb_find_device(), Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 10/25] usb-musb: switch to usb_find_device(), Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 22/25] xhci: stop on errors, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 23/25] xhci: kill port arg from xhci_setup_packet, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 19/25] usb: add USBBusOps->wakeup_endpoint,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 18/25] usb: pass USBEndpoint to usb_wakeup, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 17/25] usb: maintain async packet list per endpoint, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 24/25] xhci: remote wakeup support, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 21/25] xhci: add trb type name lookup support., Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 25/25] xhci: handle USB_RET_NAK, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 15/25] usb: add USBEndpoint->{nr,pid}, Gerd Hoffmann, 2012/01/23
- [Qemu-devel] [PATCH 16/25] usb: Set USBEndpoint in usb_packet_setup()., Gerd Hoffmann, 2012/01/23
- Re: [Qemu-devel] [PATCH 00/25] *** SUBJECT HERE ***, Gerd Hoffmann, 2012/01/23