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

안녕하세요.

 

처음으로 자료를 올립니다.

 

 

다음 내용을 모두 모아서 정리한 Kernel을 올립니다.

----------

김재훈님의 AESOP6410 : Kernel 2.6.29 - Android & X-Windows - 090725

고도리님의 sound device driver

Vanilla Kernel 2.6.29 ~ 2.6.29.6의 diff를 merge

android git에서 android-2.6.29를 2009/09/05까지 merge

SD Memory Channel1 Card Detect Patch

smc911x.c ethernet device driver rxen disable bug patch (nfs server not responding문제 해결)

----------

아직 여러가지 문제가 있지만 여러 kernel version의 source를 merge하는게 상당히 귀찮은 작업이라 생각하기 떄문에 비슷한 작업을 하고 있는 사람들을 위해 지금까지 정리한 내용을 올립니다.

 

 

알려진 문제

----------

xwindow에서만 test했고, android가 잘 안 작동합니다. 부팅에 다 성공하고 나서 battery가 없다면서 작동을 안 합니다. ( AESOP6410에 battery가 어디에 달려있나. -_-;; ) 최신버전으로 올리면서 뭔가 호환성이 깨진 것이 아닌가 의심하고 있습니다. 아니면 제가 merge를 하다가 뭔가 실수를 했을 수도 있습니다. 조사가 필요합니다. adb도 정상적으로 작동하지 않습니다.

touchscreen이나 usb mouse로 window를 클릭하다 보면 LCD화면이 일그러지면서 kernel이 freeze됩니다. 이 문제는 김재훈님의 AESOP6410 : Kernel 2.6.29 - Android & X-Windows - 090725에서도 동일하게 발생합니다.

sound를 play할 때 DMA1에서 IRQ 74/AC97 PCM Stereo out: IRQF_DISABLED is not guaranteed on shared IRQs warning이 출력됩니다. 일단은 무시해도 특별히 문제는 없는 듯 합니다.

----------

 

 

compile방법

----------

make aesop6410_defconfig

make zImage

----------

 

 

bootargs

----------

setenv bootargs root=/dev/nfs rw nfsroot=192.168.0.77:/opt/RootFS-aESOP6410,nolock,tcp,rsize=4096,wsize=4096 ip=192.168.0.102:192.168.0.77:192.168.0.1:255.255.255.0::eth0:off console=ttySAC0,115200n81 ethaddr=00:09:c0:ff:ec:48 serverip=192.168.0.77

----------

 

 

AESOP-6410 : GPE Root File System - 090327사용시 변경사항

----------

DHCP로 인해 중간에 부팅도중에 IP가 바뀌는 경우에는
/etc/network/interfaces에서
iface eth0 inet dhcp를
iface eth0 inet static
        address 192.168.0.102
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1
로 변경해서 dhcp를 사용하지 않도록 설정해 주시기 바랍니다.

 

/lib/modules/2.6.29.6가 없다고 부팅도중에 에러가 나오면
/lib/modules/2.6.29.6를 /lib/modules/2.6.21.5-cfg-v19로
symbolic link를 걸어 주시기 바랍니다.

 

INIT: Id "S" respawning too fast: disabled for 5 minutes
INIT: no more processes left in this runlevel
부팅이 끝나고 에러가 발생하는 경우에는
/etc/inittab에서S:2345:respawn:/sbin/getty 115200 s3c_serial0를
S:2345:respawn:/sbin/getty 115200 s3c2410_serial0로 변경해 주시기 바랍니다.
----------

 

 

기타사항

----------

usb memory을 꼽아서 /dev/sda1에 인식되는 것을 확인했습니다.

sd memory를 channel1(baseboard에 붙어 있는 slot)에 꼽아서 /dev/mmcblk0p1에 인식되는 것을 확인했습니다. sd memory channel1을 사용하도록 기본설정되어 있으니 sd memory channel0를 사용하실 때는 make menuconfig하셔서 변경하시기 바랍니다.

ext2하고 vfat하고 mount되는 것을 확인했습니다.

s3c6410특유의 기능들(mfc등)은 application이 없어서 test를 못 해봤습니다. NDA를 맺고(NDA를 맺을 수 있을까 -_-;;) 자료를 받으면 samsung linux kernel git 최신버전하고 merge를 해서 테스트를 해 볼 예정입니다.

SD Memory Channel1 Card Detect Patch와 smc911x.c ethernet device driver rxen disable bug patch는 제가 땜질로 넣은 patch입니다. 다른 예기치 않은 문제가 발생할 수도 있습니다.

OTG쪽에는 Gadget Zero를 설정해 놓았습니다. 변경하고 싶으시면 make menuconfig하셔서 변경하시기 바랍니다.

merge를 할 때 s3c6410과 관련된다고 파악되는 부분은 건드리지 않도록 노력했습니다. ( 실수가 있을 수도 있습니다. )

----------

 

Taeho Oh ( [email protected] , [email protected] )   http://ohhara.sarang.net
Postech ( Pohang University of Science and Technology ) http://www.postech.edu
Alticast Corp.                                         http://www.alticast.com

첨부
엮인글 :
http://www.aesop.or.kr/index.php?mid=Board_Resources_S3C6410&document_srl=36986&act=trackback&key=f75

profile

김재훈

2009.09.05 23:28:07
*.162.5.146

오~ 소스가 여기저기 분산되어서, 정리하는게 쉽지 않은 작업인데, 정말 수고가 많으셨습니다.

전에 알려주셨던 Ethernet 관련 패치는 적용해 보니 정말 잘 동작해서, 유용하게 사용하고 있습니다. :)

 

아마, Android 동작 시 배터리 없다면서 죽어버리는 문제는 Android에서 관련 소스 패치를 해야 하는 것으로 알고

있습니다. (Android에서 배터리가 만땅으로 보이게 하거나, 배터리가 없어도 죽어버리지 않게 하는 방법에 대해,

소스 코드를 수정해 주는 부분이 있습니다.)

 

ADB의 경우, 다른 분에 빌려준 이솝 보드가 오는데로 테스트 해보겠습니다.

좋은 자료 정말 감사드립니다.!

오태호

2009.09.06 02:04:56
*.81.154.98

adb는 초기 android git에는 들어있지 않았는데 김재훈님이 배포하실 때 넣으신 것 같이 보이더군요. 일단 최신 android에는 adb가 들어있어서 김재훈님이 넣으신 것을 빼고 android에 있는 것을 넣었는데 단순히 그 문제로 작동하지 않았을 수도 있습니다. 일단 김재훈님이 넣으신 내용이랑 android git에 있는 내용이랑 비교해 보면 아마 뭐가 문제인지는 금방 파악이 되지 않을까 생각됩니다.

 

가능하면

http://git.kernel.org/?p=linux/kernel/git/kki_ap/samsung-ap-2.6.git;a=commit;h=c85045b9869f3c67c0dbeca8bfb7f6ebc1159a20

에 있는  v2.6.28.6-samsung-v2도 smdk6410_linux-2.6-samsung_v2.6.28.6-r5_090430와 diff를 해서 merge를 할 까 했습니다만 S3C6410에서 작동했던 2.6.21용 application이 2.6.29에서는 작동을 하지를 않더군요. 테스트할 길이 없어서 일단 관뒀습니다. (정보가 없어서. 끄응.)

누군가 정보를 가지고 있는 사람이 나서서 v2.6.28.6-samsung-v2까지 merge해 주면 좋을 것 같습니다. 그렇게 되면 일단 나름대로 쓸만한 거의 perfect버전이 될 듯 합니다.

고현철

2009.09.06 02:03:00
*.7.206.75

고생하셨습니다. battery문제는 android란의 제 강좌를 보시면 패치하는 부분이 있습니다.

 

그 부분을 적용시키시면 됩니다..........

 

 

오태호

2009.09.06 02:33:11
*.81.154.98

정보 감사합니다.

 

battery문제는 검색해 봤습니다만 쉽게 검색이 되지 않는군요. 어느 강좌에 나와 있는지 알려주실 수 있나요?

 

미리 감사드립니다.

고현철

2009.09.06 07:28:32
*.32.117.22

http://www.aesop.or.kr/?mid=board_android_platform&category=47238&document_srl=58633

 

게시물의 3.compile 부분을 보시면 됩니다.

오태호

2009.09.06 07:47:26
*.81.154.98

감사합니다. RFS를 새로 만들어야 되는군요.

"고현철"로 이름검색을 해서 안 나온 것이었습니다. -_-;;

고현철

2009.09.06 11:49:41
*.59.122.199

고현철/고도리..........둘 다 검색하셔야 할겁니다.

 

브라우저별로 틀려서...ㅎ

유형목

2009.09.07 21:51:56
*.32.117.22

배터리가 없다고 안드로이드가 멈추는 이유는 배터리 문제가 아니고

안드로이드용 터치 device driver 지정이 안되어 있어서 그렇습니다.


make menuconfig

Device Drivers -> Input device support -> Touchscreens -> S3C touchscreen driver

서브항목에 S3C touchscreen support for Android 라고 있습니다. 여기를 [*] 로 해주시고

커널 컴파일 다시하면 됩니다.

유형목

2009.09.07 22:19:04
*.32.117.22

커널 써 넣는 방법과 u-boot 셋팅 방법입니다.

nand erase 80000 300000;tftp c0000000 zImage-20090905;nand write c0000000 80000 300000
setenv bootcmd nand read c0008000 80000 300000;bootm c0008000
setenv bootargs root=/dev/mmcblk0p2 rw rootdelay=5 init=/init ip=192.168.0.101:192.168.0.199:192.168.0.1:255.255.255.0::eth0:off console=ttySAC0,115200n81 ethaddr=00:40:5c:26:0a:5b
saveenv

고현철

2009.09.08 20:01:39
*.32.117.22

aesop-6410 android용 key patch를 했습니다.

main board상의 5개 키입니다.

 

맨 왼쪽서부터

back, home, menu, end, send 키로 매핑 되어 있습니다.

 

첨부

김경수

2009.09.15 04:40:15
*.176.119.66

여러분들이 작업하신 내용을 보니 작업하기가 수월하네요. ^^;

고맙습니다.

그런데...

수정할 곳이 한군데 있는것 같아서 몇자 적어 봅니다.

archarmplat-s3c64xxirq-eint.c  

static int s3c_irq_eint_set_type(unsigned int irq, unsigned int type)

{ ...

  ...

if (offs > 15)

reg = S3C64XX_EINT0CON0;

else

reg = S3C64XX_EINT0CON1;

 

이 부분을 다음과 같이 수정하였습니다

if (offs < 16)

reg = S3C64XX_EINT0CON0;

else

reg = S3C64XX_EINT0CON1;


인터럽트 부분이 반대로 되어 있더라구요.


오태호

2009.10.01 11:15:14
*.81.154.98

아직 계속 살펴보고 있는 중이긴 합니다만, 현재까지 살펴본 느낌으로는 adb가 정상적으로 작동하지 않는 원인은 drivers/usb/gadget/s3c_udc_otg.c의 static struct s3c_udc memory에 기술되어 있는 endpoint list와 drivers/usb/gadget/epautoconf.c에 기술되어 있는 endpoint list가 서로 맞지 않은 것이 원인인 듯 합니다.

오태호

2009.10.12 02:35:28
*.81.154.98

수정후 정상작동을 확인했습니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수
113 s3c64xx 쪽 power 부분 잘 정리된 문서입니다. file [5] 최종환 2009-11-02 8537
112 AESOP6410 : USB WiFi Module 사용법 file [3] 김재훈 2009-10-14 12011
111 RootFS-aESOP6410-android-20091011 file [13] 오태호 2009-10-12 14011
110 Windows용 adb driver file 오태호 2009-10-11 9669
109 linux-android-aesop-2.6.29.6-20091011 file [8] 오태호 2009-10-11 11455
108 Android donut 091005 with alsa root filesystem file [4] 고현철 2009-10-06 7941
107 SMDK6410_WinCE60_FMD_REL_0.79_090415 file [10] 김재훈 2009-10-01 9508
106 tvp5150 디바이스 드라이버... file [6] 이학남 2009-09-29 10891
105 s3c6410 camera yuv->rgb display source file [10] 고현철 2009-09-16 11671
104 AESOP6410: Android gstreamer root filesystem file 고도리 2009-09-08 11463
» AESOP6410 : Kernel 2.6.29.6 + 090905 Android file [13] 오태호 2009-09-05 12052
102 smdk6410_linux-2.6-samsung_v2.6.28.6-r5_090430 file 김재훈 2009-09-02 8826
101 S3C6410 User Manual Rev1.20 090213 [1] 관리자 2009-08-31 8422
100 Errata for S3C6410X_UM_Rev1.10 Rev 01 [2] 관리자 2009-08-31 5820
99 aesop-6410 2.6.29 Android용 sound device driver file [4] 고도리 2009-07-27 8054
98 AESOP6410 : Google Android RFS - Cupcake v1.5 file [5] 김재훈 2009-07-26 7275
97 AESOP6410 : Google Android ADB USB Driver file [2] 김재훈 2009-07-26 9719
96 AESOP6410 : Kernel 2.6.29 - Android & X-Windows - 09072... file [19] 김재훈 2009-07-26 9838
95 Elpida Mobile DDR 단종... file [1] 이학남 2009-07-15 6239
94 Camera preview program file [3] 고현철 2009-07-14 6287

사용자 로그인