From patchwork Sun Dec 18 20:38:00 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [10/10] hw/sd.c: Clear status bits when read via response r6 Date: Sun, 18 Dec 2011 10:38:00 -0000 From: Peter Maydell X-Patchwork-Id: 132109 Message-Id: <1324240680-26905-11-git-send-email-peter.maydell@linaro.org> To: qemu-devel@nongnu.org Cc: patches@linaro.org Response format r6 includes a subset of the status bits; clear the clear-on-read bits which are read by an r6 response. Signed-off-by: Peter Maydell --- hw/sd.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/hw/sd.c b/hw/sd.c index 6614cbf..2b8ebe4 100644 --- a/hw/sd.c +++ b/hw/sd.c @@ -371,6 +371,7 @@ static void sd_response_r6_make(SDState *sd, uint8_t *response) status = ((sd->card_status >> 8) & 0xc000) | ((sd->card_status >> 6) & 0x2000) | (sd->card_status & 0x1fff); + sd->card_status &= ~(CARD_STATUS_C & 0xc81fff); response[0] = (arg >> 8) & 0xff; response[1] = arg & 0xff;