Thread (28 messages) 28 messages, 5 authors, 2005-02-25

Re: [PATCH libata-dev-2.6] Issue INITIALIZE DEVICE PARAMETERS for CHS only devices

From: Albert Lee <hidden>
Date: 2005-02-24 02:37:51


Mark Lord wrote:
 >This is the patch to issue INITIALIZE DEVICE PARAMETERS
 >for CHS only devices.

That comment is not accurate.  What the patch really does
is issue the IDP command for devices predating ATA-4,
regardless of whether they are CHS-only or not.
   The Promise GPL'ed code does that, no matter whether the device supports LBA or not.
Nor checking the ATA major version, they just issue IDP to the device.

   However, it seems IDP is closely related to CHS. So in my patch, I just
issue it for the CHS-only (i.e. no LBA support) devices.

   If the device supports LBA, then IDP is not issued in my patch. Is this OK?
Oh, and what is the "major_version" variable based on?
I don't see it in 2.6.11-rc4, so it must be in the libata bk stuff.
   The "major_version" is the "i" variable in the ata_dev_identify().
Renamed in the previous CHS patch for clarity.
For this usage to work, that variable has to be set from the
drive IDENTIFY data, but with a precautionary check for drives
(pre-ATA4) which may not set the version at all.  I'm guessing
this is already taken care of elsewhere in libata, right?
Yes, it is already taken care in libata. It is from the IDENTIFY data.
Tested with my 1995 Seagate drive, it reports ATA-0 for the major version on libata.
No problem reading/writing it. However, I have to remove the pre ATA-3 check code before testing it.

Best regards,
Albert

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help