linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Linux IDE <linux-ide@vger.kernel.org>, Jens Axboe <axboe@suse.de>
Subject: Re: libata vs ATAPI
Date: Wed, 13 Oct 2004 01:03:58 +0200	[thread overview]
Message-ID: <58cb370e04101216036013d3fe@mail.gmail.com> (raw)
In-Reply-To: <416C5093.7050304@pobox.com>

On Tue, 12 Oct 2004 17:45:55 -0400, Jeff Garzik <jgarzik@pobox.com> wrote:
> Bartlomiej Zolnierkiewicz wrote:
> > INQUIRY is done in PIO in ide-scsi and it works for this device
> 
> I wouldn't mind doing non-read/write commands with PIO.  As long as the
> "fast path" commands are done via DMA...

Exactly my POV. 

> >>>>>Unfortunately it doesn't help because atapi_pio_sector() assumes
> >>>>>transfer length to be % SECTOR_SIZE and transfer length for INQUIRY
> >>>>>is mere 36 bytes so this fails.
> >>>>
> >>>>Yes, you are welcome to fix this assumption.  :)
> >>>
> >>>Another bug in this area: bcount is set to 64 * 1024 (0xFFFF) but
> >>>ATA/ATAPI spec defines max bcount as 0xFFFE and there must
> >>>be some reason why ide-scsi limits it to 63 * 1024 and ide-cd to
> >>>32 * 1024.
> >>
> >>bcount should be set to 8K (one SATA FIS) for PIO,
> >>and 0xFFFF for DMA.  It's not used for DMA.
> >
> >
> > According to ATA/ATAPI-5 spec bcount is ignored for
> > non-PIO transfers.
> 
> Right.  In practice for some host controllers it should be set to
> 0xffff.  It looks like I should change atapi_xlat() to do that.
> 
> 
> > It sets bcount also for no-data which seems wrong.
> 
> well some "non-data" commands could still return sense, so I preferred
> to err on the side of caution.
> 
> 
> >>Where is this code in libata?
> >
> > atapi_xlat() in libata-scsi.c
> 
> I do not see code in atapi_xlat() that sets bcount to 0xffff?

My mistake, it is setting bcount to 8K (SATA FIS).  Sorry for noise.

>         Jeff
> 
>

  reply	other threads:[~2004-10-12 23:03 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-12 20:21 libata vs ATAPI Bartlomiej Zolnierkiewicz
2004-10-12 20:50 ` Jeff Garzik
2004-10-12 21:17   ` Bartlomiej Zolnierkiewicz
2004-10-12 21:22     ` Jeff Garzik
2004-10-12 21:36       ` Bartlomiej Zolnierkiewicz
2004-10-12 21:45         ` Jeff Garzik
2004-10-12 23:03           ` Bartlomiej Zolnierkiewicz [this message]
2004-10-15 13:13           ` Jens Axboe
2004-10-15 17:17             ` Jeff Garzik
2004-10-12 21:30     ` Jeff Garzik
2004-10-12 21:39       ` Bartlomiej Zolnierkiewicz
2004-10-12 21:46         ` Jeff Garzik
2004-10-14  7:13     ` Jens Axboe
2004-10-14 19:19       ` Bartlomiej Zolnierkiewicz
2004-10-14 21:15         ` Bartlomiej Zolnierkiewicz
2004-10-15  5:00           ` Jeff Garzik

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=58cb370e04101216036013d3fe@mail.gmail.com \
    --to=bzolnier@gmail.com \
    --cc=axboe@suse.de \
    --cc=jgarzik@pobox.com \
    --cc=linux-ide@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).