speeding up ugen by an order of magnitude.
Poul-Henning Kamp
phk at phk.freebsd.dk
Wed Jul 7 14:34:30 PDT 2004
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.
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
More information about the freebsd-current
mailing list