qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 4/5] atapi: GESN: Standardise event response


From: Kevin Wolf
Subject: Re: [Qemu-devel] [PATCH v3 4/5] atapi: GESN: Standardise event response handling for future additions
Date: Tue, 12 Apr 2011 15:09:33 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.15) Gecko/20101027 Fedora/3.0.10-1.fc12 Thunderbird/3.0.10

Am 12.04.2011 13:43, schrieb Amit Shah:
> Handle GET_EVENT_STATUS_NOTIFICATION's No Event Available response in a
> generic way so that future additions to the code to handle other
> response types is easier.
> 
> Signed-off-by: Amit Shah <address@hidden>
> ---
>  hw/ide/core.c |   24 +++++++++++++++++++-----
>  1 files changed, 19 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/ide/core.c b/hw/ide/core.c
> index e838990..a9bc1e3 100644
> --- a/hw/ide/core.c
> +++ b/hw/ide/core.c
> @@ -1098,9 +1098,17 @@ static void 
> handle_get_event_status_notification(IDEState *s,
>          uint8_t control;
>      } __attribute__((packed)) *gesn_cdb;
>  
> +    struct {
> +        uint16_t len;
> +        uint8_t notification_class;
> +        uint8_t supported_events;
> +    } __attribute((packed)) *gesn_event_header;
> +
>      unsigned int max_len, used_len;
>  
>      gesn_cdb = (void *)packet;
> +    gesn_event_header = (void *)packet;

I think this should be buf, not packet.

> +
>      max_len = be16_to_cpu(gesn_cdb->len);
>  
>      /* It is fine by the MMC spec to not support async mode operations */
> @@ -1111,12 +1119,18 @@ static void 
> handle_get_event_status_notification(IDEState *s,
>          return;
>      }
>  
> -    /* polling */
> +    /* polling mode operation */
> +
>      /* We don't support any event class (yet). */
> -    cpu_to_ube16(buf, 0x00); /* No event descriptor returned */
> -    buf[2] = 0x80;           /* No Event Available (NEA) */
> -    buf[3] = 0x00;           /* Empty supported event classes */
> -    ide_atapi_cmd_reply(s, 4, max_len);
> +    gesn_event_header->supported_events = 0;
> +    gesn_event_header->notification_class = 0;

This line has no effect, even after the next patch.

Kevin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]