포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 20MB 입니다.

안녕하세요?

 

이번에 S3C6410 프로세서용 Android Kernel 2.6.29 이식 강좌를 올리니, 많은 도움 되시길 바랍니다.

 

여기에 기술된 절차는 실제로 aESOP S3C6410 2.6.29 커널을 제작할 때 사용한 방법 입니다.

 

1. Android Kernel 2.6.29 개요

 

1) 현재 발표된 최신의 안정화된 Kernel Version
2) 향후 Linux 공식 Kernel Version에서 Android Kernel과 통합
3) Cupcake 1.5를 완전하게 지원
4) 이 커널을 기점으로 Processor Kernel 을 Android 이식 방법에서,

     Android Kernel을 Processor에 맞는 Kernel 을 이식하는 방법으로 Android 이식 절차가 변경 됨
5) 강의에서 사용될 커널은 삼성에서 릴리즈한 SMDK6410용 2.6.28 Kernel을 기준으로 설명

 

2. 커널 소스 다운로드 방법

 

1) SMDK6410용 2.6.28.6 소스 :
http://git.kernel.org/?p=linux/kernel/git/kki_ap/samsung-ap-2.6.git;a=summary 의 Snapshot을 사용

(4월 30일 버전 - 현재 이솝 포럼의 S3C6410 자료실에 있습니다.)

 

2) Android Kernel 2.6.29 소스 :
http://android.git.kernel.org/?p=kernel/common.git;a=tree;h=refs/heads/android-2.6.29;hb=android-2.6.29 의 Snapshot을 사용

 

3) 해당 소스를 다운로드 후, ~/Android-2.9-AESOP 디렉터리를 생성한 후 압축을 해제
4) 크로스 컴파일러는 이솝 포럼 자료실의 arm-s3c6410-linux-gnueabi-gcc 4.2.4 컴파일러를 사용

 

3. Kernel에 포팅할 드라이버 목록

 

SMDK6410 2.6.28 커널에서 Android Kernel 2.6.29로 이식할 드라이버 목록

 

SMDK6410용 2.6.28 커널에는 다음과 같은 드라이버들이 이식되어 있으며, 우선 Android 커널로 이식할

드라이버 목록들을 확인한다.

 

1) 아키텍쳐 드라이버

arch/arm/plat-s3c
arch/arm/plat-s3c64xx
arch/arm/mach-s3c6410

 

2) RTC 드라이버
rtc/rtc-s3c.c

 

3) MMC/SD 드라이버
mmc/host/s3cmci.h
mmc/host/s3c-hsmmc.c
mmc/host/s3cmci.c
mmc/host/sdhci-s3c.c

 

4) IRDA 드라이버
net/irda/s3c-sir.c

 

5) Watch Dog Timer
watchdog/s3c2410_wdt.c

 

6) Frame Buffer 드라이버
video/s3c2410fb.h
video/s3c2410fb.c
video/samsung/s3cfb.c
video/samsung/s3cfb_ltv350qv.c
video/samsung/s3cfb_lte480wv.c
video/samsung/s3cfb.h
video/samsung/s3cfb_fimd5x.c
video/samsung/s3cfb_lts222qv.c
video/samsung/s3cfb_fimd4x.c
video/samsung/s3cfb_spi.c

 

7) SPI 드라이버
spi/spi_s3c24xx.c
spi/spi_s3c24xx_gpio.c

 

8) Serial 드라이버
serial/s3c6400.c

 

9) One-NAND 드라이버
mtd/onenand/s3c_onenand.c
mtd/onenand/s3c_onenand.h
mtd/nand/s3c_nand.c

 

10) I2C 드라이버
i2c/busses/i2c-s3c2410.c

 

11) Video 4 Linux 드라이버
media/video/samsung/fimd/s3c_fimd5x_regs.c
media/video/samsung/fimd/s3c_fimd.h
media/video/samsung/fimd/s3c_fimd_core.c
media/video/samsung/fimd/s3c_fimd_cfg.c
media/video/samsung/fimd/s3c_fimd_v4l2.c
media/video/samsung/g2d/s3c_fimg2d2x.h
media/video/samsung/g2d/s3c_fimg2d2x.c
media/video/samsung/post/s3c_post_regs.c
media/video/samsung/post/s3c_post_v4l2.c
media/video/samsung/post/s3c_pp_common.c
media/video/samsung/post/s3c_pp.h
media/video/samsung/post/s3c_post_core.c
media/video/samsung/post/s3c_pp_6400.c
media/video/samsung/post/s3c_post_cfg.c
media/video/samsung/post/s3c_post.h
media/video/samsung/post/s3c_pp_common.h
media/video/samsung/mfc10/s3c_mfc_inst_pool.h
media/video/samsung/mfc10/s3c_mfc_config.h
media/video/samsung/mfc10/s3c_mfc_base.h
media/video/samsung/mfc10/s3c_mfc_sfr.c
media/video/samsung/mfc10/s3c_mfc_instance.h
media/video/samsung/mfc10/s3c_mfc_databuf.h
media/video/samsung/mfc10/s3c_mfc_bitproc_buf.c
media/video/samsung/mfc10/s3c_mfc_sfr.h
media/video/samsung/mfc10/s3c_mfc.c
media/video/samsung/mfc10/s3c_mfc_yuv_buf_manager.c
media/video/samsung/mfc10/s3c_mfc_instance.c
media/video/samsung/mfc10/s3c_mfc_databuf.c
media/video/samsung/mfc10/s3c_mfc_params.h
media/video/samsung/mfc10/s3c_mfc_intr_noti.h
media/video/samsung/mfc10/s3c_mfc_bitproc_buf.h
media/video/samsung/mfc10/s3c_mfc_inst_pool.c
media/video/samsung/mfc10/s3c_mfc_init_hw.c
media/video/samsung/mfc10/s3c_mfc.h
media/video/samsung/mfc10/s3c_mfc_yuv_buf_manager.h
media/video/samsung/mfc10/s3c_mfc_types.h
media/video/samsung/mfc10/s3c_mfc_init_hw.h
media/video/samsung/mfc10/s3c_mfc_set_config.c
media/video/samsung/fimc/s3c_fimc_v4l2.c
media/video/samsung/fimc/s3c_csis.h
media/video/samsung/fimc/s3c_fimc3x_regs.c
media/video/samsung/fimc/s3c_fimc_core.c
media/video/samsung/mfc40/s3c_mfc_intr.h
media/video/samsung/mfc40/s3c_mfc_opr.h
media/video/samsung/mfc40/s3c_mfc_common.h
media/video/samsung/mfc40/s3c_mfc_buffer_manager.h
media/video/samsung/mfc40/s3c_mfc_opr.c
media/video/samsung/mfc40/s3c_mfc_fw.h
media/video/samsung/mfc40/s3c_mfc_logmsg.h
media/video/samsung/mfc40/s3c_mfc_memory.h
media/video/samsung/mfc40/s3c_mfc_intr.c
media/video/samsung/mfc40/s3c_mfc_interface.h
media/video/samsung/mfc40/s3c_mfc_types.h

 

12) LED 드라이버
leds/leds-s3c24xx.c

 

13) Direct Memory Interface Driver
char/s3c_mem.c
char/s3c_mem.h

14) Key-Pad Driver (SMDK Board용)
input/keyboard/s3c-keypad.h
input/keyboard/s3c-keypad.c

 

15) Touch Screen Driver
input/touchscreen/s3c-ts.c

 

16) USB-OTG Gadget Driver
usb/gadget/s3c_udc_otg_xfer_slave.c
usb/gadget/s3c2410_udc.h
usb/gadget/s3c_udc_otg.c
usb/gadget/s3c_udc_otg_xfer_dma.c
usb/gadget/s3c2410_udc.c
usb/gadget/s3c_udc.h

 

17) USB Host Driver
usb/host/ohci-s3c2410.c

 

18) USB-OTG Host Driver
usb/host/s3c-otg
usb/host/s3c-otg/s3c-otg-scheduler-scheduler.c
usb/host/s3c-otg/s3c-otg-transfer-transfer.h
usb/host/s3c-otg/s3c-otg-transferchecker-common.c
usb/host/s3c-otg/s3c-otg-transferchecker-bulk.h
usb/host/s3c-otg/s3c-otg-transferchecker-checker.h
usb/host/s3c-otg/s3c-otg-oci.c
usb/host/s3c-otg/s3c-otg-common-const.h
usb/host/s3c-otg/s3c-otg-transferchecker-interrupt.h
usb/host/s3c-otg/s3c-otg-transfer-periodic.c
usb/host/s3c-otg/s3c-otg-hcdi-hcd.h
usb/host/s3c-otg/s3c-otg-common-errorcode.h
usb/host/s3c-otg/s3c-otg-hcdi-hcd.c
usb/host/s3c-otg/Makefile
usb/host/s3c-otg/s3c-otg-common-datastruct.h
usb/host/s3c-otg/s3c-otg-hcdi-debug.h
usb/host/s3c-otg/s3c-otg-transferchecker-common.h
usb/host/s3c-otg/s3c-otg-common-common.h
usb/host/s3c-otg/s3c-otg-hcdi-list.h
usb/host/s3c-otg/s3c-otg-scheduler-scheduler.h
usb/host/s3c-otg/s3c-otg-transferchecker-bulk.c
usb/host/s3c-otg/s3c-otg-common-regdef.h
usb/host/s3c-otg/s3c-otg-transfer-common.c
usb/host/s3c-otg/s3c-otg-isr.h
usb/host/s3c-otg/s3c-otg-hcdi-driver.c
usb/host/s3c-otg/s3c-otg-oci.h
usb/host/s3c-otg/s3c-otg-transferchecker-control.h
usb/host/s3c-otg/s3c-otg-roothub.c
usb/host/s3c-otg/s3c-otg-scheduler-ischeduler.c
usb/host/s3c-otg/s3c-otg-scheduler-readyq.c
usb/host/s3c-otg/s3c-otg-transferchecker-control.c
usb/host/s3c-otg/s3c-otg-transferchecker-interrupt.c
usb/host/s3c-otg/s3c-otg-isr.c
usb/host/s3c-otg/s3c-otg-transfer-nonperiodic.c
usb/host/s3c-otg/s3c-otg-roothub.h
usb/host/s3c-otg/s3c-otg-hcdi-memory.h
usb/host/s3c-otg/s3c-otg-hcdi-kal.h
usb/host/s3c-otg/s3c-otg-hcdi-driver.h

 

19) IRDA 드라이버
hid/hid-samsung.c

 

20) 그 외 기타 드라이버

2편에서 계속~ :)

profile

인생은 연극이고 세상은 무대이다!

이솝 임베디드 포럼 운영 및 비즈니스와 관련된 것 이외에 E-Mail이나 메신저 및 휴대폰 등을 통한 개인적인 질문 및 답변은 받지 않습니다. 문의 사항은 이솝 임베디드 포럼 게시판을 이용해 주시면 감사하겠습니다.

엮인글 :
http://www.aesop.or.kr/index.php?mid=Board_Documents_Android_Frameworks&document_srl=34790&act=trackback&key=abe

고현철

2009.09.04 07:51:02
*.32.117.22

나이스.......짝짝짝........

 

이거 끝나면 내가 받아서 강좌를 해야하나.....쩝

한영민

2009.09.04 18:26:20
*.89.172.2

재훈아...........

 

머하니~.~~~

List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인