도와주세요!!
iMX6 sabreSD 보드를 사용하게 되었습니다.
LTIB를 우분투12.04에 정상적으로 설치해서 포팅도 해봤습니다.
그런데 그 과정에서 몇가지 문제가 생겨서 이렇게 질문드립니다.
1.LTIB에서 만들어진 파일은 rootfs 폴더의 boot 폴더에 u-boot.bin과 uImage가
ltib 폴더에는 rootfs 이 빌드 되는데요.
프리스케일에서 제공하는 MFG tool을 사용하려고 하는데 rootfs의 압축 방식이 달라서 그런지 프로그램이 동작하지 않네요.
rootfs.tar.bz2 만 되는건가요?
2. ./ltib -m config 에서 rootfs 옵션을 들어가 rootfs.ext2.gz.uboot 를 만드는 u-boot 옵션을 체크했습니다.
하지만 어떻게 사용하는거죠...? 제가 sd카드를 직접 파티션 분할하고 마운트 하는 경우에는 어떻게 하는지 알고 싶습니다.
3. LTIB 에서 빌드 중 커널 메뉴config 진입 설정으로
빌드 중에 진입하여 수정이 가능한걸 확인했습니다.
그런데 만약 모듈이나 패키지를 추가하려고 한다면
u-boot나 커널의 소스를 따로 추출해서 이미지와 u-boot를 각각 따로 올려야 하나요?
4.프리스케일에서 제공하는 파일로 u-boot 진입하여 실행하면 saveenv가 됩니다.
문제는 제가 LTIB 에서 빌드한걸로 u-boot 진입하면 saveenv가 안됩니다.
Unknown command 'saveenv' - try 'help'
더 우스운건 set 해놓은건 1회성으로나마 커널에 진입이 된다는겁니다...
이건 어떻게 해결을 해야하나요?
(u-boot 2009.08을 사용했습니다. 이 버전이 이런건지 아니면 제가 무슨 옵션을 설정 안한건지 궁금합니다.)
1&2.메뉴얼에 작게 적혀있는
$ cd rootfs
$ tar -cjvf rootfs.tar.bz2 *
요 두줄을 발견했습니다... 하아...
mfg tool 메뉴얼에서 찾아보니 스크립트에 tar.bz2 형식만 올리도록 되어있네요.
그런데 LTIB 메뉴얼에서는 ext2 루트파일시스템을 만들어 리더기를 통해서 파티션 분할하고 올리는 방법을 보여주네요.
요거 때문에 혼선이 있었습니다. 죄송합니다.
files에 있는 u-boot.bin uImage, rootfs.tar.bz2 를 바꿔서 해보니 되긴 합니다...
그런데 files 폴더 상위에 있는 폴더의 u-boot.bin, uImage, initramfs.cpio.gz.uboot 는 건드리지 않았는데 이건 어디서 구하는건가요? ucl2.xml 보면 건드리면 안될거 같기도 하고요...
에... 그리고 u-boot 설정을 바꿔주기 위해 prep 로 추출해놓고 mx6q_sabresd.h 파일에서 간단하게 초기 ip값만 바꾼뒤 ./ltib 커맨드를 실행했습니다만
#define IPADDR 192.168.1.103 -> #define IPADDR 192.168.0.199
바로 u-boot 쪽에서 에러가 발생하네요.
혹시 u-boot 수정후 ./ltib로 진행 가능한가요?
우선 개발 방법론적으로 LTIB은 리눅스 소스를 배포하는 하나의 방법인데, 여기에 각종 Tool(Src 포함)들이 포함되어
하나의 패키치형태로 만들어져 있습니다.
즉 ltib에서 필요한 소스를 축출해서 Target B/D에 필요한 소스(U-Boot, Kernel, Tools)를 획득 가능합니다.
FSL은 이 ltib이란 방법으로 공개용소스를 제공하는 것입니다.
- 그리고 인터넷만 연결되 있으면 Update등 다양한 기능이 존재 합니다.
축출하는 방법은 ltib manual를 탐독하면 됩니다.
- FSL Chip들은 잘 다루게 되기위해 처음에 격게되는 관문이다, 생각하고 숙지하면 됩니다.
즉 U-Boot, Kernel등을 축출해서 ltib이랑 무관하게 개발하시면 됩니다.
Compiler도 같이 제공되니 이것도 축출가능합니다.
mfgtool은 Download시 사용되는 xml을 적절히 수정하면 개발하는 기능에 따라 다양한 바이너리를 적재할 수 있습니다.
특히 사항은 Boot영역은 FSL 에서 제공하는 Tools로 바듯이 Write해야 합니다.
이름은 지금이 기억이 없으나 xml 파일을 보시면 됩니다.
도움이 되었으면 합니다.
정확한 것은 아닙니다만 빌드했을때의 기억을 살펴보면
1. 압축 형식은 메뉴에서 설정이 가능했던 것 같습니다.
2. 너무 세부적인 부분이라 잘 모르겠습니다.
유추해보면 램디스크를 만드는 방식인데 부트로더에서 카드안의 스크립트를 읽어서 로딩했던 것 같네요
당연히 파티션을 바꾼다면 유부트 설정에서 스크립트를 찾는 부분을 수정해 주셔야 할것 같습니다.
3. pass
4. 기억에 유부트 소스에서 지정한 환경 저장 디바이스가 사용하시는 것과 다를 겁니다
소스는 하나지만 보드가 여러가지 이고 보드마다 맞추어 주어야 하는 부분이 있었던 것으로 압니다.