(unknown charset) Re: speeding up ugen by an order of magnitude.

From: (unknown charset) Scott Long <scottl_at_freebsd.org>
Date: Wed, 7 Jul 2004 16:17:27 -0600 (MDT)
On Wed, 7 Jul 2004, Poul-Henning Kamp wrote:
> In message <200407072129.15095.mycroft_at_netbsd.org>, "Charles M. Hannum" writes:
> >On Wednesday 07 July 2004 20:46, Charles M. Hannum wrote:
> >> 1) You'll need to add an interface for assigning pipes for read and write,
> >> since there may be more than just bulk pipes (and may be more than one bulk
> >> pipe in each direction), and we only have have device node to work with.
> >
> >Seems I misspoke there.  That part looks fine.
> >
> >I think you're going to be screwed by the buffer alignment, though.  This also
> >causes some issues with umass if you're not using a bounce buffer.
>
> We've already had that issue with ATA for the børked Geode controller:
> physio does nothing for alignment and relies on userland doing something
> sensible.
>
> I think this is pretty reasonable for the kind of hardware-near
> work that physio is usually employed in (including if we use it for
> ugen).
>
> Obviously, if the alignment is not OK, EINVAL should be returned,
> and that means that the driver should explicitly check the alignment.

Note that busdma can handle alignment now for loaded buffers by using
bounce pages.

Scott
Received on Wed Jul 07 2004 - 20:12:49 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:00 UTC