This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Fast boot

Other Parts Discussed in Thread: TMS320DM355

Resources for Linux fast boot:

Booting Linux IPNC on dm365 in 4.25 (3.5) seconds

Accelerated Linux boot and streaming. Demo for DM365

Booting Linux kernel in 0.5 sec on DM365

SD Card Boot and Flashing Tool for DM355 and DM365

http://elinux.org/Boot_Time


 

 

Old post:

The rest thread is about obsolete 4th release of DM355 SD card boot and flash utility:

The utility allows to store boot data on SD card, boot DM355 from it and install software on flash. It can be useful for fast board initialization (comparing to serial restore) without JTAG using only Linux, or not using host computer at all. Root FS contains TI demo applications: encode, decode, encodedecode without data files.

4th release notes:
- Used original UBL ( ublDM355-nand.bin ). It solves demo problems.
- Fixed NAND erase.
- Improved script dm355_sd_boot
- Introduced default configuration dm355_sd.config
- Enlarged root FS and added demo applications without data
- Boot time is 20 sec

You may find full code at: http://www.linuxdriver.co.il/ti/dm355/sd_boot/

Online documentation: http://wiki.davincidsp.com/?title=DM355_SD_card_boot_and_flash_utility

In this release SD formatting performed from evaluation board. Script it reworked accordingly feedback and supports smaller SD without fixes.

 

  • Constantine Shulyupin,

    Could you please show me how to make SD boot data with size more than 20 MB? How to adjust that script "dm355_sd_boot"? Thanks in advance.

    I made sd boot image on evm board.

    Regards,
    Jeff

  • 0. You may format second partition as you wish (FAT, ext3), and use it from Linux. Linux application could install new big YAFS root FS on the NAND from SD card. It could be problematic to copy predefined YAFS/JFFS image to flash.

    1. Make the first partition bigger or on the full disk.
    OLD: echo -e ",10,b,*\n,,,*"  | sfdisk -uM -q $sd
    NEW: echo ",,b,*" 2> /dev/null | sfdisk -q $sd

    2. and (my be redundant) increase image file:
    OLD:dd of=$sdc_mnt/dm355.dat bs=1024 seek=5120 count=0 # pad file 5MB
    NEW: dd of=$sdc_mnt/dm355.dat bs=1024 seek=100000 count=0 # pad file 100MB

  • thanks for your kind help. I have another problem about nand flash. please see the following:

    I used the nand flash (HY27UF(08_16)4G2B 4G-bit(512M), pagesize = 2K, eraseblocksize = 128K,). I can put the kernel image to the nand flash successfully. But

    when I put the root file system to the mtdblock3 on linux(flash_eraseall /dev/mtd3, mount –t yaffs2 /dev/mtdblock3 /mnt, cd /mnt, tar xf dm355_flash_image_1_30_00_40.tar)

    I can not see anything in the mtdblock3 partition using ‘mount –t yaffs2 /dev/mtdblock3 /mnt/flash/’.

    And when I checked the partition usage using ‘df –h’, I saw that it is no available space on mtdblock3.

     

    Some error message :

    Using flash_eraseall /dev/mtd3

     

    Erasing 128 Kibyte @ f2a0000 -- 60 % complete.

    flash_eraseall: /dev/mtd3: MTD Erase failure: Input/output error

    Erasing 128 Kibyte @ 12e20000 -- 75 % complete.

     flash_eraseall: /dev/mtd3: MTD Erase failure: Input/output error

    Erasing 128 Kibyte @ 18fe0000 -- 99 % complete.

    please give me some clues. Thanks very much.

     

    Regards,

    Jeff

  • 4th release. main post is updated.

  • Hi Constantine,

    This looks just the utility I need, but I have a problem getting it to work, maybe you can help please, see my noted logs below.

    Many thanks.

    Dowloaded software from http://www.linuxdriver.co.il/ti/dm355/sd_boot/ to PC and unpacked it.

    Copied file and directory structure exactly as is onto an SD card I use for transferring data around. No original files or anything has been changed.

    Copied the whole file and directory structure from SD card to the target into directory:

    ---- my 'file transferring' SD is inserted into top slot ----
    # mmcblk0: mmc1:e624 SU02G 1985024KiB
     mmcblk0: p1

    ---- SD mounted -----
    # mount -t vfat /dev/mmcblk0p1 /mnt/mmc

    ---- go to my installation directory I created on the target, which is /root/sd_boot ----
    # cd sd_boot

    # pwd
    /root/sd_boot

    ---- copy the files from SD card to the target ----
    # cp -r /mnt/mmc/dm355_sd_boot-4 .

    ---- look at what's on the target ----
    # cd dm355_sd_boot-4
    # pwd
    /root/sd_boot/dm355_sd_boot-4

    # ls
    DM35x_FlashAndBootUtils_1_10_sd  dm355_sd.config
    Makefile                         dm355_sd_boot
    credits                          original
    dm355_boot_data                  ramdisk.gz
    dm355_boot_make_image            readme
    dm355_boot_make_image.c          u-boot-1.2.0
    dm355_boot_rec

    ---- unmount then remove my 'file transferring' SD card ----
    # umount /mnt/mmc

    ---- insert another SD card that I want to use as my boot card, into the bottom slot ----

    # mmcblk0: mmc0:8fe4 SD02G 1931264KiB
     mmcblk0: p1 p2

    ---- run the formatter ----
    # ./dm355_sd_boot format /dev/mmcblk0
    ./dm355_sd_boot: 146: [[: not found
    cleaning SD card
    1000+0 records in
    1000+0 records out
     mmcblk0: unknown partition table

    Disk /dev/mmcblk0: 60352 cylinders, 4 heads, 16 sectors/track

    sfdisk: ERROR: sector 0 does not have an msdos signature
     /dev/mmcblk0: unrecognized partition
    Old situation:
    No partitions found
    New situation:
    Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

       Device Boot Start   End    MiB    #blocks   Id  System
    /dev/mmcblk0p1   *     0+    19     20-     20479+   b  W95 FAT32
    /dev/mmcblk0p2   *    20   1885   1866    1910784   83  Linux
    /dev/mmcblk0p3         0      -      0          0    0  Empty
    /dev/mmcblk0p4         0      -      0          0    0  Empty
    Successfully wrote the new partition table

    Re-reading the partition table ...
     mmcblk0: p1 p2

    mkfs.vfat 2.11 (12 Mar 2005)
    dd: /mnt/sdc/dm355.dat: Operation not permitted
    0+1 records in
    0+1 records out
    -rwxr--r--    1 root     root           17 Jan  1 00:16 dm355.dat
    SD card /dev/mmcblk0 formatted
    ./dm355_sd_boot: 146: [[: not found
    ./dm355_sd_boot: 146: [[: not found
    1000+0 records in
    1000+0 records out
    od: invalid option -- A
    BusyBox v1.01 (2005.12.18-04:57+0000) multi-call binary

    Usage: od [-aBbcDdeFfHhIiLlOovXx] [FILE]

    Write an unambiguous representation, octal bytes by default, of FILE
    to standard output.  With no FILE, or when FILE is -, read standard input.

    od: invalid option -- A
    BusyBox v1.01 (2005.12.18-04:57+0000) multi-call binary

    Usage: od [-aBbcDdeFfHhIiLlOovXx] [FILE]

    Write an unambiguous representation, octal bytes by default, of FILE
    to standard output.  With no FILE, or when FILE is -, read standard input.

    dm355_boot_data_addr=0x
    Image dm355_boot_rec:plese define dm355_boot_data_addr
    dm355 boot record is written
    #

    ---- from the warnings and errors above, something didn't look like it ----
    ---- worked, so mount the SD card and take a look ----
    # mount -t vfat /dev/mmcblk0p1 /mnt/mmc
    # ls /mnt/mmc -l
    -rwxr--r--    1 root     root           17 Jan  1  1980 dm355.dat
    #

     

  • Hi Steve,

    You can use (via NFS) full MVL file system from /opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target, because it contains all requited utilities as test, "[", od (not from busybox) one.

    Or you can add requred utilities manually from full filesystem to working one by one.

    Thank you for the feedback!

  • Hi Constantine, many thanks for the very helpful pointers, I think this is almost there now.

    I copied the following files from the   "/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target"   directory tree to the EVM (renaming the current EVM files first):

    /usr/bin/od

    /usr/bin/[

    /usr/bin/test

    /bin/dd

    /bin/sync

    /sbin/sfdisk

    I ran the utility and got much further this time, but still have some errors, notably to do with "[[" and dd operation not permitted:

    # ./dm355_sd_boot format /dev/mmcblk0
    ./dm355_sd_boot: 146: [[: not found
    cleaning SD card
    1000+0 records in
    1000+0 records out
     mmcblk0: unknown partition table

    Disk /dev/mmcblk0: 60352 cylinders, 4 heads, 16 sectors/track

    sfdisk: ERROR: sector 0 does not have an msdos signature
     /dev/mmcblk0: unrecognized partition
    Old situation:
    No partitions found
    New situation:
    Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

       Device Boot Start   End    MiB    #blocks   Id  System
    /dev/mmcblk0p1   *     0+    19     20-     20479+   b  W95 FAT32
    /dev/mmcblk0p2   *    20   1885   1866    1910784   83  Linux
    /dev/mmcblk0p3         0      -      0          0    0  Empty
    /dev/mmcblk0p4         0      -      0          0    0  Empty
    Successfully wrote the new partition table

    Re-reading the partition table ...
     mmcblk0: p1 p2

    mkfs.vfat 2.11 (12 Mar 2005)
    dd: advancing past 9216000 bytes in output file `/mnt/mmc/dm355.dat': Operation not permitted
    0+1 records in
    0+1 records out
    -rwxr--r--    1 root     root           17 Jan  1 00:01 dm355.dat
    SD card /dev/mmcblk0 formatted
    ./dm355_sd_boot: 146: [[: not found
    ./dm355_sd_boot: 146: [[: not found
    1000+0 records in
    1000+0 records out
    dm355_boot_data_addr=0x053000
    Image dm355_boot_rec:a1aced00 100 3c 299 0 0 0 0 53000
    dm355 boot record is written

     

  • Constantine,

    Could you please show me how to write yaffs2/jffs2 file system into flash using your tool? Thanks very much

     

    Regards,

    Jeff

  • Read TMS320DM355 DVEVM v1.30 Getting Started Guide, section Restoring the NAND Flash

  • I test the dm355_sd_boot-4.But I find some error.

    1. Copy directory dm355_sd_boot to my target file system

    2. Insert SD card to bottom (!) SD card slot J27 on evaluation board

    # cd /
    # ls
    bin              lib              opt              sys
    dev              linuxrc          proc             tmp
    dm355_sd_boot-4  lost+found       root             usr
    etc              mnt              sbin             var
    # cd dm355_sd_boot-4/
    # ./dm355_sd_boot format /dev/mmcblk0
    ./dm355_sd_boot: 146: [[: not found
    You need utility sfdisk
    ./dm355_sd_boot: 146: [[: not found
    ./dm355_sd_boot: 146: [[: not found
    1000+0 records in
    1000+0 records out
    od: invalid option -- A
    BusyBox v1.01 (2005.12.18-04:57+0000) multi-call binary

    Usage: od [-aBbcDdeFfHhIiLlOovXx] [FILE]

    Write an unambiguous representation, octal bytes by default, of FILE
    to standard output.  With no FILE, or when FILE is -, read standard input.

    od: invalid option -- A
    BusyBox v1.01 (2005.12.18-04:57+0000) multi-call binary

    Usage: od [-aBbcDdeFfHhIiLlOovXx] [FILE]

    Write an unambiguous representation, octal bytes by default, of FILE
    to standard output.  With no FILE, or when FILE is -, read standard input.

    dm355_boot_data_addr=0x
    Image dm355_boot_rec:plese define dm355_boot_data_addr
    dm355 boot record is written
    # ./dm355_sd_boot data /dev/mmcblk0 original/ublDM355-nand.bin  u-boot-1.2.0/u-b
    oot-1.2.0-dm355_evm.bin  original/uImage-dm355  ramdisk.gz
    copying data
    Writing /mnt/sdc/dm355.dat
    Segmentation fault
    failed to build data image
    #

    Could you tell me how can I do next ?

  • 1. read online documentation: http://wiki.davincidsp.com/?title=DM355_SD_card_boot_and_flash_utility

    2. Mount full MVL FS via NFS or add required utilities manually from full file system to working one by one.

  • hi.. my name is jongsik yi.

     I have a question about your SD card boot.

     The below text is my DM355 EVM  message.

     I guess that SD format and image data copy process is successful.

     After the below message, i set the SW7 to SD boot mode.

     Next, reset the board.

     But i don't see any message from EVM...

     Why...?  

     ----------------------------------------------------------------------------

    root@192.168.0.3:/opt/dm355_sd_boot-4#./dm355_sd_boot format /dev/mmcblk0
    cleaning SD card
    1000+0 records in
    1000+0 records out
     mmcblk0: unknown partition table

    Disk /dev/mmcblk0: 31000 cylinders, 4 heads, 16 sectors/track

    sfdisk: ERROR: sector 0 does not have an msdos signature
     /dev/mmcblk0: unrecognized partition
    Old situation:
    No partitions found
    New situation:
    Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

       Device Boot Start   End    MiB    #blocks   Id  System
    /dev/mmcblk0p1   *     0+    19     20-     20479+   b  W95 FAT32
    /dev/mmcblk0p2   *    20    968-   949-    971520   83  Linux
    /dev/mmcblk0p3         0      -      0          0    0  Empty
    /dev/mmcblk0p4         0      -      0          0    0  Empty
    Successfully wrote the new partition table

    Re-reading the partition table ...
     mmcblk0: p1 p2

    mkfs.vfat 2.11 (12 Mar 2005)
    dd: advancing past 9216000 bytes in output file `/mnt/sdc/dm355.dat': Operation
    not permitted
    0+1 records in
    0+1 records out
    total 1
    -rwxr--r--  1 root root 17 Jan  1 00:15 dm355.dat
    SD card /dev/mmcblk0 formatted
    1000+0 records in
    1000+0 records out
    dm355_boot_data_addr=0x053000
    Image dm355_boot_rec:a1aced00 100 3c 299 0 0 0 0 53000
    dm355 boot record is written
    root@192.168.0.3:/opt/dm355_sd_boot-4# ./dm355_sd_boot data /dev/mmcblk0
    copying data
    Writing /mnt/sdc/dm355.dat
    000200-007174,    28532 bytes <- DM35x_FlashAndBootUtils_1_10_sd/DM35x/GNU/sdc_f
    lasher/sdc_flasher_DM35x_nand.bin
    008000-008200,    512 bytes <- test pattern 1 2 3
    010000-012e00,    11776 bytes <- original/ublDM355-nand.bin
    020000-03f648,   128584 bytes <- original/u-boot-1.2.0-dm355_evm.bin
    060000-1e182c,  1579052 bytes <- original/uImage-dm355
    400000-7e46a4,  4081316 bytes <- ramdisk.gz
    syncing
    DM355 boot data copied on SD card mounted on /mnt/sdc
    root@192.168.0.3:/opt/dm355_sd_boot-4# mount
    rootfs on / type rootfs (rw)
    /dev/root on / type nfs (rw,v2,rsize=4096,wsize=4096,hard,udp,nolock,addr=192.16
    8.0.2)
    proc on /proc type proc (rw,nodiratime)
    sysfs on /sys type sysfs (rw)
    tmpfs on /tmp type tmpfs (rw)
    usbfs on /proc/bus/usb type usbfs (rw)
    /dev/root on /dev/.static/dev type nfs (rw,v2,rsize=4096,wsize=4096,hard,udp,nol
    ock,addr=192.168.0.2)
    none on /dev type tmpfs (rw)
    devpts on /dev/pts type devpts (rw)
    tmpfs on /dev/shm type tmpfs (rw)
    /dev/mmcblk0p1 on /mnt/sdc type vfat (rw,nodiratime,fmask=0033,dmask=0033)
    root@192.168.0.3:/opt/dm355_sd_boot-4# ls -al /mnt/sdc
    \total 8087
    drwxr--r--  2 root root     512 Jan  1 00:00 .
    drwxr-xr-x  4 1000 root    4096 Jul 30  2009 ..
    -rwxr--r--  1 root root 8275620 Jan  1 00:16 dm355.dat
    root@192.168.0.3:/opt/dm355_sd_boot-4# \

  • Why does the UBL doesn't work as the MLO on OMAP3 ? Wouldn't it be possible to just copy the ubl u-boot and kernel image on a sd card without having to use a utility to flash the sd card with a special structure ? Looking at sdmmcboot.c it seems that would be possible. Is there any reason why it can't be done ?

     

    Thanks

  • I suppose it is possible. It just needs more time. Current implementation is good enough.

  • I see no problem.

    Please try again carefully.

    Are LED is flashing? What freqency? Please read DM355 documentation about the LED diagnostics.

     

  • I'm so sorry...

    I had inserted SD card to top (J27)...

    Thank you for your help... 

     

  • I would like to create a SD boot card for my DM365 board.  Where would I find the UBL binary?  Is there any documentation of how the UBL works?  How do I know what it's looking for when loading u-boot?

     

    Edit: I think I have found it in the PSP.  Located in board_utils/flash_utils.tar.gz.  And I guess the config file handles specifying the other files.

  • have you seen it: http://software-dl.ti.com/dsps/dsps_registered_sw/sdo_sb/targetcontent/psp/mv_lsp_2_10/index.html  ?

  • When I try to compile the sd boot project from the supplied link I get an undefined reference to memcpy.  I guess that's because there is a -nostdlib specification in the makefile.  How are other people getting around this?

  • I compile with MVL 4, not 5.
    Possible there is struct assignment. Try do add you own implementation of memcpy.

  • Hi,

    I'd like to port this method to my DM365 board. I've read the docs about RBL in SD/MMC mode, but it seems to me that I need an UBL able to boot u-boot from SD instead of NAND. Checking the PSP I've found the source code for DM365 UBL and managed to compile it with CCS. Sadly there is source code only for NAND and NOR boot. To be more precise, there is the "high level" code for SD/MMC boot (sdmmcboot.c), bit this code does include missing files: sdmmc.h. I also think that sdmmc.c file is missing and this should implement the functions SDMMC_open, SDMMC_readPage, etc.

    I think that this code has never been written for DM365, but perhaps I can try to port it from DM355 since the SD/MMC peripherial seems to be very similar. I've also tried to find those files for DM355 but I've been unable to locate them.

    So, can anyone point me to sdmmc.h and sdmmc.c source files for DM365 or at least for DM355?

    Thanks!

     

  • I going add support for DM365 too.

    You may find SD code here: http://support.spectrumdigital.com/boards/evmdm365/revc/files/EVMDM365_BSL_RevC.zip or in Linux kernel.

    Let's coperate.

  • Great, tomorrow I'll check the files!

    Thank you!

  • Hi Constantine,

    I've tried the "sd0" test in the file you specified and it seems to work, so making UBL copy u-boot from SD/MMC shouldn't be so difficult. I've started fixing sdmmcboot.c because it seems to be tailored for NAND (SD/MMC aren't addressed with page/block for example), and created all missing include files.

     

  • Hi,

    just a quick note to let you know that it worked. I can now start u-boot from an SD card on dm365 with my modified UBL. Too bad u-boot itself does not support SD, but at least I can recover a dead board using and SD card and tftp. Perhaps I'll investigate the effot to add SD card support into u-boot.

     

  • Good news! Could you please send me you changes as patch?

  • Constantine Shulyupin said:

    Good news! Could you please send me you changes as patch?

    I find it a bit difficult to provide a patch,but I can provide an archive of the directories I use. A "clean" patch file will require a bit more work. At the end I'll do it, but now I'll prefer to polish a bit more the code.

    I worked on UBL source code in CCS and windows, not linux. I modified the "pjt" files to add UBL_SDMMC configuration and added some files in different directories of the "flash_utils" structure dir. I've mostly cut&pasted the SD access functions from the examples you sent me. I preferred this approach to directly adding the files to the project because I think that this way we have a more "independent" project and also I've removed all code that is useless in UBL.

    Also I have create a new small C program to be run in Linux to build an image that can be wrote to SD/MMC using the "dd" command on the raw device. Notice that while it works, it can be improved a lot adding more configuration options that at the moment are hard coded.

    There are some small details to fix, such as where to start reading the actual u-boot (application) descriptor and data on the SD. The position of UBL cannot be changed since it is hard coded in RBL's ROM, but in UBL we can decide where it starts looking for the application descriptor and data. At the moment it looks at blocks 25-50 like the original NAND boot, but since SD and MMC blocks are 512 byes in size, this leaves only 25*512 bytes of space between UBL and u-boot data...

    UBL can't be bigger than 30Kb, so perhaps starting u-boot from block 64+ would be wiser...

  • Marco,

     

    I know you wish to polish this more, but is there any chance I can try it?  I have a DM365 EVM which was shipped without being flashed.  Using a MMC boot would be much easier (and faster) than shipping this back to Spectrum Digital.

     

    Best Regards,

    Mark Deneen

  • mdeneen said:

    I know you wish to polish this more, but is there any chance I can try it?  I have a DM365 EVM which was shipped without being flashed.  Using a MMC boot would be much easier (and faster) than shipping this back to Spectrum Digital.

    I can send you the image, then you have to dd it to the SD device. It works for me.

  • Marco,

    That would be wonderful.  Can you send it to mdeneen+ti@gmail.com?

    Best Regards,

    Mark Deneen

  • Marco Braga said:

    I can send you the image, then you have to dd it to the SD device. It works for me.

    Maybe we could get it hosted by TI, so others could download it.  How big is the image?

     

  • Have you already seen dm355_boot_make_image.c? It is my configurable utility for creating dm355 boot images.

  • Marco Braga said:

    Also I have create a new small C program to be run in Linux to build an image that can be wrote to SD/MMC using the "dd" command on the raw device. Notice that while it works, it can be improved a lot adding more configuration options that at the moment are hard coded.

     

    Have you already seen dm355_boot_make_image.c? It is my configurable utility for creating dm355 boot images.

  • Constantine Shulyupin said:

    Have you already seen dm355_boot_make_image.c? It is my configurable utility for creating dm355 boot images.

    Yes I've seen it but decided to do it my way anyway, just to do some tests with "dd" and SD. Moreover until we add SD/MMC support to U-Boot we can't do a complete linux boot. If you want you can modify your program or I can change the format of the header used by UBL to support it.

    If I remember correctly you don't use u-boot but a specific application to write on flash.

  • John Anderson said:

    Maybe we could get it hosted by TI, so others could download it.  How big is the image?

    It would be great if TI could host it, since I don't know where to put the binaries. The image is 200Kb but can be made smaller.

    But just to explain the situation, a completely erased board can run u-boot from SD. The problem is that it is a bit difficult to flash the UBL and u-boot image itself from u-boot because u-boot does not know how to generate the header required by RBL and UBL itself. My idea is to add support for this directly in u-boot. What do you think?

  • Hi,
    second part of the work consists in writing UBL and u-boot to the NAND flash. This also requires to write the correct RBL and UBL descriptor on the flash. I think there are at least 2 ways to do this:

    1) Write the flash from a modified UBL (we call this "flasher") that can load data from SD/MMC and write the data and correct descriptor

    2) Write the flash from a modified U-Boot that can load data from a supported device and write the data and correct descriptor

    Point 2 is a lot more flexible, but for a complete flashing from SD support for SD/MMC must be added to U-Boot. As a plus this would allow to write the flash after loading data from the net (i.e. tftp)

    Point 1 is easier to achieve but a lot more restrictive.

     

    Is anyone working on adding support for SD/MMC in U-Boot?

  • Marco,

    With the image you currently have, would I be able to boot off of NFS?  I am not overly concerned with writing to NAND at the moment, but I would like to start digging in to the board.

     

    If possible, could you send me the image at mdeneen+ti@gmail.com?  I can host it here for others until we can get it up on TI's site.

     

    Best Regards,

    Mark Deneen

  • mdeneen said:

    With the image you currently have, would I be able to boot off of NFS?  I am not overly concerned with writing to NAND at the moment, but I would like to start digging in to the board.

     

    Yes since it can start U-Boot. I'll send you the image.

     

  • Marco, I would like to give it a try as well.  Could you send it to fly_135@hotmail.com?

    I checked but couldn't see a way to PM on this forum.  There is an option for uploading attachments on the forum.  You could put it here yourself.  Not sure about the size limit.

  • http://atlas.saucontech.com/~mdeneen/ti/

     

    Best Regards,

    Mark Deneen

  • Hi Guys,

    Your work has been extremely valuable to me. Thank you very much for your posts.

    Where can I get documentation on the required structure of the data on the SD card? I can now (mostly due to your help) boot of SD card, but now need to add a fat16 and ext2 filesystem for the complete linux boot of SD. I plan to write the UBL to SD with dd, and pre-format the SD card. My clients can then update the fat16 and ext2 filesystems as and when required. The current idea is to fdisk the SD and start the fat16 from 1M to 31M, and the ext2 from 32M onwards.

     

    Thank you once again

    Louis Putter

     

  • Louis Putter said:
    Where can I get documentation on the required structure of the data on the SD card?

    On TMS320DM36x DMSoC ARM Subsystem 11.2.2 MMC/SD Boot Mode, p177

    Louis Putter said:
    My clients can then update the fat16 and ext2 filesystems as and when required.

    This utility makes SD with fat filesystem. So data could be updated as files. Currently I port the utility to DM365.

  • Hello Constantine,

    I've gone through all the docs, and wrote a small utility that packs the raw data of the UBL (which I extracted from a working image) and the u-boot with the required headers onto a SD card. It all works fine. I recompiled the u-boot on my linux (suse 10.3) server and played around in the code - all seems fine.

    My last step now is to load the kernel, but I'm stuck trying to compile the mmc drivers for davinci dm365. My current plan is to load the kernel from the raw data on the SD card from within uboot and then move the execution to the address in DDR where I've loaded the kernel. Once the kernel and initial RAM disk is loaded, I should be able to mount a USB mass storage device, which will contain all the required image data.

    Does anybody have a working MMC/SD driver for uboot, for DM365? PLEASE HELP.

     

    Thank you

    Louis Putter

  • Thanks!

    I have test the utility! It seemed the ubl,uboot,kernel and rootfs(which were download from http://www.linuxdriver.co.il/ti/dm355/sd_boot/ )  were writen to nand flash success! but when i reset the dm355 evm,the linux kernel was boot up and it cann't find the rootfs,It seemed the  kernel params isn't right, so how can i save these kernel params?

  • duke zuo said:

    Thanks!

    I have test the utility! It seemed the ubl,uboot,kernel and rootfs(which were download from http://www.linuxdriver.co.il/ti/dm355/sd_boot/ )  were writen to nand flash success! but when i reset the dm355 evm,the linux kernel was boot up and it cann't find the rootfs,It seemed the  kernel params isn't right, so how can i save these kernel params?

    There is a bug in configuration save in DM355 SD card boot and flash utility release 4.

    Today I'll release fixed version for DM355 and DM365. Please look for updates in the forum.

  • Hi Mr.Shulyupin

    I'm using your excellent SD card boot utility on DM355, appreciated.
    But now I am facing on board NAND FLASH programming problem. I need your help.

    When I use your utility and select ERASE, then some of boards shows following erase error bad block message  and can't install kernel into on board NAND Flash.
    I believe your utility support NAND FLASH Bad Block management.

    Is there any suggestions to help me to work your software stable ?

    -----------------------------------------------------------------------------------------------------------------------------------------------

    SD Card DM35x boot loader
    by Constantine Shulyupin http://www.LinuxDriver.co.il/ti/dm355/sd_boot/, sponsored by Applitec
    based on TI DM35x FlashAndBootUtils 1.10 SFT and SpectrumDigital evmdm355 v1
    Compiled on Aug 26 2009 at 18:30:18
    DM355_MHZ=216 DDR_MHZ=171
    PLL1->PLLM=143 PLL2->PLLM=113 PLL1->PLLDIV3=0x0000800F DDR->SDTIMR=0x2A923249 DDR->SDTIMR2=0x4C17C763
    NAND_open
    nand->dataBytesPerPage=2048 nand->pagesPerBlock=64 nand->numBlocks=2048 nand_size=268435456
    sdcard_init
    MMCSD_initCard
    MMCSD_MMCCLK=0x00000100
    sdcard_read sdc_src=0x00001000 dst=0x80001048 len=0x00000200 dst+len=0x80001248 *data0=0xA1ACED00
    flasher_data=0x00053000
    sdcard_read sdc_src=0x0005B000 dst=0x80001048 len=0x00000200 dst+len=0x80001248 *data0=0x00010000
    check_pattern_123
    sdcard_nand_copy
    1 - boot; 2 - install; 3 - erase flash, 4 - nand boot, 5 - test first 16MB of RAM
    u - install ubl only, k - boot kernel from Image by direct jump
    Erasing block 0x00000001 through 0x000007FB.
    LOCAL_flashWaitForStatus E_FAIL erase failed 0x00000046.
    LOCAL_flashWaitForStatus E_FAIL erase failed 0x000005F8.
    DONE

    Best Regards
    Y.Fujioka

  • Hi Mr. Fujioka,

    Thank you for you feedback. I right now is working to improve the utility. I'll test more advanced code to flash erase.

    Meanwhile you could try to flash kernel with u-boot.