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>
References:  <1901.1089236059@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 7 Jul 2004, Poul-Henning Kamp wrote:
> In message <200407072129.15095.mycroft@netbsd.org>, "Charles M. Hannum" w=
rites:
> >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 wr=
ite,
> >> 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 wit=
h.
> >
> >Seems I misspoke there.  That part looks fine.
> >
> >I think you're going to be screwed by the buffer alignment, though.  Thi=
s 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=F8rked 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



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