wiki:howto/SD_Config/Linux

Writing SD Cards: Linux

Every Linux distro should include dd. Run which dd to confirm you have it installed.

Finding the SD card descriptor:

  1. Insert the SD card
  2. In a terminal run fdisk -l. Depending on your system, you may need to run this as root (sudo fdisk -l).
  3. Find the SD card in the list of disks. The descriptor will have the form /dev/<something>
    1. On our test system (Ubuntu 12.04, PC with one hard drive), the output is:
      $ sudo fdisk -l
      Disk /dev/sda: 500.1 GB, 500107862016 bytes
      255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
      Units = sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 4096 bytes
      I/O size (minimum/optimal): 4096 bytes / 4096 bytes
      Disk identifier: 0x00000000
      
         Device Boot      Start         End      Blocks   Id  System
      /dev/sda1              63       80324       40131   de  Dell Utility
      Partition 1 does not start on physical sector boundary.
      /dev/sda2   *       81920    27967487    13942784    7  HPFS/NTFS/exFAT
      /dev/sda3        27967488   502366207   237199360    7  HPFS/NTFS/exFAT
      /dev/sda4       502368254   976771071   237201409    5  Extended
      Partition 4 does not start on physical sector boundary.
      /dev/sda5       502368256   972666879   235149312   83  Linux
      /dev/sda6       972668928   976771071     2051072   82  Linux swap / Solaris
      
      Disk /dev/sdb: 1977 MB, 1977614336 bytes
      255 heads, 63 sectors/track, 240 cylinders, total 3862528 sectors
      Units = sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disk identifier: 0x00000000
      
         Device Boot      Start         End      Blocks   Id  System
      /dev/sdb1               2       62505       31252    b  W95 FAT32
      
    2. In this output, the first disk is the computer's hard drive. The second disk is the SD card (notice the capacity of approx 2GB, with 1 32MB FAT partition).
    3. In this example, the SD card device descriptor to use with dd is /dev/sdb.

Copying the .bin file:

  1. Run this command, replacing the last three arguments with the correct values:
    dd bs=512 seek=<N> if=<yourFile.bin> of=</dev/someDevice>
    
    1. <N>: depends on the target slot number; use (131072 + slotNum*32768). More details here.
    2. <yourFile.bin>: the binary FPGA configuration file
    3. </dev/someDevice>: device descriptor for the SD card
  2. If successful, dd should report the following (the time/throughput values will differ):
    18032+1 records in
    18032+1 records out
    
  3. Repeat for additional .bin config files in additional slots if needed.
Last modified 12 years ago Last modified on Aug 25, 2012, 11:01:58 PM