NAME
altera_sdcard — driver for the Altera University Program Secure Data Card IP CoreSYNOPSIS
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
The altera_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 the altera_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
The altera_sdcard device driver first appeared in FreeBSD 10.0.AUTHORS
The altera_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 anexus
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 | Debian |