ide: add ncq identify data for ahci sata drives
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 <elek.roland@gmail.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
2ff61ff195
commit
ccf0fd8b05
@ -140,6 +140,13 @@ static void ide_identify(IDEState *s)
|
|||||||
put_le16(p + 66, 120);
|
put_le16(p + 66, 120);
|
||||||
put_le16(p + 67, 120);
|
put_le16(p + 67, 120);
|
||||||
put_le16(p + 68, 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 + 80, 0xf0); /* ata3 -> ata6 supported */
|
||||||
put_le16(p + 81, 0x16); /* conforms to ata5 */
|
put_le16(p + 81, 0x16); /* conforms to ata5 */
|
||||||
/* 14=NOP supported, 5=WCACHE supported, 0=SMART supported */
|
/* 14=NOP supported, 5=WCACHE supported, 0=SMART supported */
|
||||||
|
@ -447,6 +447,8 @@ struct IDEState {
|
|||||||
int smart_errors;
|
int smart_errors;
|
||||||
uint8_t smart_selftest_count;
|
uint8_t smart_selftest_count;
|
||||||
uint8_t *smart_selftest_data;
|
uint8_t *smart_selftest_data;
|
||||||
|
/* AHCI */
|
||||||
|
int ncq_queues;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct IDEDMAOps {
|
struct IDEDMAOps {
|
||||||
|
Loading…
Reference in New Issue
Block a user