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.

Flashing Android Root File System to NAND - am3517evm

 

Hi,

 

I am flashing the root file system to nand with am3517evm board, I start from mmc first, then in the shell command, do following.

 

[prompt]$ flash_eraseall –j /dev/mtd/mtd4

[prompt]$ mount t jffs2 /dev/block/mtdblock4 /media/nand

[prompt]$ cd /media/nand

[prompt]$ busybox tar xzf /home/root/rootfs_am35x.tar.gz

 

in the u-boot commands, I changed the nandargs by typing:

 

setenv nandargs 'setenv bootargs console=${console} root=/dev/mtdblock4 rw rootfstype=jffs2 init=/init'

saveenv

 

after reboot, the system stops at the android robot screen, and can't enter the android system.

 

on the serial console, it logs

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

input: Feeling-tech-USB product Feeling-tech-USB product as /devices/platform/ehci-omap.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input1

generic-usb 0003:1D57:FA01.0001: input: USB HID v1.10 Keyboard [Feeling-tech-USB product Feeling-tech-USB product] on usb-ehci-omap.0-1.3/input0

Empty flash at 0x1c3759f8 ends at 0x1c376000

VFS: Mounted root (jffs2 filesystem) on device 31:4.

Freeing init memory: 172K

Warning: unable to open an initial console.

init: cannot find '/system/bin/playmp3', disabling 'bootsound'

sh: can't access tty; job control turned off

# enabling adb

adb_open

android_usb gadget: high speed config #1: android

JFFS2 notice: (838) check_node_data: wrong data CRC in data node at 0x02d70088: read 0xdf3cbc18, calculated 0xddaa66c4.

request_suspend_state: wakeup (3->0) at 123791046145 (2000-01-01 04:59:40.127746582 UTC)

init: untracked pid 839 exited

request_suspend_state: wakeup (0->0) at 134390258791 (2000-01-01 04:59:50.726959228 UTC)

init: untracked pid 912 exited

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

then the message such as "request_suspend_state: wakeup (3->0) at xxx init: untracked pid xxx exited"  shows up repeatedly.

 

on the Dalvik Debug Monitor, it logs

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

01-01 05:10:38.210: DEBUG/dalvikvm(2375): Stale deps in cache file; removing and retrying

01-01 05:10:38.414: INFO/(2374): ServiceManager: 0xad08

01-01 05:10:38.414: WARN/AudioHardwareInterface(2374): Using stubbed audio hardware. No sound will be produced.

01-01 05:10:38.414: DEBUG/AudioHardwareInterface(2374): setMode(NORMAL)

01-01 05:10:38.414: INFO/CameraService(2374): CameraService started: pid=2374

01-01 05:10:38.421: INFO/AudioFlinger(2374): AudioFlinger's thread 0xb370 ready to run

01-01 05:10:41.140: DEBUG/dalvikvm(2375): DexOpt: --- BEGIN 'core.jar' (bootstrap=1) ---

01-01 05:10:41.187: DEBUG/dalvikvm(2385): creating instr width table

01-01 05:10:41.187: ERROR/dalvikvm(2385): unable to mmap DEX cache: Invalid argument

01-01 05:10:41.187: ERROR/dalvikvm(2385): Optimization failed

01-01 05:10:41.187: WARN/dalvikvm(2375): DexOpt: --- END 'core.jar' --- status=0xff00, process failed

01-01 05:10:41.187: ERROR/dalvikvm(2375): Unable to extract+optimize DEX from '/system/framework/core.jar'

01-01 05:10:41.187: DEBUG/dalvikvm(2375): Unable to process classpath element '/system/framework/core.jar'

01-01 05:10:41.187: DEBUG/dalvikvm(2375): DexOpt: incorrect opt magic number (0xff ff ff ff)

01-01 05:10:41.187: DEBUG/dalvikvm(2375): Stale deps in cache file; removing and retrying

01-01 05:10:42.226: DEBUG/dalvikvm(2375): DexOpt: --- BEGIN 'ext.jar' (bootstrap=1) ---

01-01 05:10:42.265: DEBUG/dalvikvm(2386): creating instr width table

01-01 05:10:42.265: ERROR/dalvikvm(2386): unable to mmap DEX cache: Invalid argument

01-01 05:10:42.265: ERROR/dalvikvm(2386): Optimization failed

01-01 05:10:42.273: WARN/dalvikvm(2375): DexOpt: --- END 'ext.jar' --- status=0xff00, process failed

01-01 05:10:42.273: ERROR/dalvikvm(2375): Unable to extract+optimize DEX from '/system/framework/ext.jar'

01-01 05:10:42.273: DEBUG/dalvikvm(2375): Unable to process classpath element '/system/framework/ext.jar'

01-01 05:10:42.273: DEBUG/dalvikvm(2375): DexOpt: incorrect opt magic number (0xff ff ff ff)

01-01 05:10:42.273: DEBUG/dalvikvm(2375): Stale deps in cache file; removing and retrying

01-01 05:10:47.140: DEBUG/dalvikvm(2375): DexOpt: --- BEGIN 'framework.jar' (bootstrap=1) ---

01-01 05:10:47.187: DEBUG/dalvikvm(2393): creating instr width table

01-01 05:10:47.187: ERROR/dalvikvm(2393): unable to mmap DEX cache: Invalid argument

01-01 05:10:47.187: ERROR/dalvikvm(2393): Optimization failed

01-01 05:10:47.187: WARN/dalvikvm(2375): DexOpt: --- END 'framework.jar' --- status=0xff00, process failed

01-01 05:10:47.187: ERROR/dalvikvm(2375): Unable to extract+optimize DEX from '/system/framework/framework.jar'

01-01 05:10:47.187: DEBUG/dalvikvm(2375): Unable to process classpath element '/system/framework/framework.jar'

01-01 05:10:47.187: DEBUG/dalvikvm(2375): DexOpt: incorrect opt magic number (0xff ff ff ff)

01-01 05:10:47.187: DEBUG/dalvikvm(2375): Stale deps in cache file; removing and retrying

01-01 05:10:47.367: DEBUG/dalvikvm(2375): DexOpt: --- BEGIN 'android.policy.jar' (bootstrap=1) ---

01-01 05:10:47.414: DEBUG/dalvikvm(2394): creating instr width table

01-01 05:10:47.414: ERROR/dalvikvm(2394): unable to mmap DEX cache: Invalid argument

01-01 05:10:47.414: ERROR/dalvikvm(2394): Optimization failed

01-01 05:10:47.414: WARN/dalvikvm(2375): DexOpt: --- END 'android.policy.jar' --- status=0xff00, process failed

01-01 05:10:47.414: ERROR/dalvikvm(2375): Unable to extract+optimize DEX from '/system/framework/android.policy.jar'

01-01 05:10:47.414: DEBUG/dalvikvm(2375): Unable to process classpath element '/system/framework/android.policy.jar'

01-01 05:10:47.414: DEBUG/dalvikvm(2375): DexOpt: incorrect opt magic number (0xff ff ff ff)

01-01 05:10:47.414: DEBUG/dalvikvm(2375): Stale deps in cache file; removing and retrying

01-01 05:10:48.750: DEBUG/dalvikvm(2375): DexOpt: --- BEGIN 'services.jar' (bootstrap=1) ---

01-01 05:10:48.796: DEBUG/dalvikvm(2399): creating instr width table

01-01 05:10:48.796: ERROR/dalvikvm(2399): unable to mmap DEX cache: Invalid argument

01-01 05:10:48.796: ERROR/dalvikvm(2399): Optimization failed

01-01 05:10:48.796: WARN/dalvikvm(2375): DexOpt: --- END 'services.jar' --- status=0xff00, process failed

01-01 05:10:48.796: ERROR/dalvikvm(2375): Unable to extract+optimize DEX from '/system/framework/services.jar'

01-01 05:10:48.796: DEBUG/dalvikvm(2375): Unable to process classpath element '/system/framework/services.jar'

01-01 05:10:48.796: ERROR/dalvikvm(2375): ERROR: no valid entries found in bootclasspath '/system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar'

01-01 05:10:48.796: DEBUG/dalvikvm(2375): VM cleaning up

01-01 05:10:48.796: DEBUG/dalvikvm(2375): LinearAlloc 0x0 used 4100 of 5242880 (0%)

01-01 05:10:48.796: WARN/dalvikvm(2375): JNI_CreateJavaVM failed

01-01 05:10:48.796: ERROR/AndroidRuntime(2375): JNI_CreateJavaVM failed

01-01 05:10:48.828: INFO/ServiceManager(833): service 'media.audio_flinger' died

01-01 05:10:48.828: INFO/ServiceManager(833): service 'media.player' died

01-01 05:10:48.828: INFO/ServiceManager(833): service 'media.camera' died

01-01 05:10:48.828: INFO/ServiceManager(833): service 'media.audio_policy' died

01-01 05:10:49.195: DEBUG/AndroidRuntime(2401): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<

01-01 05:10:49.195: DEBUG/AndroidRuntime(2401): CheckJNI is ON

01-01 05:10:49.195: DEBUG/dalvikvm(2401): creating instr width table

01-01 05:10:49.195: DEBUG/dalvikvm(2401): DexOpt: incorrect opt magic number (0xff ff ff ff)

01-01 05:10:49.195: DEBUG/dalvikvm(2401): Stale deps in cache file; removing and retrying

01-01 05:10:49.460: INFO/(2400): ServiceManager: 0xad08

01-01 05:10:49.460: WARN/AudioHardwareInterface(2400): Using stubbed audio hardware. No sound will be produced.

01-01 05:10:49.460: DEBUG/AudioHardwareInterface(2400): setMode(NORMAL)

01-01 05:10:49.460: INFO/CameraService(2400): CameraService started: pid=2400

01-01 05:10:49.468: INFO/AudioFlinger(2400): AudioFlinger's thread 0xb370 ready to run

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

 

Process list:

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

USER     PID   PPID  VSIZE  RSS     WCHAN    PC         NAME

root      1     0     300    212   c00bc454 0000cc6c S /init

root      2     0     0      0     c006dec8 00000000 S kthreadd

root      3     2     0      0     c0060984 00000000 S ksoftirqd/0

root      4     2     0      0     c0084b14 00000000 S watchdog/0

root      5     2     0      0     c006aea8 00000000 S events/0

root      6     2     0      0     c006aea8 00000000 S khelper

root      10    2     0      0     c00734a0 00000000 S async/mgr

root      13    2     0      0     c006aea8 00000000 S suspend

root      213   2     0      0     c0099850 00000000 S sync_supers

root      215   2     0      0     c009a080 00000000 S bdi-default

root      217   2     0      0     c006aea8 00000000 S kblockd/0

root      229   2     0      0     c006aea8 00000000 S ksuspend_usbd

root      233   2     0      0     c02291d8 00000000 S khubd

root      236   2     0      0     c025b6bc 00000000 S kseriod

root      258   2     0      0     c006aea8 00000000 S kmmcd

root      275   2     0      0     c006aea8 00000000 S musb_hdrc

root      277   2     0      0     c006aea8 00000000 S rpciod/0

root      284   2     0      0     c0084d0c 00000000 S khungtaskd

root      285   2     0      0     c0094ef8 00000000 S kswapd0

root      287   2     0      0     c006aea8 00000000 S aio/0

root      288   2     0      0     c006aea8 00000000 S nfsiod

root      289   2     0      0     c006aea8 00000000 S crypto/0

root      437   2     0      0     c006aea8 00000000 S scsi_tgtd/0

root      444   2     0      0     c01f67ac 00000000 S mtdblockd

root      519   2     0      0     c006aea8 00000000 S kondemand/0

root      520   2     0      0     c006aea8 00000000 S kconservative/0

root      527   2     0      0     c006aea8 00000000 S usbhid_resumer

root      570   2     0      0     c01605c8 00000000 S jffs2_gcd_mtd4

root      831   1     700    324   c005e684 afe0d60c S /system/bin/sh

system    833   1     764    284   c02ab660 afe0c9dc S /system/bin/servicemanager

root      835   1     800    364   c00bc454 afe0cb04 S /system/bin/vold

root      836   1     628    256   c0303114 afe0d36c S /system/bin/debuggerd

root      837   1     1272   592   c007173c afe0d04c S /system/bin/rild

bluetooth 840   1     1068   516   c00bc454 afe0d7dc S /system/bin/dbus-daemon

root      841   1     756    272   c0303114 afe0d36c S /system/bin/installd

keystore  843   1     1600   408   c0303114 afe0d36c S /system/bin/keystore

root      845   1     4396   184   ffffffff 0000f444 S /sbin/adbd

root      1075  845   700    324   c01bc344 afe0c73c S /system/bin/sh

root      2706  845   700    324   c005e684 afe0d60c S /system/bin/sh

root      2709  2706  636    328   c02aef54 afe0c73c S logcat

root      3958  1     18044  3984  ffffffff afe0c9dc S /system/bin/mediaserver

root      3959  1     31500  2904  00000000 afe0c75c R zygote

root      3971  831   848    332   00000000 afe0c73c R ps

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

 

I am confused, I don't know what to do, it seems some processes start ok, but other processes generated by zygote is not working.

 

Does anyone know what is the problem, or can anybody give me any suggestions?

  • Android recommends yaffs2 as the flash filesystem. You appear to be using jffs2.

    Also have you verified the filesystem by booting it through SDcard. You would of course need to make sure that your init.rc is setup for sdmmc boot.

  • How to create a yaffs2 file system on the flash, I know there is a tool to create jffs2 file system named "flash_eraseall", but it can't format flash to yaffs2.

    Yes, I have verified the filesystem is ok, I can boot from the mmc which is of the same filesystem.

    How to find whether the init.rc is setup for sdmmc or flash?

    I am using the same filesystem as that in sd/mmc, which is of the same init.rc file.

     

  • Kevin Chow said:

    How to create a yaffs2 file system on the flash, I know there is a tool to create jffs2 file system named "flash_eraseall", but it can't format flash to yaffs2.

    Try the instructions here: http://processors.wiki.ti.com/index.php/TI-Android-FroYo-DevKit-V2.2_UserGuide#NAND_Booting

     

  • Vishveshwar Bhat,

    As you told me, I am using yaffs2 as the flash filesystem, and android can run on my NAND flash.

    But during booting, there are lots of error messages such as "**>> yaffs write required 2 attempts", I am not sure what is wrong, and finally the system is up, all the processes can be found in the Process List.

    Do you know how to fix the problem "**>> yaffs write required 2 attempts"?

     

    Thanks,

    Kevin