Downloading linux image in devkit8000

Hi all
  I recently purchased DevKit8000 board,i tested the wince cases on
board,after that
the Linux image in the flash gets corrupted,How to do download the
Linux image to
flash ,I followed the steps in section 7.2 of DevKit8000_user manual
by booting in
sdcard(tried with sdcard and nand images) and invoked in run command ,
but it’s
showing following error
                2097152 bytes read: ERROR
## Booting kernel from Legacy Image at 80300000 ...
   Image Name: Linux-2.6.28-rc9-omap1-svn237-di
   Image Type: ARM Linux Kernel Image (uncompressed)
   Data Size: 1992416 Bytes = 1.9 MB
   Load Address: 80008000
   Entry Point: 80008000
   Verifying Checksum ... Bad Data CRC
ERROR: can"t get kernel image!

Kindly provide necessary suggestions to resolve this problem

Regards
Subram

Hi Subram,

I had the same problem and got it back to working condition by
following the chapter 7.2.
You need to have a SD formated as FAT32 and load it with
the contents of the folder linux\image\nandflash of the CD.
Then boot with it in the SD card slot and when it gives you the
countdown, press space to stop it and be presented with a prompt.
After that you can give the commands described in 7.2

Christos

hi
Thanks for your reply,
I have been repeating the operations you had mentioned for the past
1.5 days,but still its not working,i have only single partition in my
SDCARD,if this is wrong how to one more partition in SDCARD using
windows.I format SD in FAT32 ,copied the contents in linux\image\sdcard
\ to the sdcard, when I inserted in board, power on, press BOOT key
(boot from sdcard),its showing the error below.

Texas Instruments X-Loader 1.41
ECC Failed, page 0x00081000
90 d0 9f e5 95 5f 0 ea 0 0 0 84 0 0 0 80 80 0 0 0 0 0 0 8c 0 0 0 c 10
0 0 0 0 0
0 8d 0 0 0 15 10 0 0 0 0 0 0 91 0 0 0 48 10 0 0 0 0 0 0 92 0 0 0 49 1
0 0 0 0 0
0 93 0 0 0 68 10 0 0 0 0 0 0 94 0 0 0 6c 10 0 0 0 0 0 0 95 0 0 0 6d 10
0 0 0 0 0
0 96 0 0 0 6e 10 0 0 0 0 0 0 97 0 0 20 40 1 0 0 0 0 0 0 98 0 0 0 5c
10 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 f0 87 0 0 0 0 0 0 0 0 ef 2c a 4a 0 0 0 0 2 0
0 0 26 0
0 0 b8 e8 0 0 b8 dc 0 0 4e 0 4b 0 20 0 66 0 72 0 6f 0 6d 0 20 0 4e 0
41 0 4e 0 4
4 0 0 0 0 0 53 0 44 0 43 0 61 0 72 0 64 0 20 0 46 0 49 0 4c 0 45 0 20
0 0 0 0 0
44 0 4d 0 39 0 30 0 30 0 30 0

Kindly suggest how to resolve this issue,Its not entering in booting
its showing the error immediately i switch in the board by pressing
the BOOT key

Thanks and Regards
Subram

use 1.42

Subram,

I mentioned

contents of the folder linux\image\nandflash

and not linux\image\sdcard

You are loading into SD not the proper files.

And for your question on SD, just one FAT32 partition
is enough because nothing else will be loaded.

Christos

Hi
Of course linux\image\nandflash this is not working .Both SDCARD and
Nand flash mode are not working if it is through Nand flsh when i
inserted and booted the board it shows the following error

Texas Instruments X-Loader 1.41
ECC Failed, page 0x00081000
90 d0 9f e5 95 5f 0 ea 0 0 0 84 0 0 0 80 80 0 0 0 0 0 0 8c 0 0 0 c 10
0 0 0 0 0
0 8d 0 0 0 15 10 0 0 0 0 0 0 91 0 0 0 48 10 0 0 0 0 0 0 92 0 0 0 49 1
0 0 0 0 0
0 93 0 0 0 68 10 0 0 0 0 0 0 94 0 0 0 6c 10 0 0 0 0 0 0 95 0 0 0 6d 10
0 0 0 0 0
0 96 0 0 0 6e 10 0 0 0 0 0 0 97 0 0 20 40 1 0 0 0 0 0 0 98 0 0 0 5c
10 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 f0 87 0 0 0 0 0 0 0 0 ef 2c a 4a 0 0 0 0 2 0
0 0 26 0
0 0 b8 e8 0 0 b8 dc 0 0 4e 0 4b 0 20 0 66 0 72 0 6f 0 6d 0 20 0 4e 0
41 0 4e 0 4
4 0 0 0 0 0 53 0 44 0 43 0 61 0 72 0 64 0 20 0 46 0 49 0 4c 0 45 0 20
0 0 0 0 0
44 0 4d 0 39 0 30 0 30 0 30 0

In the case of sdcard boot mode after giving the boot parameters
mentioned in 7.1 section of user manual,then pressed rest key it shows
kernel image not found.

Regards
subram

Subram,

the whole process of paragraph 7.2 is not to boot again into an os and
I
guess you miss the point with the sdcard and nandflash folders.

The process is to get into U-Boot command prompt and load with the
instructions
in 7.2 the proper image in flash for X-Load, U-Boot, uImage kernel and
finally
the filesystem. After that you can boot normally again into an OS.

That will happen when you load a SD with the files of linux\image
\nandflash,
boot the board with the SD in place, and follow the instructions in
7.2
After that your board can boot up again without a SD card, it can boot
from flash.

I had the same problem myself when I booted the WinCE, it erased the
u-boot in flash so the board could not boot again,
then I followed the 7.2 paragraph and the board is again booting from
flash.

I hope that helps.

Christos

Hi
Sorry i can't able to follow your suggestion,can u you please
elaborate in detail what to do right from scratch for downloading the
linux kernel image and make it boot from flash

Regards
Subram

Hi

I section 7.2.4

OMAP3 DevKit8000 # mmcinit
OMAP3 DevKit8000 # fatload mmc 0:1 80000000 ubi.img
reading ubi.img
12845056 bytes read
OMAP3 DevKit8000 # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 268435456! "for me this value
is 134217728"

OMAP3 DevKit8000 # nand ecc sw
OMAP3 DevKit8000 # nand erase 680000 7980000

OMAP3 DevKit8000 # nand write.i 80000000 680000 $(filesize) "i dont
know this size "

I had pasted the run command below kindly go through this and correct
me where is the error

Boot run commands

Texas Instruments X-Loader 1.41
Starting on with MMC
Reading boot sector

1086088 Bytes Read from MMC
Starting OS Bootloader from MMC...

U-Boot 1.3.3-svn239 (Apr 17 2009 - 10:39:41)

OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 DevKit8000 Board + LPDDR/NAND
DRAM: 128 MB
NAND: 128 MiB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
OMAP3 DevKit8000 # mmcinit
OMAP3 DevKit8000 # fatload mmc 0:1 80000000 x-load.bin.ift_for_NAND
reading x-load.bin.ift_for_NAND

10492 bytes read
OMAP3 DevKit8000 # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 134217728!
NAND flash successfully unlocked
OMAP3 DevKit8000 # nand ecc hw
OMAP3 DevKit8000 # nand erase 0 80000

NAND erase: device 0 offset 0x0, size 0x80000
Erasing at 0x60000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 0 80000

NAND write: device 0 offset 0x0, size 0x80000

Writing data at 0x7f800 -- 100% complete.
524288 bytes written: OK
OMAP3 DevKit8000 # mmcinit
OMAP3 DevKit8000 # fatload mmc 0:1 80000000 flash-uboot.bin
reading flash-uboot.bin

1086032 bytes read
OMAP3 DevKit8000 # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 134217728!
NAND flash successfully unlocked
OMAP3 DevKit8000 # nand ecc sw
OMAP3 DevKit8000 # nand erase 80000 160000

NAND erase: device 0 offset 0x80000, size 0x160000
Erasing at 0x1c0000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 80000 160000

NAND write: device 0 offset 0x80000, size 0x160000

Writing data at 0x1df800 -- 100% complete.
1441792 bytes written: OK
OMAP3 DevKit8000 # mmcinit
OMAP3 DevKit8000 # fatload mmc 0:1 80000000 uImage
reading uImage

1992480 bytes read
OMAP3 DevKit8000 # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 134217728!
NAND flash successfully unlocked
OMAP3 DevKit8000 # nand ecc sw
OMAP3 DevKit8000 # nand erase 280000 200000

NAND erase: device 0 offset 0x280000, size 0x200000
Skipping bad block at 0x003e0000
Erasing at 0x460000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 280000 200000

NAND write: device 0 offset 0x280000, size 0x200000

Bad block at 0x3e0000 in erase block from 0x3e0000 will be skipped
Writing data at 0x49f800 -- 100% complete.
2097152 bytes written: OK
OMAP3 DevKit8000 # mmcinit
OMAP3 DevKit8000 # fatload mmc 0:1 80000000 ubi.img
reading ubi.img

12976128 bytes read
OMAP3 DevKit8000 # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 134217728!
NAND flash successfully unlocked
OMAP3 DevKit8000 # nand ecc sw
OMAP3 DevKit8000 # nand erase 680000 7980000

NAND erase: device 0 offset 0x680000, size 0x7980000
Skipping bad block at 0x010e0000
Skipping bad block at 0x03a80000
Skipping bad block at 0x058a0000
Erasing at 0x7fe0000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 680000 7980000

NAND write: device 0 offset 0x680000, size 0x7980000

Bad block at 0x10e0000 in erase block from 0x10e0000 will be skipped
Bad block at 0x3a80000 in erase block from 0x3a80000 will be skipped
Bad block at 0x58a0000 in erase block from 0x58a0000 will be skipped
Writing data at 0x7f28800 -- 99% complete.
Data did not fit into device, due to bad blocks
127401984 bytes written: ERROR

after this when i pree reset key it shows the following

Texas Instruments X-Loader 1.41
Starting OS Bootloader...

U-Boot 1.3.3-svn239 (Apr 17 2009 - 10:43:28)

OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 DevKit8000 Board + LPDDR/NAND
DRAM: 128 MB
NAND: 128 MiB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0

NAND read: device 0 offset 0x280000, size 0x200000

Bad block at 0x3e0000 in erase block from 0x3e0000 will be skipped
Reading data from 0x47c000 -- 93% complete.nand_read_ecc: Failed ECC
read, page
0x00000900
nand_read_ecc: Failed ECC read, page 0x00000900
nand_read_ecc: Failed ECC read, page 0x00000900
reading NAND page at offset 0x480000 failed
2097152 bytes read: ERROR
## Booting kernel from Legacy Image at 80300000 ...
   Image Name: Linux-2.6.28-rc9-omap1-svn237-di
   Image Type: ARM Linux Kernel Image (uncompressed)
   Data Size: 1992416 Bytes = 1.9 MB
   Load Address: 80008000
   Entry Point: 80008000
   Verifying Checksum ... Bad Data CRC
ERROR: can't get kernel image!
OMAP3 DevKit8000 #

You are giving the wrong parameters in

OMAP3 DevKit8000 # nand write.i 80000000 680000 7980000

during the ubi.img flash (where did you find that 7980000 at the end?)

You need to give exactly
OMAP3 DevKit8000 # nand write.i 80000000 680000 $(filesize)
and do not substitute the $(filesize) with any number
The number you placed yourself overruned the size of flash.

Go through the manual in the order as indicated there,
7.2.1 - 7.2.2 - 7.2.3 -7.2.4 - 7.2.5 and type the commands
exactly as they are printed.

Actually a good read of the x-load and u-boot programs
and their parameters would be to your benefit so you will
be in a position to understand what exactly are doing despite
that the manual is describing the recover process commands.

Christos

Christos

Hi
If you see the outputs the numbers are different from section 7.2 user
manual particularly in the last two section before boot parameters,is
that cause an error

Regards
subram

That is another issue you mention here,
regardless of the different output you have to type the commands
as indicated before.

Now regarding the difference in numbers, that is normal
since the manual got written at a previous built of uImage and
ubi.img thus the length is different.
If you built the uImage or ubi.img yourself, you also gonna
get different numbers too.

Follow the steps from the start exactly as indicated without
any change in paramaters and it will be ok.

We are facing some error while extracting the source files from CD:/
linux/source/rootfs.tar.bz2 as below

/***********************************************************

! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create
olatile\tmp
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create
volatile\run
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create
volatile\log
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create
volatile\lock
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\mountnfs.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\sysfs.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\devpts.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\banner
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\modutils.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\ramdisk
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\hostname.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\populate-volatile.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\alignment.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\finish.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\networking
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\mountall.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\bootmisc.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\udev
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\checkroot.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\save-rtc.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\reboot
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\networking
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\umountfs
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\sendsigs
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\syslog
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create ..
\init.d\umountnfs.sh
! C:\Users\subram\Desktop\source\rootfs.tar.bz2: Cannot create \proc
\mounts

*****************************************************************/

We face this error in both linux and windows when try to extract them

In windows I just give extract to /rootfs

In linux
/***************************************************************
mkdir /home/embest/work
cd /home/embest/work
sudo tar xvf /media/cdrom/linux/source/rootfs.tar.bz2

***************************************************************************/

We are doing this to generate the images for nand flash

Kindly reply the error is in the files provided in the CD or any
other solutions are there

subram,

We are doing this to generate the images for nand flash

Why do you want to extract the contents?

For re-installing the rootfs into the flash you do not need that
action, it is not mentioned anywhere. How did you
come up with this?
The rootfs is already in the ubi.img and it will be written into
the flash if you follow the instructions in 7.2.4

As I told you.
1. make a FAT32 SD card
2. Copy the contents of linux\image\nandflash onto the SD card.
To make this absolutely clear, JUST COPY, DO NOT EXTRACT
ANYTHING
3. Put the SD card into the slot and boot the board
4. When it boots and got a countdown press a key and get to
a u-boot prompt.
5. Follow, EXACTLY as it is written the steps in 7.2.1, 7.2.2,
7.2.3, 7.2.4, 7.2.5

On your next reboot, the board will boot from its flash without
the need of the SD card.

(I'm ready to give up...)

Hi
When i used the X-Loader 1.42 its showing unrecognized chiop 1.42
kindly suggest which version should used for DevKit8000 board
thanks
Subram

Hi
There are two images given image/nandflash/uImage image/sdcard/uImage
whether both are same(according to thier size 1946KB) or each are
different,
I simply copied each command from user manual from section 7.2.1 to
7.2.4 and boot params still i am getting the same error

Regards
Subram

subram,

Lets take a step back.
Up to now I assumed that you know how to prepare a SD card
in order to boot.
The SD card in order to be bootable has to have the initial files
MLO and u-boot.bin, only these files are taken from linux\images
\sdcard.
Care has to be given that MLO should be the first file to be copied
in the empty SD card and then the u-boot.bin second.
With these files you have a bootable SD card.
Next you have to copy the four files from linux\image\nandflash
x-load.bin.ift_for_NAND
flash-uboot.bin
uImage
ubi.img

After that, your SD card has to have as contents
these files

MLO
u-boot.bin
x-load.bin.ift_for_NAND
flash-uboot.bin
uImage
ubi.img

and the uImage as you see has been taken from linux\image\nandflash

If you manage to have this SD card, then you are ready to
execute the 7.2.1 up to 7.2.5

Christos

Hi
While doing section 7.2.3 and 7.2.4 during nand erase and nand write
its showing skipping bad block "0x..." as shown below

/*********************************************************************

/******Section 7.2.3:Updating the kernel image(uImage)********/

OMAP3 DevKit8000 # nand erase 280000 200000

NAND erase: device 0 offset 0x280000, size 0x200000
Skipping bad block at 0x003e0000
Erasing at 0x460000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 280000 200000

NAND write: device 0 offset 0x280000, size 0x200000

Bad block at 0x3e0000 in erase block from 0x3e0000 will be skipped
Writing data at 0x49f800 -- 100% complete.
2097152 bytes written: OK

/*********Section 7.2.4:Updating the file system image(ubi.img)
************/

NAND erase: device 0 offset 0x680000, size 0x7980000
Skipping bad block at 0x010e0000
Skipping bad block at 0x03a80000
Skipping bad block at 0x058a0000
Erasing at 0x7fe0000 -- 100% complete.
OK
OMAP3 DevKit8000 # nand write.i 80000000 680000 7980000

NAND write: device 0 offset 0x680000, size 0x7980000

Bad block at 0x10e0000 in erase block from 0x10e0000 will be skipped
Bad block at 0x3a80000 in erase block from 0x3a80000 will be skipped
Bad block at 0x58a0000 in erase block from 0x58a0000 will be skipped
Writing data at 0x7f28800 -- 99% complete.
Data did not fit into device, due to bad blocks
127401984 bytes written: ERROR

********************************************************************/

What may be the problem?

Regards
Subram

subram,

You keep repeating the same errors, you are already posted this and I
guess you do not read the reply messages here.

I repeat the answer

"You are giving the wrong parameters in

OMAP3 DevKit8000 # nand write.i 80000000 680000 7980000

during the ubi.img flash (where did you find that 7980000 at the
end?)

You need to give exactly
OMAP3 DevKit8000 # nand write.i 80000000 680000 $(filesize)
and do not substitute the $(filesize) with any number
The number you placed yourself overruned the size of flash.

Go through the manual in the order as indicated there,
7.2.1 - 7.2.2 - 7.2.3 -7.2.4 - 7.2.5 and type the commands
exactly as they are printed.

Actually a good read of the x-load and u-boot programs
and their parameters would be to your benefit so you will
be in a position to understand what exactly are doing despite
that the manual is describing the recover process commands.

Christos "

Regarding the Bad Block messages, the initialization programs
always identify automatically the bad blocks of memory devices
and mark them so they will not give a problem later on.

Hi,
Data did not fit into device, due to bad blocks
127401984 bytes written: ERROR