mirror of https://gitee.com/openkylin/qemu.git
Improve ATA IDENTIFY word 64 contents.
Fill in word 64 of IDENTIFY data to indicate support for PIO modes 3 and 4. This allows NetBSD guests to use UltraDMA modes instead of just PIO mode 0. Signed-off-by: Jonathan A. Kollasch <jakllsch@kollasch.net> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
897804d629
commit
79d1d33113
|
@ -139,6 +139,7 @@ static void ide_identify(IDEState *s)
|
|||
put_le16(p + 61, s->nb_sectors >> 16);
|
||||
put_le16(p + 62, 0x07); /* single word dma0-2 supported */
|
||||
put_le16(p + 63, 0x07); /* mdma0-2 supported */
|
||||
put_le16(p + 64, 0x03); /* pio3-4 supported */
|
||||
put_le16(p + 65, 120);
|
||||
put_le16(p + 66, 120);
|
||||
put_le16(p + 67, 120);
|
||||
|
@ -199,13 +200,12 @@ static void ide_atapi_identify(IDEState *s)
|
|||
put_le16(p + 53, 7); /* words 64-70, 54-58, 88 valid */
|
||||
put_le16(p + 62, 7); /* single word dma0-2 supported */
|
||||
put_le16(p + 63, 7); /* mdma0-2 supported */
|
||||
put_le16(p + 64, 0x3f); /* PIO modes supported */
|
||||
#else
|
||||
put_le16(p + 49, 1 << 9); /* LBA supported, no DMA */
|
||||
put_le16(p + 53, 3); /* words 64-70, 54-58 valid */
|
||||
put_le16(p + 63, 0x103); /* DMA modes XXX: may be incorrect */
|
||||
put_le16(p + 64, 1); /* PIO modes */
|
||||
#endif
|
||||
put_le16(p + 64, 3); /* pio3-4 supported */
|
||||
put_le16(p + 65, 0xb4); /* minimum DMA multiword tx cycle time */
|
||||
put_le16(p + 66, 0xb4); /* recommended DMA multiword tx cycle time */
|
||||
put_le16(p + 67, 0x12c); /* minimum PIO cycle time without flow control */
|
||||
|
|
Loading…
Reference in New Issue