Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Jul 2004 16:17:27 -0600 (MDT)
From:      Scott Long <scottl@freebsd.org>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        Julian Elischer <julian@elischer.org>
Subject:   Re: speeding up ugen by an order of magnitude. 
Message-ID:  <20040707161618.V97786@pooker.samsco.org>
In-Reply-To: <1901.1089236059@critter.freebsd.dk>

index | next in thread | previous in thread | raw e-mail

On Wed, 7 Jul 2004, Poul-Henning Kamp wrote:
> In message <200407072129.15095.mycroft@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


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040707161618.V97786>