ALTERA_SDCARD(4) | Device Drivers Manual | ALTERA_SDCARD(4) |
NAME¶
altera_sdcard
—
SYNOPSIS¶
device altera_sdcard
In /boot/device.hints:
hint.altera_sdcardc.0.at="nexus0"
hint.altera_sdcardc.0.maddr=0x7f008000
hint.altera_sdcardc.0.msize=0x400
DESCRIPTION¶
Thealtera_sdcard
device driver provides support for the
Altera University Program Secure Data Card (SD Card) IP Core device. A
controller device, altera_sdcardcX
, will be attached
during boot. Inserted disks are presented as disk(9)
devices, altera_sdcardX
, corresponding to the
controller number.
HARDWARE¶
The current version of thealtera_sdcard
driver supports
the SD Card IP core as described in the August 2011 version of Altera's
documentation. The core supports only cards up to 2G (CSD 0); larger cards, or
cards using newer CSD versions, will not be detected. The IP core has two key
limitations: a lack of interrupt support, requiring timer-driven polling to
detect I/O completion, and support for only single 512-byte block read and
write operations at a time. The combined effect of those two limits is that
the system clock rate, HZ
, must be set to at least 200
in order to accomplish the maximum 100KB/s data rate supported by the IP core.
SEE ALSO¶
disk(9)Altera University Program Secure Data Card IP Core, Altera Corporation - University Program, ftp://ftp.altera.com/up/pub/Altera_Material/11.0/University_Program_IP_Cores/Memory/SD_Card_Interface_for_SoPC_Builder.pdf, August 2011.
HISTORY¶
Thealtera_sdcard
device driver first appeared in
FreeBSD 10.0.
AUTHORS¶
Thealtera_sdcard
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 Robert N. M. Watson.
BUGS¶
altera_sdcard
contains a number of work-arounds for IP
core bugs. Perhaps most critically, altera_sdcard
ignores the CRC error bit returned in the RR1 register, which appears to be
unexpectedly set by the IP core.
altera_sdcard
uses fixed polling intervals
are used for card insertion/removal and I/O completion detection; an
adaptive strategy might improve performance by reducing the latency to
detecting completed I/O. However, in our experiments, using polling rates
greater than 200 times a second did not improve performance.
altera_sdcard
supports only a
nexus
bus attachment, which is appropriate for
system-on-chip busses such as Altera's Avalon bus. If the IP core is
configured off of another bus type, then additional bus attachments will be
required.
August 18, 2012 | Linux 4.19.0-10-amd64 |