diff options
author | rwatson <rwatson@FreeBSD.org> | 2012-08-25 11:19:20 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2012-08-25 11:19:20 +0000 |
commit | 4e9d4cca8619ad145038e97d64c0265398aa5d24 (patch) | |
tree | 91e0a4a0eef199b9e535844b58bff1840822f03e /kerberos5 | |
parent | 57bdf1f3160c3bad78968872120cea0e37a94bf1 (diff) | |
download | FreeBSD-src-4e9d4cca8619ad145038e97d64c0265398aa5d24.zip FreeBSD-src-4e9d4cca8619ad145038e97d64c0265398aa5d24.tar.gz |
Add a device driver for the Altera University Program SD Card IP Core,
which can be synthesised in Altera FPGAs. An altera_sdcardc device
probes during the boot, and /dev/altera_sdcard devices come and go as
inserted and removed. The device driver attaches directly to the
Nexus, as is common for system-on-chip device drivers.
This IP core suffers a number of significant limitations, including a
lack of interrupt-driven I/O -- we must implement timer-driven polling,
only CSD 0 cards (up to 2G) are supported, there are serious memory
access issues that require the driver to verify writes to memory-mapped
buffers, undocumented alignment requirements, and erroneous error
returns. The driver must therefore work quite hard, despite a fairly
simple hardware-software interface. The IP core also supports at most
one outstanding I/O at a time, so is not a speed demon.
However, with the above workarounds, and subject to performance
problems, it works quite reliably in practice, and we can use it for
read-write mounts of root file systems, etc.
Sponsored by: DARPA, AFRL
Diffstat (limited to 'kerberos5')
0 files changed, 0 insertions, 0 deletions