|ALTERA_AVGEN(4)||FreeBSD Kernel Interfaces Manual||ALTERA_AVGEN(4)|
NAMEaltera_avgen — driver for generic Altera Avalon-bus-attached, memory-mapped devices
DESCRIPTIONThe altera_avgen device driver provides generic support for memory-mapped devices on the Altera Avalon bus. device.hints entries configure the address, size, I/O disposition, and /dev device node name that will be used. The open(2), read(2), write(2), and mmap(2) system calls (and variations) may be used on altera_avgen device nodes, subject to constraints imposed using device.hints entries. Although reading and writing mapped memory is supported, altera_avgen does not currently support directing device interrupts to userspace.
A number of device.hints sub-fields are available to configure altera_avgen device instances:
base physical address of the memory region to export; must be aligned to
length of the memory region export; must be aligned to
Granularity at which
write(2) operations will be performed. Larger requests will be broken down into
width -sizedoperations; smaller requests will be rejected. I/O operations must be aligned to
allowed file descriptor operations;
- specifies a device name relative to /dev.
- specifies a device unit number; no unit number is used if this is unspecified.
HISTORYThe altera_avgen device driver first appeared in FreeBSD 10.0.
AUTHORSThe altera_avgen device driver and this manual page were developed by SRI International and the University of Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) (“CTSRD”), as part of the DARPA CRASH research programme. This device driver was written by .
BUGSaltera_avgen is intended to support the writing of userspace device drivers; however, it does not permit directing interrupts to userspace, only memory-mapped I/O.
altera_avgen supports only a
nexus bus attachment, which is appropriate for system-on-chip busses such as Altera's Avalon bus. If the target device is off of another bus type, then additional bus attachments will be required.
|August 18, 2012||FreeBSD|