'arm보드 포팅'에 해당되는 글 1건

  1. 2009.03.17 ARM보드 - 세부 커널셋팅


컴파일 설정(쉘 스크립트 작성)

Makefile 파일수정(경로 : /home/test/linux-2.6.15.7/)


ARCH  ?= arm
CROSS_COMPILE ?= arm-linux-


PATH 활성화(실행 : source path.sh)


#!/bin/bash
export PATH=/home/test/cdt_2007-07-20/bin:$PATH
export LD_LIBRARY_PATH=/home/test/cdt_2007-07-20/i686-pc-linux-gnu/arm-linux/lib:$LD_LIBRARY_PATH
export ARCH=arm
export CROSS_COMPILE=arm-linux-




커널 소스 셋팅(Memory Size, I/O 맵, 머신 타입)

setup.c 파일수정(경로 : /home/test/linux-2.6.15.7/arch/arm/kernel)


// #define MEM_SIZE (16*1024*1024)
#define MEM_SIZE (128*1024*1024)

메모리 사이즈를 16Mbyte가 아니라 128Mbyte를 사용할 것이므로 주석처리(//)를 하고 메모리 사이즈를 128Mbye로 하여 추가하도록 한다.

mach-types 파일수정(경로 : /home/test/linux-2.6.15.7/arch/arm/tools)


#av7200   ARCH_AV7200  AV7200   304

mainstone  MACH_MAINSTONE  MAINSTONE  304

위의 파일을 주석처리(#)하고 mainstone을 추가하도록 한다.

mainstone.c 파일수정(경로 : /home/test/linux-2.6.15.7/arch/arm/mach-pxa)

 

uncompress.h 파일 존재확인(경로 : /home/test/linux-2.6.15.7/include/asm-arm/arch-pxa)

mainstone-flash.c 파일수정(/home/test/linux-2.6.15.7/drivers/mtd/maps)

 




부팅을 위한 커널 설정(Linux Porting)

General setup


Loadable module support


System Type


Boot options


Userspace binary formats


Device Drivers -> Character devices -> Serial drivers


Device drivers -> Memory Technology Devices (MTD)


Device drivers -> Memory Technology Devices (MTD) -> Ram/Rom/Flash chip drivers


Device drivers -> Memory Technology Devices (MTD) -> Mapping drivers for chip access


File systems




기타설정(main.c, misc.c)

main.c 수정예시(/home/test/linux-2.6.15.7/init)

asmlinkage void __init start_kernel(void) {

  printk("KIM TAE HWAN - SETTING STYLE\n");
  printk("start_kernel %s / %s / %d\n", __FILE__,__FUNCTION__,__LINE__);
  printk("start_kernel");


misc.c 수정예시(/home/test/linux-2.6.15.7/arch/arm/boot/compressed)
 
...


make zImage

kimyeonjoo@kimyeonjoo-desktop:~$
 make zImage
..
..
..
Kernel: arch/arm/boot/zImage is ready




부팅(reload kernel, boot)


파일전송을 완료하게 되면 커널 생신이 안될수 있으니 reload kernel라는 명령어를 통해 커널을 새로 불러 온뒤 부팅(boot)을 하도록 한다.

Posted by 리트모스
: