[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 10/38] ide: add ncq identify data for ahci sata driv
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 10/38] ide: add ncq identify data for ahci sata drives |
Date: |
Fri, 17 Dec 2010 18:44:25 +0100 |
From: Roland Elek <address@hidden>
I modified ide_identify() to include the zero-based queue length
value in word 75, and set bit 8 in word 76 to signal NCQ support
in the identify data for AHCI SATA drives.
Signed-off-by: Roland Elek <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
hw/ide/core.c | 7 +++++++
hw/ide/internal.h | 2 ++
2 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 228911d..9e1d4e6 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -140,6 +140,13 @@ static void ide_identify(IDEState *s)
put_le16(p + 66, 120);
put_le16(p + 67, 120);
put_le16(p + 68, 120);
+
+ if (s->ncq_queues) {
+ put_le16(p + 75, s->ncq_queues - 1);
+ /* NCQ supported */
+ put_le16(p + 76, (1 << 8));
+ }
+
put_le16(p + 80, 0xf0); /* ata3 -> ata6 supported */
put_le16(p + 81, 0x16); /* conforms to ata5 */
/* 14=NOP supported, 5=WCACHE supported, 0=SMART supported */
diff --git a/hw/ide/internal.h b/hw/ide/internal.h
index aadb505..697c3b4 100644
--- a/hw/ide/internal.h
+++ b/hw/ide/internal.h
@@ -447,6 +447,8 @@ struct IDEState {
int smart_errors;
uint8_t smart_selftest_count;
uint8_t *smart_selftest_data;
+ /* AHCI */
+ int ncq_queues;
};
struct IDEDMAOps {
--
1.7.2.3
- [Qemu-devel] [PULL 00/38] Block patches, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 04/38] Introduce strtosz_suffix(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 03/38] block: Fix the use of protocols in backing files, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 06/38] ide: split ide command interpretation off, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 02/38] block: Introduce path_has_protocol() function, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 10/38] ide: add ncq identify data for ahci sata drives,
Kevin Wolf <=
- [Qemu-devel] [PATCH 11/38] pci: add storage class for sata, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 09/38] ide: move transfer_start after variable modification, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 05/38] qemu-img.c: Clean up handling of image size in img_create(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 01/38] blockdev: check dinfo ptr before using, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 07/38] ide: fix whitespace gap in ide_exec_cmd, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 14/38] config: move ide core and pci to pci.mak, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 21/38] Prevent creating an image with the same filename as backing file, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 20/38] Introduce do_snapshot_blkdev() and monitor command to handle it., Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 19/38] qemu-img.c: Re-factor img_create(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 25/38] ide: Register vm change state handler once only, Kevin Wolf, 2010/12/17