> > -Jeff will probably cringe at how I implemented the
> > bmdma_stop/start/status/setup functions. This kludge of toggling
> > ATA_FLAG_MMIO off for the call into libata was needed since this
> > controller is almost what libata calls ATA_FLAG_MMIO, but not quite
> > (the ATA taskfile registers are MMIO but the BMDMA
> registers are PIO).
> > This is also why I needed the patch to libata-sff.c to use the
> > adapter's bmdma_status function rather than hardcoded
> ata_bmdma_status.
>
> *shrug* I don't cringe if that's the most expedient way to
> do something.
>
> But I really don't think that is necessary. I will take a
> look at docs and see how things match up, when I am much more
> awake. Most likely you need to be using another set of
> registers, and be all MMIO, all the time.
You shouldn't be touching BM registers when ADMA is enabled, it can
cause bad things to happen.
You should be using BM registers when doing ATAPI protocol though, as it
doesn't work through ADMA. So I wouldn't say you should be using MMIO
all the time.
-Allen
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information. Any unauthorized review, use, disclosure or distribution
is prohibited. If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]