summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Verkamp <daniel@drv.nu>2012-05-22 16:26:42 -0700
committerKevin Wolf <kwolf@redhat.com>2012-05-30 14:51:09 +0200
commit4bb9c939a57103898f5a51aa6a7336eb3320d923 (patch)
treef11dd40e9b4824695b9596be8c05406a25898b7b
parent136be99e6e2130d3cd960b6b7d0ca86b6f011e5f (diff)
downloadqemu-4bb9c939a57103898f5a51aa6a7336eb3320d923.tar.gz
qemu-4bb9c939a57103898f5a51aa6a7336eb3320d923.tar.bz2
qemu-4bb9c939a57103898f5a51aa6a7336eb3320d923.zip
ahci: SATA FIS is 20 bytes, not 0x20
As in the SATA and AHCI specifications, a FIS is 5 Dwords of 4 bytes each, which comes to 20 bytes (decimal), not 0x20. Signed-off-by: Daniel Verkamp <daniel@drv.nu> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rw-r--r--hw/ide/ahci.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
index a883a920be..2d7d03d772 100644
--- a/hw/ide/ahci.c
+++ b/hw/ide/ahci.c
@@ -462,7 +462,7 @@ static void ahci_check_cmd_bh(void *opaque)
static void ahci_init_d2h(AHCIDevice *ad)
{
- uint8_t init_fis[0x20];
+ uint8_t init_fis[20];
IDEState *ide_state = &ad->port.ifs[0];
memset(init_fis, 0, sizeof(init_fis));
@@ -619,7 +619,7 @@ static void ahci_write_fis_d2h(AHCIDevice *ad, uint8_t *cmd_fis)
d2h_fis[11] = cmd_fis[11];
d2h_fis[12] = cmd_fis[12];
d2h_fis[13] = cmd_fis[13];
- for (i = 14; i < 0x20; i++) {
+ for (i = 14; i < 20; i++) {
d2h_fis[i] = 0;
}