* [Qemu-devel] [PATCH] Improve ATA IDENTIFY word 64 contents.
@ 2010-09-02 23:38 Jonathan A. Kollasch
2010-09-03 12:26 ` Kevin Wolf
0 siblings, 1 reply; 2+ messages in thread
From: Jonathan A. Kollasch @ 2010-09-02 23:38 UTC (permalink / raw)
To: qemu-devel; +Cc: Jonathan A. Kollasch
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.
---
hw/ide/core.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 3651d2b..2fa26f4 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -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,12 +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 */
+ put_le16(p + 64, 3); /* pio3-4 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 */
+ put_le16(p + 64, 3); /* pio3-4 supported */
#endif
put_le16(p + 65, 0xb4); /* minimum DMA multiword tx cycle time */
put_le16(p + 66, 0xb4); /* recommended DMA multiword tx cycle time */
--
1.6.6.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] Improve ATA IDENTIFY word 64 contents.
2010-09-02 23:38 [Qemu-devel] [PATCH] Improve ATA IDENTIFY word 64 contents Jonathan A. Kollasch
@ 2010-09-03 12:26 ` Kevin Wolf
0 siblings, 0 replies; 2+ messages in thread
From: Kevin Wolf @ 2010-09-03 12:26 UTC (permalink / raw)
To: Jonathan A. Kollasch; +Cc: qemu-devel
Am 03.09.2010 01:38, schrieb Jonathan A. Kollasch:
> 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.
The Signed-off-by line is missing.
> ---
> hw/ide/core.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/hw/ide/core.c b/hw/ide/core.c
> index 3651d2b..2fa26f4 100644
> --- a/hw/ide/core.c
> +++ b/hw/ide/core.c
> @@ -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,12 +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 */
> + put_le16(p + 64, 3); /* pio3-4 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 */
> + put_le16(p + 64, 3); /* pio3-4 supported */
> #endif
> put_le16(p + 65, 0xb4); /* minimum DMA multiword tx cycle time */
> put_le16(p + 66, 0xb4); /* recommended DMA multiword tx cycle time */
The two lines for byte 64 in ide_atapi_identify are now the same, so
they could be moved outside the #ifdef.
Kevin
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-09-03 12:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-02 23:38 [Qemu-devel] [PATCH] Improve ATA IDENTIFY word 64 contents Jonathan A. Kollasch
2010-09-03 12:26 ` Kevin Wolf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).