도와주세요!!
6410보드에 안드로이드 1.6(홈피에서 제공)를 NAND에 올려 부팅시 계속 리부팅이 됩니다
copy_android_copy_to_nand.sh를 이용하여 카피 도중
s3c-nand: ECC uncorrectable error detected
block 274 is bad
문제가 발생하여 ez-boot에서 메모리 영역을
1,1,2,3,10,480 에서 - 580으로 변경 뒤 정상적으로 카피는 되었으나
NAND 부팅시 아래와 같은 메세지가 뜨며 계속 리부팅이 됩니다.
lib80211: common routines for IEEE802.11 drivers
VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
s3c2410-rtc s3c2410-rtc: hctosys: invalid date/time
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs2 filesystem) readonly on device 31:2.
Freeing init memory: 964K
Warning: unable to open an initial console.
init: cannot open '/initlogo.rle'
yaffs: dev is 32505859 name is "mtdblock3"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.3, "mtdblock3"
s3c-nand: ECC uncorrectable error detected
block 274 is bad
yaffs_read_super: isCheckpointed 0
yaffs: dev is 32505860 name is "mtdblock4"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.4, "mtdblock4"
Division by zero in kernel.
[<c00fe62c>] (__div0+0x0/0x20) from [<c0285dfc>] (__do_div64+0xf0/0x100)
[<c024b8a8>] (YCALCBLOCKS+0x0/0x1c) from [<c024d4b4>] (yaffs_internal_read_super
+0x74c/0xae0)
r4:c75aef20
[<c024cd68>] (yaffs_internal_read_super+0x0/0xae0) from [<c024d86c>] (yaffs2_int
ernal_read_super_mtd+0x24/0x34)
[<c024d848>] (yaffs2_internal_read_super_mtd+0x0/0x34) from [<c0171388>] (get_sb
_bdev+0x10c/0x16c)
[<c017127c>] (get_sb_bdev+0x0/0x16c) from [<c024b204>] (yaffs2_read_super+0x24/0
x30)
[<c024b1e0>] (yaffs2_read_super+0x0/0x30) from [<c016fde0>] (vfs_kern_mount+0x58
/0xa4)
[<c016fd88>] (vfs_kern_mount+0x0/0xa4) from [<c016fe8c>] (do_kern_mount+0x40/0xd
c)
r8:c05721cc r7:c75bf000 r6:00000000 r5:c7381000 r4:00000000
[<c016fe4c>] (do_kern_mount+0x0/0xdc) from [<c0188428>] (do_mount+0x7ac/0x800)
r8:00000000 r7:00000003 r6:c7381000 r5:00000000 r4:00000006
[<c0187c7c>] (do_mount+0x0/0x800) from [<c018850c>] (sys_mount+0x90/0xdc)
[<c018847c>] (sys_mount+0x0/0xdc) from [<c00f9960>] (ret_fast_syscall+0x0/0x2c)
r7:00000015 r6:00000ed0 r5:ff0a0000 r4:00000000
yaffs: NAND geometry problems: chunk size 2048, type is yaffs2, inbandTags 0
init: untracked pid 1799 exited
init: untracked pid 1800 exited
sh-4.0# S3C6400 MFC Driver, (c) 2007 Samsung Electronics
S3C6400 MFC driver module init OK.
init: untracked pid 1809 exited
init: untracked pid 1810 exited
eth0 Link mode : 100 Mb/s Full Duplex.
init: untracked pid 1820 exited
WELCOME EZBOOT V2.4.10 (FALINUX Co.,Ltd) ......EZ-S3C6410(128MB)-HWECC (666MHz)
Program by You Young-chang, Oh Jae-Kyong, Jang Hyung-Gi
Last Modify Jun 8 2012
Detect Samsung NAND 512M 3.3V 8 bit Flash : vid=EC pid=DC
SIZE 512-Mbytes (page=2048, block=128K oob=64) SLC
clear lcd .....
밑줄 친 부분에 보면 NAND 블럭이 문제가 있는거 같은데 어떻게 해야되나요?
파티션 A를 0으로 설정후 efa를 하니 not surpported part_nr = 5라고 뜨네요
rm을 이용하여 app 폴더 삭제하고 다시 카피를 하니 정상적으로 카피가 되는데
부팅시 계속 'servicemanager' 뜨면서 무한 리부팅이네요
LogLevel 20으로 한 로그입니다
init: command 'write' r=0
init: command 'write' r=0
init: command 'write' r=-1
init: command 'write' r=0
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chmod' r=0
init: command 'chmod' r=0
init: command 'chmod' r=0
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=-2
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'chown' r=0
init: command 'setprop' r=0
init: command 'setprop' r=0
init: command 'setprop' r=0
init: command 'setprop' r=0
init: command 'setprop' r=0
init: starting 'console'
init: starting 'servicemanager'
init: starting 'vold'
init: Created socket '/dev/socket/vold' with mode '660', user '0', group '1009'
init: starting 'zygote'
init: Created socket '/dev/socket/zygote' with mode '666', user '0', group '0'
init: starting 'media'
init: starting 'installd'
init: Created socket '/dev/socket/installd' with mode '600', user '1000', group
'1000'
init: starting 'keystore'
init: Created socket '/dev/socket/keystore' with mode '666', user '0', group '0'
init: starting 'mfc_insmod'
init: starting 'mkeznode'
init: starting 'network_init'
init: command 'class_start' r=0
init: processing action 0x28320 (property:persist.service.adb.enable=1)
init: starting 'adbd'
init: command 'start' r=0
init: waitpid returned pid 1796, status = 0000000b
init: process 'servicemanager', pid 1796 exited
init: process 'servicemanager' killing any children in process group
init: service 'zygote' is being killed
init: starting 'zygote'
init: Created socket '/dev/socket/zygote' with mode '666', user '0', group '0'
init: service 'media' is being killed
init: starting 'media'
init: waitpid returned pid 1799, status = 0000000f
init: untracked pid 1799 exited
init: event { 'add', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'add', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'remove', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'remove', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'add', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'add', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'remove', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'remove', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'add', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'add', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'remove', '/devices/virtual/vc/vcs1', 'vc', '', 7, 1 }
init: event { 'remove', '/devices/virtual/vc/vcsa1', 'vc', '', 7, 129 }
init: event { 'add', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: event { 'add', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: event { 'add', '/kernel/uids/1017', 'uids', '', -1, -1 }
init: event { 'remove', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: waitpid returned pid 1800, status = 0000000f
init: untracked pid 1800 exited
sh-4.0# init: event { 'add', '/module/s3c_mfc', 'module', '', -1, -1 }
S3C6400 MFC Driver, (c) 2007 Samsung Electronics
init: event { 'add', '/devices/virtual/misc/s3c-mfc', 'misc', '', 10, 252 }
init: event { 'add', '/bus/platform/drivers/s3c-mfc', 'drivers', '', -1, -1 }
S3C6400 MFC driver module init OK.
init: waitpid returned pid 1806, status = 00000000
init: process 'mkeznode', pid 1806 exited
init: waitpid returned pid 1805, status = 00000000
init: process 'mfc_insmod', pid 1805 exited
init: waitpid returned pid 1807, status = 00000000
init: process 'network_init', pid 1807 exited
init: waitpid returned pid 1811, status = 0000000b
init: process 'media', pid 1811 exited
init: process 'media' killing any children in process group
init: event { 'remove', '/kernel/uids/1013', 'uids', '', -1, -1 }
eth0 Link mode : 100 Mb/s Full Duplex.
init: starting 'servicemanager'
init: starting 'media'
init: waitpid returned pid 1829, status = 0000000b
init: process 'servicemanager', pid 1829 exited
init: process 'servicemanager' killing any children in process group
init: service 'zygote' is being killed
init: starting 'zygote'
init: Created socket '/dev/socket/zygote' with mode '666', user '0', group '0'
init: service 'media' is being killed
init: starting 'media'
init: event { 'add', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: event { 'add', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: event { 'remove', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: waitpid returned pid 1831, status = 0000000f
init: untracked pid 1831 exited
init: waitpid returned pid 1809, status = 0000000f
init: untracked pid 1809 exited
init: waitpid returned pid 1820, status = 00000000
init: untracked pid 1820 exited
init: waitpid returned pid 1834, status = 0000000b
init: process 'media', pid 1834 exited
init: process 'media' killing any children in process group
init: event { 'remove', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: starting 'servicemanager'
init: starting 'media'
init: waitpid returned pid 1838, status = 0000000b
init: process 'servicemanager', pid 1838 exited
init: process 'servicemanager' killing any children in process group
init: service 'zygote' is being killed
init: starting 'zygote'
init: Created socket '/dev/socket/zygote' with mode '666', user '0', group '0'
init: service 'media' is being killed
init: starting 'media'
init: waitpid returned pid 1832, status = 0000000f
init: untracked pid 1832 exited
init: event { 'add', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: event { 'add', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: event { 'remove', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: waitpid returned pid 1840, status = 0000000f
init: untracked pid 1840 exited
init: waitpid returned pid 1837, status = 0000000f
init: untracked pid 1837 exited
init: waitpid returned pid 1844, status = 0000000b
init: process 'media', pid 1844 exited
init: process 'media' killing any children in process group
init: event { 'remove', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: starting 'servicemanager'
init: starting 'media'
init: waitpid returned pid 1847, status = 0000000b
init: process 'servicemanager', pid 1847 exited
init: process 'servicemanager' killing any children in process group
init: service 'zygote' is being killed
init: starting 'zygote'
init: Created socket '/dev/socket/zygote' with mode '666', user '0', group '0'
init: service 'media' is being killed
init: starting 'media'
init: waitpid returned pid 1841, status = 0000000f
init: untracked pid 1841 exited
init: event { 'add', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: event { 'add', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: event { 'remove', '/kernel/uids/1000', 'uids', '', -1, -1 }
init: waitpid returned pid 1849, status = 0000000f
init: untracked pid 1849 exited
init: waitpid returned pid 1846, status = 0000000f
init: untracked pid 1846 exited
init: waitpid returned pid 1853, status = 0000000b
init: process 'media', pid 1853 exited
init: process 'media' killing any children in process group
init: event { 'remove', '/kernel/uids/1013', 'uids', '', -1, -1 }
init: starting 'servicemanager'
init: starting 'media'
init: waitpid returned pid 1856, status = 0000000b
init: process 'servicemanager', pid 1856 exited
init: process 'servicemanager' killing any children in process group
init: critical process 'servicemanager' exited 4 times in 4 minutes; rebooting i
nto recovery mode
Restarting system with command 'recovery'.
안녕하세요.
EZBOOT에서 NAND 파티션을 전체를 잡아 주세요. ( 파티션 설정시 A 부분을 0 으로 설정하면 전체가 잡힙니다. )
그런 후, NAND 블럭을 부트로더 상태에서 지워주시기 바랍니다.
부트로더의 다음의 명령어를 이용하면 A 영역을 삭제 하실 수 있습니다.
efa
그런후 초기에 받은 커널과 램디스크를 이용하여 부팅을 하시고 mount 명령을 이용하여 마운트가 정상적인지 확인해 보세요.
마운트가 된후 NAND에 데이터를 쓰면 잘 써지는지 확인해 보세요.
NAND가 문제가 있는지 없는지 확인 하실 수 있습니다.
NAND가 램디스크를 이용하여 정상적이라면 다시 안드로이드로 작업을 해보시기 바합니다.