포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 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=ed5

고현철

2009.09.04 07:51:02
*.32.117.22

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

 

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

한영민

2009.09.04 18:26:20
*.89.172.2

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

 

머하니~.~~~

List of Articles
번호 제목 글쓴이 날짜 조회 수sort
64 Dummy Battery 드라이버 입니다. file [3] 관리자 2009-10-10 10263
63 openbinder document 고현철 2009-04-07 10432
62 touch calibrate 방법 file [1] 전병환 2009-04-23 10442
61 Android Gingerbread Multimedia Framework 분석 - 1 file [7] 고도리 2011-08-08 10515
60 Android home key is not working(home key 동작 안 할경우 ) [1] 고현철 2009-09-10 10597
59 MV6410용 aesop-android-2.6.29 입니다. (CS8900 관련) file [4] 2009-06-17 10621
58 cupcake, android 1.0/1.5의 의미 2009-05-20 10710
57 Android Battery 부분 조금 정리해 놓은것 file [2] 최종환 2009-11-04 10726
56 Android Battery 드라이버...ㅎㅎㅎ-.-; [3] 2009-06-02 10769
55 안드로이드 실행 시 미디어 서버 pending 현상 원인 중 한가지 file 박병구 2009-08-22 10810
54 AudioSystem과 AudioSystem.java를 이용한 JNI 단에서의 연결 [1] JhoonKim 2010-04-14 10872
53 Android yaffs image 흠..oob가 이상합니다. 2009-04-16 10888
52 이솝 임베디드 포럼 - 10월 31일 Google Android Seminar 발표 ... file [16] 관리자 2009-10-28 10904
51 Android 동작시 Battery 관련 /sys 파일 에러 & Power off ... [2] 2009-05-09 11010
50 android gstreamer 동작화면 file [10] 고현철 2009-07-07 11026
49 aesop 안드로이드 보드의 3D 성능 측정을 부탁드립니다. file [8] 최영빈 2009-07-09 11041
48 누가 Android 에 tslib를 포팅해 놓은듯 합니다. file 최종환 2009-11-11 11062
47 Vmware에서 x86으로 안드로메다 포팅 법 [1] 2009-07-15 11075
46 AudioPolicyService와 AudioFlinger 및 HAL의 연결 구조 JhoonKim 2010-04-08 11314
45 Google Android 커널 버전별 Testing Report [2] 김재훈 2009-05-17 11493

사용자 로그인