From: Miguel S Filipe <m3thos@netcabo.pt>
To: Manish Lachwani <manish@Zambeel.com>
Cc: "'Alan Cox'" <alan@lxorguk.ukuu.org.uk>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Disk Performance Issues [AMD Viper plus IDE chipset problems. (wrong udma "autodetection")]
Date: Wed, 20 Nov 2002 20:10:36 +0000 [thread overview]
Message-ID: <3DDBEC3C.2090105@netcabo.pt> (raw)
In-Reply-To: 233C89823A37714D95B1A891DE3BCE5202AB1958@xch-a.win.zambeel.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Manish Lachwani wrote:
| I have noticed something with the IDE drivers especially with the Seagate
| drives. The promise driver (eg 20277) detects the UDMA 5 mode correctly.
|
| This is what it does:
|
| byte ultra_66 = ((id->dma_ultra & 0x0010) ||
| (id->dma_ultra & 0x0008)) ? 1 : 0;
| byte ultra_100 = ((id->dma_ultra & 0x0020) ||
| (ultra_66)) ? 1 : 0;
| byte ultra_133 = ((id->dma_ultra & 0x0040) ||
| (ultra_100)) ? 1 : 0;
|
| Now, lets take a PIIX driver
|
| int ultra100 = ((dev->device ==
| PCI_DEVICE_ID_INTEL_82801BA_8) ||
| (dev->device ==
| PCI_DEVICE_ID_INTEL_82801BA_9) ||
| (dev->device ==
| PCI_DEVICE_ID_INTEL_82801CA_10)) ? 1 : 0;
| int ultra66 = ((ultra100) ||
| (dev->device ==
| PCI_DEVICE_ID_INTEL_82801AA_1) ||
| (dev->device ==
| PCI_DEVICE_ID_INTEL_82372FB_1)) ? 1 : 0;
|
| if ((id->dma_ultra & 0x0020) && (udma_66) && (ultra100)) {
| speed = XFER_UDMA_5;
|
| where ultra100 and ultra66 is not or'ed with 0x0010 and 0x0008. The final
| check is only with 0x0020. I have found this issues with other IDE drivers
| like amd74xx.c, serverworks.c etc. SO, make the above changes in the
drivers
| and u should see UDMA 5 on those seagate drives on startup ...
|
| Thanks
| Manish
Okay, now, i've been looking in drivers/ide/amd74xx.c
and
config_chipset_for_dma(ide_drive_t)
has:
byte udma_66 = eighty_ninty_three(drive);
byte udma_100 = ((dev->device==PCI_DEVICE_ID_AMD_VIPER_7411)||
(dev->device==PCI_DEVICE_ID_AMD_VIPER_7441)) ? 1 : 0;
and.. also.. like you've said:
if ((id->dma_ultra & 0x0020) && (udma_66) && (udma_100)) {
~ speed = XFER_UDMA_5;
now.. my lame question is:
should I put:
byte udma66 = (eighty_ninty_three(drive) & 0x0010 ||
eighty_ninty_three(drive) & 0x0008) ? 1 : 0;
or eighty_ninty_three (ide_drive_t *drive), or even some other thing be
the one that should be changed for a proper fix. (if this is really the
way to solve it)
One other thing...
in config_chipset_for_dma() right after the declarations we have:
if(udma_100)
udma_66 = eighty_ninty_three(drive);
is this really needed, since udma_66 is declared and initialized with
that same value?
Sorry if this are lame questions, just trying to learn... :-\
Thanks
Miguel Sousa Filipe
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQE92+w8YBjDU2rJcrARAolPAJ4xi1LIpGcNUTUlGY+Qg9ZlzABxSQCcDBzl
Q/y4q7IiE0O5HllvTD877ZU=
=RBMC
-----END PGP SIGNATURE-----
next prev parent reply other threads:[~2002-11-20 20:09 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-20 2:10 Disk Performance Issues [AMD Viper plus IDE chipset problems. (wrong udma "autodetection")] Manish Lachwani
2002-11-20 20:10 ` Miguel S Filipe [this message]
-- strict thread matches above, loose matches on Subject: below --
2002-11-20 20:32 Manish Lachwani
2002-11-20 2:18 Manish Lachwani
2002-11-16 20:19 Miguel S Filipe
2002-11-16 23:33 ` Alan Cox
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3DDBEC3C.2090105@netcabo.pt \
--to=m3thos@netcabo.pt \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=manish@Zambeel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox