The MityDSP-L138 (OMAP-L138) and the MityARM-1808 (AM-1808) provide support for up to 2 MMC/SD card interfaces, MMC0 and MMC1. u-Boot supports loading from ext2 and fat partitions off of MMC0. MMC0 is connected on the Critical Link Industrial I/O board.
To use the MMC0 from u-Boot, you must configure the interface as part of the peripheral configuration command. For the industrial I/O board, the settings are shown below (near the end of the "config set" cycle:
U-Boot > config set Ethernet Config : 2 UART - 0 Configuration --- Enable UART : 0 UART - 1 Configuration --- Enable UART : 1 Baud : 115200 HW Flow Control : 0 Is Console : 1 UART - 2 Configuration --- Enable UART : 0 SPI - 0 Configuration --- Enable SPI : 0 SPI - 1 Configuration --- Enable SPI : 1 CLK is Output : 1 Chip Select  Enable : 01 Chip Select  Enable : 00 Chip Select  Enable : 00 Chip Select  Enable : 00 Chip Select  Enable : 00 Chip Select  Enable : 00 Chip Select  Enable : 00 Chip Select  Enable : 00 ENA ENable : 0 CLK Rate : 30000000 LCD Configuration LCD Enable : 1 Panel Name : wvga_800x480 MMC 0 Configuration MMC 0 Enable : 1 Write Protect Pin bank : 4 Write Protect Pin bank offset : 1 Card Detect Pin bank : 4 Card Detect Pin bank offset : 0 U-Boot > config save
The write protect and card detect pin bank information will be used by the linux kernel (not by u-Boot, and not yet implemented in kernel) as GPIO's for the driver to determine when a card has been inserted and if it is writable. The bank and the offset represent the OMAP-L138 or AM-1808 GPIO Bank and Offset setting for the connected pin, for example
GP4 in the case of the Industrial I/O card. These pins will be configured for GPIO and their functions set as inputs to provide the named capabilities.
Once you have saved the peripheral configuration, you will need to reset the unit to pick up the changes in u-Boot and enable the MMC0 interface. Then you may use the mmc commands from u-Boot as well as the ext2load commands with the "mmc" device type, etc.
Note: U-Boot may claim that the MMC/SD has a 'bad partition 1'. If this happens and the SD card has already been properly partitioned as ext2 or fat, run the command 'mmcinfo' to get U-Boot to recognize the storage device. This command will also need to be added to any auto-boot commands you may be running, if they require access to the SD card.
Go to top