From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=37821 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PN6DS-0008MP-3g for qemu-devel@nongnu.org; Mon, 29 Nov 2010 11:04:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PN6DQ-0003zz-Cr for qemu-devel@nongnu.org; Mon, 29 Nov 2010 11:04:33 -0500 Received: from mx1.redhat.com ([209.132.183.28]:53526) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PN6DQ-0003zr-5o for qemu-devel@nongnu.org; Mon, 29 Nov 2010 11:04:32 -0500 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id oATG4VOq014931 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 29 Nov 2010 11:04:31 -0500 From: Gerd Hoffmann Date: Mon, 29 Nov 2010 17:04:08 +0100 Message-Id: <1291046649-19353-12-git-send-email-kraxel@redhat.com> In-Reply-To: <1291046649-19353-1-git-send-email-kraxel@redhat.com> References: <1291046649-19353-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH 11/12] usb: move USB_REQ_SET_ADDRESS handling to common code List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Gerd Hoffmann USB_REQ_SET_ADDRESS handling is identical in *all* emulated devices. Move it to common code. Signed-off-by: Gerd Hoffmann --- hw/usb-bt.c | 4 ---- hw/usb-desc.c | 4 ++++ hw/usb-hid.c | 4 ---- hw/usb-hub.c | 4 ---- hw/usb-msd.c | 4 ---- hw/usb-net.c | 5 ----- hw/usb-serial.c | 4 ---- hw/usb-wacom.c | 4 ---- 8 files changed, 4 insertions(+), 29 deletions(-) diff --git a/hw/usb-bt.c b/hw/usb-bt.c index 44da655..cb51750 100644 --- a/hw/usb-bt.c +++ b/hw/usb-bt.c @@ -412,10 +412,6 @@ static int usb_bt_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; diff --git a/hw/usb-desc.c b/hw/usb-desc.c index 59af8e2..36dabec 100644 --- a/hw/usb-desc.c +++ b/hw/usb-desc.c @@ -268,6 +268,10 @@ int usb_desc_handle_control(USBDevice *dev, int request, int value, assert(desc != NULL); switch(request) { + case DeviceOutRequest | USB_REQ_SET_ADDRESS: + dev->addr = value; + ret = 0; + break; case DeviceRequest | USB_REQ_GET_DESCRIPTOR: ret = usb_desc_get_descriptor(dev, value, data, length); break; diff --git a/hw/usb-hid.c b/hw/usb-hid.c index 2efdc3b..a5e3804 100644 --- a/hw/usb-hid.c +++ b/hw/usb-hid.c @@ -694,10 +694,6 @@ static int usb_hid_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; diff --git a/hw/usb-hub.c b/hw/usb-hub.c index 0f8d060..51a67a2 100644 --- a/hw/usb-hub.c +++ b/hw/usb-hub.c @@ -297,10 +297,6 @@ static int usb_hub_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; diff --git a/hw/usb-msd.c b/hw/usb-msd.c index 7b6a0d7..a4d5c49 100644 --- a/hw/usb-msd.c +++ b/hw/usb-msd.c @@ -260,10 +260,6 @@ static int usb_msd_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; diff --git a/hw/usb-net.c b/hw/usb-net.c index 057c753..502a079 100644 --- a/hw/usb-net.c +++ b/hw/usb-net.c @@ -1071,11 +1071,6 @@ static int usb_net_handle_control(USBDevice *dev, int request, int value, ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; - case ClassInterfaceOutRequest | USB_CDC_SEND_ENCAPSULATED_COMMAND: if (!s->rndis || value || index != 0) goto fail; diff --git a/hw/usb-serial.c b/hw/usb-serial.c index 85d8d3f..e3cc49a 100644 --- a/hw/usb-serial.c +++ b/hw/usb-serial.c @@ -253,10 +253,6 @@ static int usb_serial_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; diff --git a/hw/usb-wacom.c b/hw/usb-wacom.c index d0263a6..6b50b06 100644 --- a/hw/usb-wacom.c +++ b/hw/usb-wacom.c @@ -283,10 +283,6 @@ static int usb_wacom_handle_control(USBDevice *dev, int request, int value, } ret = 0; break; - case DeviceOutRequest | USB_REQ_SET_ADDRESS: - dev->addr = value; - ret = 0; - break; case DeviceRequest | USB_REQ_GET_CONFIGURATION: data[0] = 1; ret = 1; -- 1.7.1