Hi :smileyhappy:
Here are few steps on how to boot from in built flash memory (eMMC4.4) on IMX53-SMD board. Without using MFGtool :smileyhappy:
First of all SMD board is bootable by SD card by default ( SW26 -2,7 ON) (SW28 all off)
If its booting fine in SD card then Its a easy job to boot from iNAND.
step 1 : First prepare the SD card with the your linux image. Please note that we need e2fsprogs package to format the partitions on the target.
So include the package by ./ltib -m config and select e2fsprogs from package list. and build everything.
Keep a copy of u-boot.bin, uImage and rootfs directory in the same SD card (assuming u have enough space on the SD card)
for that make a directory in the SD card /rootfs_nand and copy the contents of /home/ubuntu/ltib/roots/ to SD cards /rootfs_nand
cp -rvf /home/wintu/ltib/rootfs/* /media/SDcard/rootfs/
step 2 : Boot from the SD card.
step 3: Once booted do cat /proc/partitions
Here u will see mmcblk0 , mmcblk0p1, mmcblk1..
Here mmcblk0 is nothing but the SD card. and mmcblk1 is iNAND fash. (eMMC)
So we need to copy u-boot, uImage and rootfs to this device.
so first copy the u-boot.bin to flash as follows
dd if=u-boot.bin of=/dev/mmcblk1 bs=512 && sync && sync
then copy the uImage kernel
dd if=uImage of=/dev/mmcblk1 bs=512 && seek=2048 && sync && sync
step 4: Now make a partition in iNAND to store the rootfs as follows.
fdisk /dev/mmcblk1
press 'u' to change the units to sectors
press 'd' to delete the existing partitions if any
press 'n' for creating a new partition select 'p' for primary
enter the partition number as 1
enter the starting sector as 10240 coz before that u-boot and uImage has been copied.
press 'Enter' to select the default End sector.
press 'w' to write the new partition table.
step 5: format the partition using ext2/ext3/ext4 file system, this is where we need e2fsprogs package
mkfs.ext2 /dev/mmcblk1p1
step 6: mount the created partition as follows
mkdir /mnt/nandrive
mount /dev/mmcblk1p1 /mnt/nandrive
step 7: Now copy the contents of /rootfs_nand which was done in 1st step to the partition as follows
cp -rvf /rootfs_nand/* /mnt/nandrive
step 8: Now power off the board and set the boot switches so that board boots from eMMC
SW26(2,5,6,7-ON) SW28(8 -ON)
Please remove the SD card.
connect the debug board to the terminal (minicom or hyper terminal on windows)
power on the board.
By now you should be seeing the u-boot coming up on the terminal.
stop the auto boot by pressing any key.
step 9: set the u-boot environmental variables as follows
the starting address of the kernel
MX53-SMD U-Boot > setenv loadaddr 0x70800000
now after removing the SD card iNAND will mmcblk0 so set the root partition.
MX53-SMD U-Boot > setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/mmcblk0p1 ip=none rootfstype=ext4'
now mmc dev 1 because eMMC is treated as 1 and SD is 0.
MX53-SMD U-Boot > setenv bootcmd_mmc 'run bootargs_base bootargs_mmc; mmc dev 1; mmc read ${loadaddr} 0x800 0x1800; bootm'
MX53-SMD U-Boot > setenv bootcmd 'run bootcmd_mmc'
and these if you have set the u-boot splash screen the loation of that
MX53-SMD U-Boot > setenv splashimage '0x97c90000'
set the position default is 0,0
MX53-SMD U-Boot > setenv splashpos '25,25'
MX53-SMD U-Boot > setenv lvds_num 1
finally save the variables as follows
MX53-SMD U-Boot > saveenv
step 10: Congratulations !! Now when you restart the board system should boot from on board flash memory. or eMMC4.4.
Note: I tried to copy the actual rootfs from the SD card to nand and boot it. But It gave me kernel panic.
So I had to keep another copy of original rootfs into the same SD card.
If anyone has any easier method it would be really great because this is a little lengthy one.
Regards,
Winston
Hello Winston,
I have a mx53 board with these dip switches on it like you stated. DFI FS200 with android on it.
However I want to try to use MFG tool before using your guide to install Ubuntu image directly from a windows pc.
When I plug it into my windows machine I get "MX53 SMD Android" Driver not found. and MFG tool cannot detect the board.
How do I get this to work. Do you have any idea. Sorry for the stupid question.
Hi matz,
Did u follow the instructions given in mfgtools doc folder.... U need to install the driver from driver directory... If it doesnt work then probably this board is not supported by mfgtools.
Since DFI FS200 board is propitiatory product I dont think mfgtool support is available.
You need to contact the DFI support.. :smileysad:
Best way is using dd commands in linux to copy images to SD card..
Regards,
Winston