Command Section
ALTERA_SDCARD(4)       FreeBSD Kernel Interfaces Manual       ALTERA_SDCARD(4)

     altera_sdcard - driver for the Altera University Program Secure Data Card
     IP Core

     device altera_sdcard

     In /boot/device.hints:"nexus0"

     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.

     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.


     Altera University Program Secure Data Card IP Core, Altera Corporation -
     University Program,,
     August 2011.

     The altera_sdcard device driver first appeared in FreeBSD 10.0.

     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.

     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.

FreeBSD 11.1-RELEASE-p4         August 18, 2012        FreeBSD 11.1-RELEASE-p4
Command Section