From embeddedTS Manuals
Revision as of 23:34, 9 August 2011 by Mark (talk | contribs)

Similar to the XNAND, the SD card access is implemented in userspace in conjunction with NBD (network block device). The sdctl page which will show more advanced usage and the linuxrc script will bring up the NBD devices in this layout:

 /dev/nbd5 - whole disk device of microSD card
 /dev/nbd6 - 1st partition of SD card (Windows VFAT filesystem on devkit card)
 /dev/nbd7 - 2nd partition of SD card (kernel partition on devkit card)
 /dev/nbd8 - 3rd partition of SD card (EXT2 initrd partition on devkit card)
 /dev/nbd9 - 4th partition of SD card (Debian EXT3 filesystem on devkit card)
Note: NBD devices do not report size correctly. If you are formatting a partition or using dd you will need to specify the size.

The SD card core is a black box serviced by the OS independent C API (sdcore2.c) for reading/writing SD cards. This source code is available, but not recommended for modification. Since this core instance not cannot use memory based register access, the generic peek/poke routines need to be overloaded with SBUS specific register access. This happens automatically in the sdctl utility.and sdctl.c source code from the TS FTP site ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7500-linux/sources/ may be consulted as the reference.