기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.

커널 부팅중 오류로 부팅이 되지 않습니다.

정보는 아래와 같습니다.


CPU : Exynos4412 pop (Ram 1G)

OS : android 4.2.2

kernel : 3.4 27


CPU: S5PC220 [Samsung SOC on SMP Platform Base on ARM CortexA9]

APLL = 1200MHz, MPLL = 800MHz

DRAM:  1023 MiB

vdd_arm: 1200

vdd_int: 1000

vdd_g3d: 1000

vdd_mif: 1000

TrustZone Enabled BSP

BL1 version: 20111128



Checking Boot Mode ... EMMC4.41

GPBCON=0x00000000

GPV2CON=0x00000000

REVISION: 1.1

NAME: S5P_MSHC4

MMC Device 0: 3728 MB

MMC Device 1: 7580 MB

MMC Device 2 not found

*** Warning - using default environment


Net:   No ethernet found.

Hit any key to stop autoboot:  0

reading kernel..device 0 Start 1049, Count 10240

MMC read: dev # 0, block # 1049, count 10240 ... 10240 blocks read: OK

completed

reading RFS..device 0 Count 11289, Start 2048

MMC read: dev # 0, block # 11289, count 2048 ... 2048 blocks read: OK

completed

Boot with zImage

## Loading init Ramdisk from Legacy Image at 41000000 ...

   Image Name:   ramdisk

   Image Type:   ARM Linux RAMDisk Image (uncompressed)

   Data Size:    184405 Bytes = 184405    Load Address: 40800000

   Entry Point:  40800000


Starting kernel ...


이상태에서 더이상 진행이 되지 않습니다.

혹시 이런 경우를 경험해 보신 분이 있으시다면....  답변 부탁드립니다..  


고도리

2015.04.15 11:04:13
*.151.13.202

많이 보는 상황입니다....


답은 전혀 알 수 없다는 쪽이 맞습니다.

즉, 좀 더 커널의 lowlevel로 내려가서 디버깅을 해야 합니다.


원인은 low level debugger를 키거나 jtag,을 쓰기전까지는 알 수 없습니다.


그런데 4412용 커널에 3.4.27이란 버전이 있었는지 궁금하네요.

마빡

2015.04.15 18:45:18
*.236.113.103

안녕하세요.. 고도리님..


커널은 엑시노스 대리점에서 전달해준 소스 코드 입니다.

jb_mr1 에 포함된  uboot / kernel 사용했습니다.


죄송하지만.. fwbl1, bl2, tzsw 에 대해서 설명좀 해 주실수  있을까요?

마빡

2015.04.15 20:02:15
*.236.113.103

make menuconfig 들어가니까. 커널 버전이 3.4.39로 나오네요... ㅠㅠ

앗 그리고.. kernel hacking 에 low level debugger 가 보이지 않습니다..ㅠㅠ

하늘하늘

2015.04.15 17:37:38
*.203.239.73

실제로 부팅이 되지 않는지 아주 기초적인 확인부터 필요합니다.

1. 부트로더와 커널의 MACH_TYPE 값이 같은지 확인 필요..

2. 커널의 콘솔 포트를 맞게 설정했는지 확인 필요..


저 같은 경우는 위 두 가지 경우중 하나로 위 메시지 상태가 나타나곤 했습니다.


마빡

2015.04.15 18:47:24
*.236.113.103

하늘하늘 님... 답변 감사합니다.

죄송합니다만... 제가 아는게 많지 않아서요... 혹시 말씀하신 MACH_TYPE 확인과  커널 콘솔 포트는 어디서 확인 및 변경이 가능한건가요?   ㅠㅠ

이동희

2015.04.15 19:21:03
*.90.129.146

Starting Kernel ... 에서 죽었다면 하늘하늘 님의 MACH_TYPE이 맞지 않거나

삼성 BSP를 그대로 사용했다면 아마도 BSP는 Exynos 4412 Prime으로 default로 되어 있을 확률이 높습니다.

log를 보니 Exynos 4412 1M RAM, 1.4 G를 사용했다면 kernel configuration에서 clock 및 boot parameter에 RAM 크기를

1G로 설정이 제대로 되었는지 확인해 보세요.

마빡

2015.04.15 19:31:29
*.236.113.103

안녕하세요.. 답변 감사합니다..

말씀해주신 prime 부분은 undef 처리되어 2G Ram 을 사용하지 않습니다.

1G로 맞게 설정 되어 있습니다..

그러면.. MACH_TYPE이 맞지 않다는 것인데... 어디 부분을 참고하면 되는지요/????

도움 부탁드립니다.

이동희

2015.04.15 19:42:58
*.90.129.146

kernel에서는 arch/arm/tools/mach-types 파일에 정의되어 있습니다.

uboot에서는 아마도 #define MACH_TYPE_C220으로 찾아 보시면 됩니다.


고도리

2015.04.16 06:41:30
*.200.239.210

kernel hacking 에서 


[ ] Kernel low-level debugging functions

를 켜서 보시면 됩니다.


보통 저기서 멈추는 경우는...


1> mach type이 맞지 않을 경우

2> 커널의 console이 초기화 되기 전에 kernel이 죽는 경우

-->이 때 kernel low level debugging을 켜는 경우입니다.


두가지 경우가 대부분입니다.



List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인