From: Anthony Liguori <anthony@codemonkey.ws>
To: Max Reitz <max@tyndur.org>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] [PATCH] usb: class specific interface requests
Date: Wed, 31 Mar 2010 11:42:07 -0500 [thread overview]
Message-ID: <4BB37B5F.7030702@codemonkey.ws> (raw)
In-Reply-To: <1268565543-28001-1-git-send-email-max@tyndur.org>
On 03/14/2010 06:19 AM, Max Reitz wrote:
> Mass Storage Reset and Get Max LUN are class specific requests, but
> they were not marked as such in hw/usb-msd.c, moved therefore
> ClassInterfaceRequest and ClassInterfaceOutRequest from hw/usb-net.c
> to hw/usb.h.
> Furthermore there was a problem in hw/usb-ohci.c when using DEBUG
> concerning systems where size_t is a 32 bit integer (printf resulted
> in a segmentation fault).
>
> Signed-off-by: Max Reitz<max@tyndur.org>
>
Applied. Thanks.
Regards,
Anthony Liguori
> ---
> hw/usb-msd.c | 4 ++--
> hw/usb-net.c | 5 -----
> hw/usb-ohci.c | 2 +-
> hw/usb.h | 4 ++++
> 4 files changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/hw/usb-msd.c b/hw/usb-msd.c
> index 1a11bc5..87b744f 100644
> --- a/hw/usb-msd.c
> +++ b/hw/usb-msd.c
> @@ -327,12 +327,12 @@ static int usb_msd_handle_control(USBDevice *dev, int request, int value,
> ret = 0;
> break;
> /* Class specific requests. */
> - case MassStorageReset:
> + case ClassInterfaceOutRequest | MassStorageReset:
> /* Reset state ready for the next CBW. */
> s->mode = USB_MSDM_CBW;
> ret = 0;
> break;
> - case GetMaxLun:
> + case ClassInterfaceRequest | GetMaxLun:
> data[0] = 0;
> ret = 1;
> break;
> diff --git a/hw/usb-net.c b/hw/usb-net.c
> index 6875f11..45aa427 100644
> --- a/hw/usb-net.c
> +++ b/hw/usb-net.c
> @@ -71,11 +71,6 @@ enum usbstring_idx {
> #define USB_DT_CS_INTERFACE 0x24
> #define USB_DT_CS_ENDPOINT 0x25
>
> -#define ClassInterfaceRequest \
> - ((USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE)<< 8)
> -#define ClassInterfaceOutRequest \
> - ((USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE)<< 8)
> -
> #define USB_CDC_SEND_ENCAPSULATED_COMMAND 0x00
> #define USB_CDC_GET_ENCAPSULATED_RESPONSE 0x01
> #define USB_CDC_REQ_SET_LINE_CODING 0x20
> diff --git a/hw/usb-ohci.c b/hw/usb-ohci.c
> index 5c5dc4a..ac23c44 100644
> --- a/hw/usb-ohci.c
> +++ b/hw/usb-ohci.c
> @@ -908,7 +908,7 @@ static int ohci_service_td(OHCIState *ohci, struct ohci_ed *ed)
> flag_r = (td.flags& OHCI_TD_R) != 0;
> #ifdef DEBUG_PACKET
> DPRINTF(" TD @ 0x%.8x %" PRId64 " bytes %s r=%d cbp=0x%.8x be=0x%.8x\n",
> - addr, len, str, flag_r, td.cbp, td.be);
> + addr, (int64_t)len, str, flag_r, td.cbp, td.be);
>
> if (len> 0&& dir != OHCI_TD_DIR_IN) {
> DPRINTF(" data:");
> diff --git a/hw/usb.h b/hw/usb.h
> index 106d174..00d2802 100644
> --- a/hw/usb.h
> +++ b/hw/usb.h
> @@ -91,6 +91,10 @@
> #define EndpointRequest ((USB_DIR_IN|USB_TYPE_STANDARD|USB_RECIP_ENDPOINT)<<8)
> #define EndpointOutRequest \
> ((USB_DIR_OUT|USB_TYPE_STANDARD|USB_RECIP_ENDPOINT)<<8)
> +#define ClassInterfaceRequest \
> + ((USB_DIR_IN|USB_TYPE_CLASS|USB_RECIP_INTERFACE)<<8)
> +#define ClassInterfaceOutRequest \
> + ((USB_DIR_OUT|USB_TYPE_CLASS|USB_RECIP_INTERFACE)<<8)
>
> #define USB_REQ_GET_STATUS 0x00
> #define USB_REQ_CLEAR_FEATURE 0x01
>
prev parent reply other threads:[~2010-03-31 16:42 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-14 11:19 [Qemu-devel] [PATCH] [PATCH] usb: class specific interface requests Max Reitz
2010-03-31 16:42 ` Anthony Liguori [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BB37B5F.7030702@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=max@tyndur.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.