tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: WD_QUIRK_FORCE_LBA48



On Tue, Dec 15, 2009 at 11:53:34AM +0100, Michael van Elst wrote:
> On Tue, Dec 15, 2009 at 10:30:49AM +0100, Manuel Bouyer wrote:
> 
> > > ATA6 (at least the draft I have) shows the same rules and ATA5
> > > doesn't have LBA48.
> > 
> > Yes that's more or less what I meant. ATA6 says that words 60-61
> > should be less than or equal to 0x10000000,
> > which means we can address
> > sectors 0-0xfffffff using LBA28.
> 
> 
> ATA5
> 
> 6.2.1 Definitions and value ranges of IDENTIFY DEVICE words (see 8.12)
> 
> 11) Words (61:60) shall contain the total number of user-addressable
>     sectors. The content of words (61:60) shall be greater than or
>     equal to one and less than or equal to 268,435,456.
> 
> 
> ATA6
> 
> 6.2.1 Definitions and value ranges of IDENTIFY DEVICE words (see 8.12)
> 
> 1) Words (61:60) shall contain the value one greater than the total
>    number of user-addressable sectors in 28-bit addressing and shall
>    not exceed 0FFFFFFFh. The content of words (61:60) shall be greater
>    than or equal to one and less than or equal to 268,435,455.

Err, my version of ATA6 (T13/1410D revision 1) has the same wording
as ATA5. It looks like this was changed between revision 1 and
revision 3.

> 
> Both versions say that LBA28 commands shall fail if the requested
> LBA is larger or equal to the number in (61:60).

Ok

> So the wording
> in ATA6 regarding "one greater than the total number" is bogus
> and probably not implemented correctly by some devices.


I don't understand why you says this is bogus. As the first adressable
sector is 0, the total number of adressable sectors is the last 
LBA28-adressable sector + 1.

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index