Subject: New dmover(9) interface to hardware-assisted data movers
To: None <firstname.lastname@example.org>
From: Jason R Thorpe <email@example.com>
Date: 08/01/2002 18:44:10
I just checked in code that implements the new dmover(9) kernel API
for accesssing hardware-assisted data movers. This allows the kernel
to use hardware which can fill regions of memory, copy regions of memory,
and perform operations (such as XOR) on multiple regions of memory.
There is also a userland interface; see dmoverio(4) for details.
The code includes a sample software back-end (swdmover) which uses
a kernel thread to perform dmover functions. This is intended both
as an example of how to write a dmover back-end, and also as a fall-back
if a hardware accelerator for a given function does not exist.
I have also checked in a driver for the Application Accelerator Unit
which is found on the Intel i80321 XScale-based I/O processor. The
intended audience for this is RAID acceleration.
dmover(9) is still a work-in-progress; I expect the interface to evolve
a bit as more back-ends are written and as other parts of the NetBSD
kernel are changed to use it.
-- Jason R. Thorpe <firstname.lastname@example.org>