Re: HPA and failed opcode was: 0x37 ?

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

 



On 1/30/07, Eric D. Mudama <edmudama@xxxxxxxxx> wrote:
It's *really* unlikely the drive doesn't have a working taskfile.

One other thing is that these registers in the drive are pretty dumb,
at least on the stuff I've worked with.  However, it allows for some
neat optimizations...

For example, you don't technically need to rewrite the task file to
set the drive to max capacity.

Simply writing the command register with 0x27 for READ NATIVE MAX
ADDRESS EXT, followed immediately by a write to the command register
with 0x37, would (in theory) set the drive to the proper size, since
the contents of both regular and HOB registers would be setup already
inside the device.

Another trick is when doing sequential DMA reads, since most drives
stuff the taskfile with the next sequential block when a DMA command
completes, you could save the taskfile writes and just issue another
write to the command register for the next sequential chunk of data.
On older PATA chipsets, this can buy you a few percent performance
when using smaller block sizes.

Granted these are all benchmarking hacks, and the behavior isn't
guaranteed I don't think, but I've seen this stuff done in driver
implementations before.

--eric
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux