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

안녕하십니까..

SD Booting card를 만들어서 부팅을 하고, 자동으로 SD Card에서 fwbl1, bl2. u-boot, tzsw  write  한후

zImage, ramdisk-uboto.img까지 정상으로 wirte 되었습니다.

 

그런데, system.img를 write하다가 오류가 납니다..

fatload로 system.img를 load 했는데.. 실제 fatload로 저장할 수 있는 사이즈가 24M 밖에 되지 않아..

160M  의 system.img를 로드 하지 못합니다.

 

하여 system.img를 20M 로 split 해서 나누었고, 이를 bootcmd에서 fatload 하여 처리하는 과정에서..

bootcmd 의 명령어가 15개까지만 처리를 해서.. 제가 넣은 명령어를 모두 처리 하지 못합니다..

 

1. bootcmd의 명령어 개수가 15개로 되어 있는거 같은데.. 혹.. 이 개수를 늘릴수 있는지요..?

   - CONFIG_SYS_MAXARGS 16 으로 되어 있는걸 늘려봤는데... 여전히 명령어 15개까지만 처리하네요...ㅠㅠ

2. fatload 가 24M 로 정해져 있는데.. 이 사이즈도 늘릴수 있는지요..

 

소스코드를 찾아보고 있는데.. 도당췌... 어디서 처리를 하는지 모르겠습니다..

 

도움 요청 드립니다..

 


루비니

2014.06.21 00:27:05
*.218.12.26

1. bootcmd 를 어떤식으로 설정하셨는지.. 보통 setenv로 따옴표로 싸서 지정하는거라 길게 하셨다면 MAXARGS 제한보다는 오히려 CONFIG_SYS_CBSIZE 제한에 걸릴거 같은데요.. 어쨋든 CONFIG_SYS_CBSIZE 제한내에서 세미콜론 분리자에 따라 명령 하나하나를 가져와서 실행할거 같은데요..


2. 24M는 어떻게 확인하신건지요? SD카드로부터 클러스터 단위로 읽어와서 지정된 타겟 주소에 허용되는 대로 계속 써나가고.. fatload가 제한을 둘거 같진 않다는 생각이 드네요..

마빡

2014.06.21 04:23:28
*.214.201.106

답변 감사합니다.

먼저 bootcmd는 setenv로 설정을 하지 않고, bootloader의 헤더 파일에서 define 되어 있는  CONFIG_BOOTCOMMAND

의 내용을 수정했습니다.

(어차피 write하면 새로운 u-boot.img를 write를 하는 경우라...)

 

2번의 경우는 fatload로 system.img를 읽어서 write를 하면..131072 에서 시작해서 655360 까지 write를 해야 하는데..

MMC write: dev # 0, block # 181128, count 15328 ... 15328 blocks written: OK
*** unknown chunk type ***  이라는 메세지 띄우고 멈춰 버립니다.

131072 에서 181128 차를 계산해서.. 대략 24M 라고 말씀 드린겁니다..

 

 

이부분을 첨 하는거라... 공부를 많이 해야 할 듯 합니다..

답변 부탁드립니다..

루비니

2014.06.23 21:36:41
*.218.12.26

1. bootcmd 에서 ';' 로 구분되는 명령군들의 갯수와 아규먼트 갯수와는 관계 없을거 같고, CB_SIZE를 오히려 늘려 보시는게 어떨까 합니다. 아니면, bootcmd 가 상당히 긴거 같은데, script 를 만들어 "source 스크립트_로딩주소" 방식으로 하는것도 좋을거 같고요.. 하지만 이미지 파일을 나눠 쓰는 과정에서 명령이 늘어난 거라면 일단

방향이 잘못되지 않았나 싶습니다.

이미지파일을 나눠 mmc write 로 쓰겠다는 건지요?


2. MMC write: dev # 0, block # 181128, count 15328 ... 15328 blocks written: OK

==> 이건 181128 번 부터 15328 개의 write 는 이미 성공한 것입니다.

즉, 131072 번 부터 시작했다면 32MB 정도는 이미 성공한 것입니다.

이후 다음 chunk 를 write 할 차례에서 chunk type 이 이상해 멈춘걸로 보입니다.

fatload 가 의심되면 일단 로딩은 되는거 같으니 로딩후에 파일의 끝부분을 md로 확인해 보세요..

원본 파일과 같은지요..

그리고 이미지 파일 자체의 문제일 수도 있을거 같습니다.

마빡

2014.06.25 05:25:05
*.214.201.106

안녕하세요..

답변 감사합니다.

문제 해결했습니다.

split으로 나눠서 fatload시 특정 주소에서 멈추는 증상이 있었는데.. 그 주소가 reserved 영역인지...

암튼 loading되는 주소를 변경해서 하니.. 정상으로 load하고 write까지 다 되네요..

 

감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6228 [NFS] 뭔 문제인지 잘 모르겠습니다. [완료!] [3] 이제현 2006-09-21 3245
» bootcmd 개수 늘리기 or fatload buffer size 변경? [4] 마빡 2014-06-20 3242
6226 [질문] LX800 보드 전원 Range [3] 김증일 2007-05-14 3233
6225 자료실에 있는 WINCE 5.0 workspace로 컴파일 하는데.. [8] 오주열 2008-04-17 3225
6224 [질문] 최대절전모드와 대기모드에 진입할 방법이 없나요? [3] 임장욱 2007-05-12 3224
6223 부팅시 disk image starting at 0. 나오고 부팅이 멈추는데요 [1] biokk 2013-11-04 3200
6222 완료) 부품 구매할 수 있는 곳 좀 알려주세요 [1] 김형기 2007-07-03 3198
6221 [완료]터치 반응이 없습니다(아래의 글과 조금차이가 있습니다). [4] 황철진 2007-05-13 3196
6220 [질문] USB 주변기기를 많이 사용하는거 같은데... [4] 류충렬 2007-05-10 3184
6219 OS별 부팅속도가 얼마나 되는지 알고 싶습니다.. [1] 정현 2008-01-28 3180
6218 2G SD카드 인식문제 [9] 문철민 2008-01-12 3176
6217 origen_quad 4412 mt6620 wifi 관련 link 문제 [6] 준쓰아빠 2013-06-17 3160
6216 android 2.1 부팅 후 suspend 되는 현상? (추가) file [4] 김상범 2010-02-21 3148
6215 nfs로 안드로이 부팅중 "System UIDs inconsistent" 에러 팝업 창... [3] 이성호 2009-04-01 3147
6214 [질문] Aesop-LX800 Wince 5.0 800x480 LCD출력? [1] 김정렬 2007-09-29 3143
6213 LX800 + CS5536 가격과 구입처 좀 가르쳐 주세요. [1] 김정렬 2007-09-07 3143
6212 [질문] CD롬을 제거하면 부팅이 안된다...?!!! 이런 경우 보신분 ... [6] 임장욱 2007-05-17 3142
6211 serial gadget 이 안되네요... [6] 이율삼 2006-06-28 3138
6210 SMDK6410에서 Android 포팅.. [4] 정경진 2009-04-16 3137
6209 질문) Wince에서 LCD 출력 [2] 김형기 2007-07-28 3134

사용자 로그인