From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59509) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIeRE-00088h-7F for qemu-devel@nongnu.org; Tue, 25 Oct 2011 06:41:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RIeRC-0006Gi-A6 for qemu-devel@nongnu.org; Tue, 25 Oct 2011 06:40:56 -0400 Received: from mail-wy0-f173.google.com ([74.125.82.173]:49684) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIeRB-0006FG-Pg for qemu-devel@nongnu.org; Tue, 25 Oct 2011 06:40:54 -0400 Received: by mail-wy0-f173.google.com with SMTP id 15so379083wyh.4 for ; Tue, 25 Oct 2011 03:40:53 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Tue, 25 Oct 2011 12:40:12 +0200 Message-Id: <1319539241-26436-5-git-send-email-pbonzini@redhat.com> In-Reply-To: <1319539241-26436-1-git-send-email-pbonzini@redhat.com> References: <1319539241-26436-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH v2 04/33] atapi: cleanup/fix mode sense results List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com The first two bytes (after the 8-byte ATAPI header) are the mode page number and the number of bytes after the length field itself. Make this clear in the code. The AUDIO_CTL page was filled with wrong values. It is not anymore in MMC, but at least keep the values sane. Signed-off-by: Paolo Bonzini --- hw/ide/atapi.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index 347c38d..e898da2 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -711,8 +711,8 @@ static void cmd_mode_sense(IDEState *s, uint8_t *buf) buf[6] = 0; buf[7] = 0; - buf[8] = 0x01; - buf[9] = 0x06; + buf[8] = MODE_PAGE_R_W_ERROR; + buf[9] = 16 - 10; buf[10] = 0x00; buf[11] = 0x05; buf[12] = 0x00; @@ -730,6 +730,8 @@ static void cmd_mode_sense(IDEState *s, uint8_t *buf) buf[6] = 0; buf[7] = 0; + buf[8] = MODE_PAGE_AUDIO_CTL; + buf[9] = 24 - 10; /* Fill with CDROM audio volume */ buf[17] = 0; buf[19] = 0; @@ -747,8 +749,8 @@ static void cmd_mode_sense(IDEState *s, uint8_t *buf) buf[6] = 0; buf[7] = 0; - buf[8] = 0x2a; - buf[9] = 0x12; + buf[8] = MODE_PAGE_CAPABILITIES; + buf[9] = 28 - 10; buf[10] = 0x00; buf[11] = 0x00; -- 1.7.6