기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
리눅스 포팅에 관해 공부하고 있습니다.
linux 3.0.x 소스를 가지고 일단 명령프롬프트만 뜨게 하고 싶습니다. 다른거 필요없이...
초보라서 생각대로 안되네요.
nfs 파일 시스템을 이용하려고 합니다.
질문 ) arch/arm/mach-xxxxx/xxxx.c 보드에 종속적인 c 파일을 만들어서
MACHINE_START(xxxxx, "xxxxx")
.init_machine = 보드 초기화,
MACHINE_END
platform_device 를 등록 할텐데..
거기서 UART, NAND, ETHERNET, 디바이스 드라이버 만 잡아줘도 부팅이 되는건가요?
uboot >> 커널 >> nfs 파일 시스템까지 문제없이 실행 되게 하렴면 리눅스 포팅시 최소한으로 해야 할것들이 무었인지 궁금합니다.
ps. uboot 이나 nfs 파일 시스템 등은 linux 2.6.29 에서 잘돌아가던 것들이였습니다.
uart, ram만 잡아도 리눅스 부팅에는 문제가 없습니다.
1. u-boot는 그냥 사용하셔도 됩니다.
2. kernel은 serial 정도만 나오면 부팅에는 문제가 없을겁니다.......물론, 부팅 후 root filesystem 찾는데까지는 정상 동작해야겠죠...
3. 기존 nfs를 가지고 32Mbytes 혹은 64Mbytes짜리 ramdisk를 만드신 후 부팅을 시도하시면 됩니다.
저는 보통 32Mbytes짜리 가지고 테스트를 합니다.
현재 3.0.x대 커널이 다른 보드용으로(즉, 정확하게 사용하시는 보드용이 아닌 - 대신 같은 CPU 쓴)는 포팅이 되어서 release된 것으로 보여집니다.
이 경우는 기존 reference board용 예를 들어 mach-smdkv210.c등을 그대로 사용하시면 됩니다.
즉, 수정없이 하셔도 큰 문제는 없습니다.
그리고, .init_machine 에 할당된 함수에서 uart관련 부분만 남기시고 대략 필요없는 부분(ex> camera등)을 정리하신 후에 부팅 시도를 해 보시기 바랍니다.
그 후에야 작업이 어느정도 가능하다라고 보여집니다.