기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
MX53-LOCO U-Boot > setenv bootargs_base 'setenv bootargs console=ttymxc0,115200'
//bootargs_base라는 매크로 비슷한 기능을 이용해서 실제로 커널이 부팅시에는
// bootargs console=ttymxc0, 115200라는 환경변수값을 사용합니다.
//console의 정확한 의미는 모르겠지만, "ttymxc0는 UART를 사용하는 디바이스 파일이고
//통신속도는 115200으로 하겠다"라는 의미로 해석하고 있습니다.
MX53-LOCO U-Boot > setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw video=mxcdi1fb:GBR24,VGA-XGA di1_primary vga'
//bootargs_mmc도 위와 마찬가지로 매크로같은 기능을 이용해서 환경변수값을 설정하고 있는데,...
// ${bootargs} root=/dev/mmcblk0p1 rootwait rw 이부분은 어떻게 동작이 되는지 전혀 모르겠습니다...
// video=mxcdi1fb:GBR24,VGA-XGA di1_primary vga 이부분은 모니터 출력을 해주는 부분같은데 타겟보드의 vga출력단자에 모니터를 연결해도 화면에 뭔가가 나오지는 않았습니다.
MX53-LOCO U-Boot > setenv bootcmd_mmc 'run bootargs_base bootargs_mmc;mmc dev 0;mmc read ${loadaddr} 0x800 0x1800;bootm'
//bootcmd_mmc도 매크로로 사용해서 위에서 설정한 것을 bootargs_base -> bootargs_mmc를 차례대로
//실행을 하고 mmc(multi-media-card)의 장치는 dev 0이고
//mmc read ${loadaddr} 0x800 0x1800; 이 부분은 mmc의 메모리 블럭의 0x800~0x1800까지 read한다는거 같습니다. ${loadaddr}은 메모리 블럭의 주소인거 같습니다.
//bootm(boot from memory image) <kernel address> 인터넷을 검색해보니 이렇게 설명이 되어져 있었습니다. 그런데 위에는 인자가 없는데 어떻게 동작이 되는건지 모르겠습니다.
MX53-LOCO U-Boot > setenv bootcmd 'run bootcmd_mmc'
MX53-LOCO U-Boot > saveenv
MX53-LOCO U-Boot > run bootcmd
안녕하십니까. 반갑습니다.
현재 제가 학습하고 있는 보드의 u-boot의 환경설정한 모습입니다.
u-boot에서 어떻게 동작을 하는건지 나름 공부해 보았는데 주석을 보시고 부족하거나
잘못된 부분의 지적과 조언을 부탁드립니다.
많은 관심과 사랑을 구걸합니다~ __);;
좋은 하루 되십시요~!
video=mxcdi1fb:GBR24,VGA-XGA di1_primary -> 프리스케일에서만 있는 기능으로 i.MX51/53은 Display Port 가 2개입니다. mxcdi0, mxcdi1 은 하드웨어 Display Port를 말하는 것입니다. di1_primary 은 2개중 display1을 메인으로 쓴다는 의미입니다.