'커널포팅'에 해당되는 글 7건
- 2009.06.12 2.6.28 커널로 갈아타기 - EZ-X5 - 부트로더 점검
- 2009.06.09 2.6.28 커널로 갈아타기 - EZ-S2440 - 시리얼 포팅 끝!
- 2009.06.05 2.6.28 커널로 갈아타기 - EZ-S2440 - 시리얼 포팅
- 2009.05.23 2.6.28 커널로 갈아타기 - 커널을 보드에 올리기 (2) (1)
- 2009.05.19 2.6.28 커널로 갈아타기 - 커널을 보드에 올리기 (1) (1)
- 2009.05.12 2.6.28 커널로 갈아타기 - 커널 받기
- 2009.05.06 2.6.28 커널로 갈아타기 - 포팅 대상 보드들 (2)
부트로더 버전 확인
이제 저희 회사에서 가장 많이 팔렸던 PXA255 프로세서 보드인 EZ-X5 시리얼 포팅입니다.
EZ-X5 부트로더를 한번 확인해 봅시다.
제 것은 이렇게 나왔습니다.
[A013_010_boot_loader_version.png]
불행하게도 V1.8 이군요 쩝...
이지부트 2.0으로 업그레이드
이전에 EZ-S2410 포팅을 진행 할 때 부트로더 업그레이드 강좌를 진행 했습니다.
또 자세하게 설명하기 귀찮잖아요..
그래서 여기서는 약식으로 설명해 갑니다.
조금 자세한 것은 이전 강좌 중 “커널을 보드에 올리기” 편을 참조 하세요
저희 회사 이지부트로더는 여기서 다운 받습니다.
http://ftp.falinux.com/ezboot/recommendation/
다음과 같은 명령을 사용해서 압축 풉니다.
이제 ezboot란 디렉토리가 생겼을 겁니다.
여기로 이동합니다.
[root@localhost ezboot]# ls
Makefile arch_pxa255 ez-au1250_make.sh ez-pxa270_make.sh image
arch_au1250 arch_pxa270 ez-ep9312_make.sh ez-s3c2440_make.sh include
arch_ep9312 arch_s3c2440 ez-pxa255_make.sh ez-x5_make.sh main
[root@localhost ezboot]#
다음과 같이 컴파일 해야 합니다.
[root@localhost ezboot]# ./ez- pxa255_make.sh
./ ez- pxa255_make.sh clean 명령은 처음 한번만 하면 됩니다.
소스가 수정되면 ./ ez- pxa255_make.sh 으로 컴파일하면 됩니다.
컴파일 처리 결과로 다음과 같은 마지막 메시지가 나오면 성공한 겁니다.
make[1]: Leaving directory `/project/ezboot_outside/ezboot/main'
dd if=arch_pxa255/start/start_org of=image/ezboot.ez-x5 bs=1k conv=sync
0+1 records in
1+0 records out
1024 bytes (1.0 kB) copied, 0 s, Infinity B/s
dd if=main/main_org of=image/ezboot.ez-x5 bs=1k seek=4
63+1 records in
63+1 records out
65516 bytes (66 kB) copied, 0 s, Infinity B/s
chmod 777 image/ezboot.ez-x5
부트로더 이미지는 image/ezboot.ez-x5 에 생겼습니다
그렇다면 이걸 tftp 프로토콜로 다운로드 받을 수 있겠 끔 옮겨야 겠죠?
자 이제 모두 끝났습니다.
다시 보드의 시리얼 에뮬레이터로 가 봅시다.
이번에는 zfb 란 명령을 사용해서 ZMODEM 프로토콜로 부트로더 이미지를 다운 받아 봅시다.
이 부분은 포럼의 강좌를 보고 하시기 바랍니다.
설명은 생략하겠습니다.
다운로드 받으면 보드를 재 부팅합니다.
역시 이번에도 ECC 에 관련된 에러 메시지가 쭈욱 나올 겁니다.
set 명령을 사용해서
^^;
1) mac address : 00:FA:07:78:65:05
2) local ip : 192.168.10.182
3) local netmask : 255.255.0.0
4) local gateway : 192.168.10.1
5) server ip : 192.168.10.61
6) zImage file name : zImage.ez-x5
7) ram disk file name : ramdisk-1.11-16M.gz
8) boot loader file name : ezboot.ez-x5
9) logo image file name :
10) auto execute full name :
11) autoboot wait time : 3
12) copy ramdisk [Y/N] : Y
13) arm kernel arch number : 3002
14) nand part (B,C,L,K,R,A): 0,1,0,3,5,55
15) watchdog (sec, off=0) : 0
16) KCMD 1 : mem=64M
17) KCMD 2 : initrd=0xA0800000,5M root=/dev/ram ramdisk=16384
18) KCMD 3 : console=ttyPXA2,115200
19) KCMD 4 : video=ezfb:panel:3
20) KCMD 5 :
21) KCMD 6 :
L) Load default
LF) load KCMD2 root=flash
LR) load KCMD2 root=ramdisk
M) generlate Mac address
S) Save to flash
P) aPply & exit
Q) Quit
Select >>
일단 자신의 네트워크 상황에 맞도록 2,3,4,5 항을 수정하십시오 위 예시는 제 보드의네트워크 설정입니다.
그리고 환경 저장을 하시고
tfb 명령을 수행하셔서 다시 한번 부트로더를 받습니다.
그리고
rst 명령을 사용하거나 전원을 껐다가 켜서 다시 보드를 부팅 시킵니다.
System Soft Reset.......
EZBOOT>
WELCOME EZBOOT V2.2.50 (FALINUX Co.,Ltd) ..........PXA255(EZ-X5)
Program by You Young-chang, Oh Jae-Kyoung, Jang Hyung-Gi
Last Modify Aug 19 2008
Detect ES29LV400_B Flash : vid=4A pid=22BA
SIZE 4-Mbits [512-Kbytes]
Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
SIZE 64-Mbytes (page=512, block=16K)
diff magic [20090212:20080812]
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar].
CS8900 Init ......
Mac Address : [00 FA
Detect value : [3000:3000]
Chip ID : [0E63:000A]
EZBOOT>
이번에도 깔끔하게 정리 됩니다. 하하
부트로더 업그레이드가 끝났습니다.
자 이제 커널 포팅을 시작해 봅시다....
예상 포인터
휴~~
어려운 문제에 봉착 했습니다.
커널 해킹용 시리얼 포트까지 열어 놓았는데
압축 해제 시리얼 메시지까지 나오고 그 뒤로 전혀 나오지 않고 있죠…
이럴 경우에는 여러 가지 가능성이 있습니다.
1) console= 에 지정하는 디바이스 드라이버 이름 지정에 문제가 있거나
2) 아니면 콘솔 디바이스 드라이버가 동작하기 전에 커널이 멈추어 버리거나
3) 가끔 있는 경우지만 console=로 지정한 시리얼 포트가 다른 용도로 사용되거나
그 밖에 몇 가지가 있습니다.
그런데 첫번째 console= 에 지정하는 디바이스 드라이버 이름 문제는 별로 의심하고 싶지 않습니다.
왜냐하면 삼성 것은 대부분 이 이름을 사용하고 이미 2410에서 적용해서 문제가 없었기 때문입니다.
그리고 두 번째는 일단 디버깅 하기가 무섭습니다. 무한 삽질의 시작이거든요
일단 세번째를 먼저 의심하고 싶습니다. 시리얼 포트가 다른 용도로 사용될 경우라면현재와 같은 증상이 나올 수 있거든요..
시리얼 포트 리소스 지정 위치
ARM은 각각의 보드에 따른 하드웨어 설정 내용을
MACHINE_START( … 을 포함하는 소스상에 대부분 존재 합니다.
SMDK2440 보드는 다음 소스에 위치합니다.
arch/arm/mach-s3c2440/mach-smdk2440.c
이 파일에는 SMDK2440에 설치되는 디바이스드라이버 목록이나 기타 설정 사항들이 있습니다.
여기서 잘 찾아보면 시리얼 포트에 관련된 설정 값들이 있습니다.
다음이 있네요
3c2410_uartcfg smdk2440_uartcfgs
오옷!!
뭔가 이 설정 내용 중 주석에 IRPORT란 것이 눈에 보입니다. 그리고 내용도 조금 이상하네요
static struct s3c2410_uartcfg smdk2440_uartcfgs[] __initdata = {
[0] = {
.hwport = 0,
.flags = 0,
.ucon = 0x3c5,
.ulcon = 0x03,
.ufcon = 0x51,
},
[1] = {
.hwport = 1,
.flags = 0,
.ucon = 0x3c5,
.ulcon = 0x03,
.ufcon = 0x51,
},
/* IR port */
[2] = {
.hwport = 2,
.flags = 0,
.ucon = 0x3c5,
.ulcon = 0x43,
.ufcon = 0x51,
}
};
포트 2 를 설정하는 부분에 주석으로 IR port 라고 하고 있고
더구나 ulcon 이 다른 것과 다르게 0x43으로 설정되어 있습니다.
오호…
이 부분은 아무래도 IR 포트용으로 line 특성을 달리 설정한 것 같습니다.
.ulcon = 0x43,
이 부분을
.ulcon = 0x03,
으로 고쳐서 재 컴파일 한 다음 보드에 올려 보겠습니다.
EZBOOT>tfk
receive zImage.ez-s3c2440
tx ARP
ARP error
tx ARP
rx ARP
HOST MAC : 00:FF:A7:1F:64:00
HOST IP : 192.168.10.61
LOCAL IP : 192.168.10.183
option [timeout 120 tsize 1790920]
argv=TFK1781760
size = 1790920
...write 1790920 complete
...verify complete
EZBOOT>rst
System Soft Reset.......
EZBOOT>0123B
WELCOME EZBOOT V2.3.05 (FALINUX Co.,Ltd) ......S3C2440(EZ-S3C2440) (400MHz)
Program by You Young-chang, Oh Jae-Kyong, Jang Hyung-Gi
Last Modify Jun 1 2009
Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
SIZE 64-Mbytes (page=512, block=16K)
... not supported part_nr=2
clear lcd .....
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar]
Copy Kernel Image .....
Copy Ramdisk Image .....
Starting kernel [MARCH 362]...
kernel command [EZBOOT mem=64M initrd=0x30800000,5M root=/dev/ram0 ramdisk=16384 console=ttySAC2,115200 video=ezfb:panel:2 ip0=192.168.10.183 mac=00:FA:01:A2:13:04 netmask=255.255.0.0 gw=192.168.10.1 host=192.168.10.61 nandparts=2,8,54 ]
Uncompressing Linux..................................................................................................................... done, booting the kernel.
Linux version 2.6.28.10 (root@localhost.localdomain) (gcc version 3.4.3) #8 Fri Jun 5 09:13:12 EDT 2009
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: SMDK2440
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C244X: core 399.651 MHz, memory 133.217 MHz, peripheral 66.608 MHz
S3C24XX Clocks, (c) 2004 Simtec Electronics
CLOCK: Slow mode (2.116 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: EZBOOT mem=64M initrd=0x30800000,5M root=/dev/ram0 ramdisk=16384 console=ttySAC2,115200 video=ezfb:panel:2 ip0=192.168.10.183 mac=00:FA:01:A2:13:04 netmask=255.255.0.0 gw=192.168.10.1 host=192.168.10.61 nandparts=2,8,54
irq: clearing pending status 00000400
irq: clearing subpending status 000000c0
irq: clearing subpending status 00000080
PID hash table entries: 256 (order: 8, 1024 bytes)
timer tcon=00000009, tcnt d8d2, tcfg 000002ff,00003333, usec 0000170f
Console: colour dummy device 80x30
console [ttySAC2] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 55928KB available (3320K code, 327K data, 152K init)
Calibrating delay loop... 199.47 BogoMIPS (lpj=498688)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 484 bytes
NET: Registered protocol family 16
S3C2410 Power Management, (c) 2004 Simtec Electronics
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
DMA channel 0 at c4808000, irq 33
DMA channel 1 at c4808040, irq 34
DMA channel 2 at c4808080, irq 35
DMA channel 3 at c48080c0, irq 36
S3C244X: Clock Support, DVS off
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 5120K
NetWinder Floating Point Emulator V0.97 (extended precision)
JFFS2 version 2.2. (NAND) (SUMMARY) 짤 2001-2006 Red Hat, Inc.
msgmni has been set to 119
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Console: switching to colour frame buffer device 30x40
fb0: s3c2410fb frame buffer device
lp: driver loaded but no devices found
ppdev: user-space parallel port driver
Serial: 8250/16550 driver4 ports, IRQ sharing enabled
s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
brd: module loaded
loop: module loaded
dm9000 Ethernet Driver, V1.31
Uniform Multi-Platform E-IDE driver
ide-gd driver 1.18
ide-cd driver 5.00
Driver 'sd' needs updating - please use bus_type methods
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c2440-nand s3c2440-nand: Tacls=3, 22ns Twrph0=8 60ns, Twrph1=3 22ns
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit)
Scanning device for bad blocks
Creating 8 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x00000000-0x00004000 : "Boot Agent"
0x00000000-0x00200000 : "S3C2410 flash partition 1"
0x00400000-0x00800000 : "S3C2410 flash partition 2"
0x00800000-0x00a00000 : "S3C2410 flash partition 3"
0x00a00000-0x00e00000 : "S3C2410 flash partition 4"
0x00e00000-0x01800000 : "S3C2410 flash partition 5"
0x01800000-0x03000000 : "S3C2410 flash partition 6"
0x03000000-0x04000000 : "S3C2410 flash partition 7"
usbmon: debugfs is not available
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver libusual
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.4.3:USB FTDI Serial Converters Driver
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
mice: PS/2 mouse device common for all mice
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c2440-i2c s3c2440-i2c: slave address 0x10
s3c2440-i2c s3c2440-i2c: bus frequency set to 378 KHz
s3c2440-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
RAMDISK: Compressed image found at block 0
length error
VFS: Mounted root (ext2 filesystem) readonly.
Freeing init memory: 152K
INIT: version 2.86 booting
INIT: Entering runlevel: 3
SIOCSIFADDR: No such device
SIOCSIFNETMASK: No such device
SIOCGIFFLAGS: No such device
route: SIOC[ADD|DEL]RT: No such device
mount: Mounting /dev/mtdblock2 on /app failed: No such device
/usr/local/apache/bin/apachectl start: httpd started
Starting system logger: [ OK ]
Starting INET services: [ OK ]
Welcome to FALinux (www.falinux.com)
Linux Kernel 2.6.28.10
falinux login:
음하하하하
심 봤습니다.
시리얼 포트가 제대로 동작해서 정상 부팅 됩니다.
EZ-S2440 도 시리얼 포트 포팅이 거져 끝났습니다.
자 이제 이제까지 작업한 환경 설정을 다음에 보는 것과 같은 명령을 이용하여 저장하고
[root@localhost linux]# cp .config arch/arm/configs/ezs2440_defconfig
커널을 클리어 합니다.
[root@localhost linux]# make clean
새로 추가된 파일이 있는가 확인 합니다.
[root@localhost linux]# svn st
새로 생성된 것중 서브버전에 추가 할 파일을 추가 합니다.
[root@localhost linux]# cd arch/arm/configs/
[root@localhost configs]#svn add ezs3c2440_defconfig
서브 버전에 커밋 합니다.
[root@localhost configs]# cd ../.../..
[root@localhost linux]# svn ci -m "EZ-S2440 serial first portign sucess"
아…
오늘도 힘찬 하루 …
부트로더 버전 확인
자..
여러분에게 원래 EZ-S2440 을 하기로 하다가
커널 컨피규 보고서
바로 잔머리를 굴리는 저를 욕하지 마세용..
이제 드뎌 EZ-S2440 포팅 들어 갑니다.
이전에 EZ-S2410때 부트로더 확인 과정을 기억하시는지 모르지만
EZ-S2440 역시 부트로더를 한번 확인해 봅시다.
제 것은 이렇게 나왔습니다.
[A011_010_boot_loader_version.png]
다행스럽게도 V2.X 대 군요..
ㅎㅎ
자 이제 커널 포팅을 시작해 봅시다.
커널 소스 클리어
자 이전에 EZ-S2410 보드를 위한 커널을 만들었지 않았습니까?
그러므로 이제 싸~~악… 소스를 클리어 하는 것이 제일 좋겠죠?
어떻게 할까요?
어머?
벌써 잊으셨어요?
이전에 설명했는데..
하기사 한번만 보고 기억을 바로 바로 하시면 여러분은 천재죠…
자 ..
평범한 우리들은 외울 때까지 계속 반복해서 알려 주어야 합니다.
다음 두 과정의 명령을 쓰면 되죠…
[root@localhost linux]# make distclean
예..
이제 소스 쌱~~ 청소 되었습니다.
커널 컴파일 환경 설정 준비
자 이제 이전에 설정된 환경을 찾아 보죠..
오호…
그런데..
EZ-S2410 용은
s3c2410_defconfig 란 형태로
linux/arch/arm/configs/ 디렉토리에
있었잖아요?
그럼..
s3c2410_defconfig 란 것은 있을까요?
당근 없지요..
만약 있었다면 제가 EZ-S2410 으로 급선회를 했겠습니까?
그런데
혹시 아십니까?
S3C2410 하고 S3C2440은 거의 쌍둥이라는 것을
뭐 삼성내에 있는 반도체 연구소에 계신 분들이 어떤 생각이 있을지 모르지만
이 두 놈은 거의 쌍둥이 입니다. 내부 디바이스들이 거의 같습니다. 속도와 몇 가지 개선을 한 정도라고 보아도 무방할 정도 입니다.
그렇다면 S3C2410 의 커널 설정 환경을 그대로 사용할 수 있지 않겠습니까?
우리야 시리얼 처리만 하면 되는데 말이죠…
자 일단 시도해 봅시다.
당연히 커널 옵션 설정을 하도록 합니다.
여기서 잠깐
자신의 보드가 S3C2440 이라서 이전 강좌를 보지 않으신 분들을 위해서 다시 한번 알려 드리면
가장 먼저 해야 하는 것은
우선 Makefile을 약간 손보아야 합니다.
커널소스 linux\Makefiel 에서
193 라인 쯤에 가면
크로스 컴파일을 위한 처리 부분이 있습니다.
193 ARCH ?= $(SUBARCH)
194 CROSS_COMPILE ?=
이 부분을 arm 용 크로스 컴파일이 될 수 있도록 다음과 같이 고칩니다.
193 ARCH ?= arm
194 CROSS_COMPILE ?= arm-linux-
이 부분에 대한 약간(?)의 설명은 2410 부분의 강좌를 참조해 주세요
2410부터 따라한 분들은 이미 되어 있겠죠?
자 이제 커널 컴파일 옵션 적용을 해 봅시다.
make s3c2410_defconfig
S3C2410 컴파일 옵션 설정 상태로 만들어 버립니다.
[root@localhost linux]# make s3c2410_defconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/docproc
HOSTCC scripts/basic/hash
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/kxgettext.o
SHIPPED scripts/kconfig/zconf.tab.c
SHIPPED scripts/kconfig/lex.zconf.c
SHIPPED scripts/kconfig/zconf.hash.c
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
#
# configuration written to .config
#
[root@localhost linux]#
시리얼 출력을 하기 위한 커널 컴파일 설정
이전에 EZ-S2410 보드에서 시리얼로 출력이 나오면서 커널 부팅이 되기 위해서 다음과 같은 두가지를 수행했습니다.
1) 시리얼 포트 번호 재 조정
2) 머신 아키텍쳐 번호 조사
1) 번은 S3C2410 과 S3C2440은 거의 같은 구성을 갖고 커널 개발자가 동일하다는 점, 제조사 회사도 같다는 점에 때문에 2410이 했던 옵션을 그대로 사용할 수 있습니다.
즉 우리는 이 포트 번호를 0에서 2 로 바꾸어 주면 됩니다.
이 과정은 다음과 같은 순서로 진행하면 됩니다.
[root@localhost linux]# make menuconfig
을 실행합니다 .
[A011_020_kernel_option_system_type.png]
여기서 System Type(시스템 타입) 메뉴를 선택합니다.
[A011_021_kernel_option_low_port.png]
S3C UART to use for low-level messages 을 선택해서 2로 수정합니다.
[A011_022_kernel_option_low_port_2.png]
이제 보드 타입을 검토해 보죠
이전에 S2410은 하지 않았죠?
하지만 실제로는 자동으로 선택되어 있어서 하지 않은 겁니다.
S2440은 어떻게 설정되어 있는가를 확인해 봅시다.
다음을 따라 하면 확인 할 수 있습니다.
[A011_023_kernel_option_2440_machine.png]
S3C2440 Machines 라는 메뉴를 선택합니다.
[A011_023_kernel_option_2440_machine_smdk.png]
SMDK 라고 하는 머신 타입이 보입니다.
여기에 별표 보이죠?
예.. SMDK2440 이라는 보드를 선택한 부분입니다.
이게 가장 보편적이죠
EZ-S2410 보드 할 때 이 부분 역시 설정되어 있기 때문에 굳이 하지 않은 겁니다.
내부적으로는 다 선택되어 있습니다.
아 …
참고로…
이 항목에서 HELP를 선택해서 머신 아키텍쳐를 얻기 위한 환경 변수 명을 확인해야 합니다.
나중에 필요합니다.
[A011_023_kernel_option_2440_machine_smdk_help.png]
뭐라고 되어 있죠?
여러가지가 있지만 가장 첫 라인에 써 있는 CONFIG_ARCH_S3C2440 라는 값을 주목해야 합니다.
기억 합시다 !
CONFIG_ARCH_S3C2440
자 이제 커널이 부팅 되었을 때 로우 레벨 디버그 메시지를 표시 할 수 있도록 설정하는 부분을 알아 봅시다.
다음 순서대로 따라하면 됩니다.
[A011_031_kernel_config_1.png]
[A011_032_kernel_config_2.png]
[A011_033_kernel_config_3.png]
[A011_034_kernel_config_4.png]
[A011_035_kernel_config_5.png]
자 모든 설정이 끝났다면 저장합시다..
[A011_036_kernel_config_6.png]
이제 정상적으로 부팅이 진행되도록 머신 아키텍쳐 번호를 알아내야 합니다.
2410에서는 웹 페이지를 이용했었죠?
http://www.arm.linux.org.uk/developer/machines/
여기서는
리눅스 소스에 있는 파일에서 찾아 봅시다.
linux/arch/arm/tools/mach-types
이 파일에는 웹 페이지에 있는 것들이 다 들어 있습니다.
그런데 ..
앞에서 제가 기억하라고 한 것 있죠?
CONFIG_ARCH_S3C2440
여기서 CONFIG_ 만 뺴면 ARCH_S3C2440 만 남죠?
이 단어가 위 파일의 두번째 항목에서 찾다 보면 발견 할 수 있습니다.
s3c2440 ARCH_S3C2440 S3C2440 362
위 내용이 발견되면..
예…
머신 아키텍쳐 번호는 362 번 되겠네요
이 값을 나중에 이지부트에서 설정하면 됩니다.
커널 컴파일 및 tftp 복사
이제 커널 컴파일을 해야 겠죠?
[root@localhost linux]# make zImage
별 무리 없이 컴파일 될 겁니다.
한가지 흠이라면 약간의 시간이 걸리죠 ㅋㅋ
이제 생성된 zImage 를 tftp 디렉토리에 복사합니다.
[root@localhost linux]# cp arch/arm/boot/zImage /tftpboot/zImage.ez-s3c2440
이지부트 머신 아키텍쳐 번호 수정
부트로더에서 set 명령을 이용하여 아키텍쳐 번호를 362로 수정합니다.
[A011_040_ezboot_set.png]
S 로 저장하고 Q 로 빠져 나옵니다.
커널 다운 로드 와 부팅
tfk 명령을 통해서 커널 이미지를 다운 받습니다.
[A011_041_ezboot_download.png]
rst명령을 사용하여 부팅합니다.
자 어떻게 될까요?
두근 두근…..
[A011_042_kernel_boot_fail.png]
으아아아악~~~~
이럴 수가 또 배신 합니다.
EZ-S2410 과 다른 양상이죠?
여러분 같으면 이런 상황에 뭘 의심 하시겠습니까?
흠
이번 글은 무척 짧습니다.
하지만 글 흐름상 끊기가 애매해서리..
비축분도 다 떨어져가고 ㅜㅜ
커널 다운로드
전 강좌글을 보면 커널 이미지는 zImage.ez-s3c2410 여야 합니다.
여기서 잠깐 한마디를 하면
이지부트와 커널은 무척 밀접하게 연결되어 있습니다.
물론 램 디스크까지도 영향을 미칩니다.
왜 이렇게 만들었는가 하면
실제 현장에서 설정 환경을 맞출 때 부트로더에서 모든 설정이 되면 편리한 것이 많습니다.
그래서 부트로더에서 여러가지 설정을 하고 이를 커널에 영향을 끼치도록 하고 다시 램디스크에 영향을 끼쳐서 최종적으로 응용 프로그램까지 설정 내용이 적용되도록 하게 되어 있습니다.
이것이 저희 회사가 패치해서 제공하는 부트로더나 커널 그리고 램디스크의 특징이기도 합니다.
그래서 저희는 사용하지만 여러분들이 잘 모르는
공개 되지 않는 몇 가지 팁들이 있습니다.
아마도 이런 것들이 낱낱히 밝혀지겠죠.. 호호
개발 환경인 coLinux 에 텔넷으로 접속한 상태에서 다음과 같은 명령으로 보드에서
이더넷 tftp 프로토콜로 커널 이미지를 다운받도록 설정해 봅시다.
[root@localhost linux]# cp arch/arm/boot/zImage /tftpboot/zImage.ez-s3c2410
보드에서 tfz 명령을 사용하여 리눅스 커널을 다운 받습니다.
EZBOOT>tfk
receive zImage.ez-s3c2410
tx ARP
ARP error
rx ARP
HOST MAC : 00:FF:A7:1F:64:00
HOST IP : 192.168.10.61
LOCAL IP : 192.168.102.101
Miss RX
option [timeout 120 tsize 1790900]
size = 1790900
...write 1790900 complete
...verify complete
EZBOOT>
efr 명령을 사용해서 램디스크 영역을 클리어 해 줍니다. 아까처럼 ecc 에러 어쩌구 하는 메시지 보기 싫으면요…
...erase 5MB complete
EZBOOT>
rst 명령을 사용해서 보드를 리부팅 해서 커널이 제대로 부팅되는지 살펴 봅니다.
EZBOOT>rst
System Soft Reset.......
EZBOOT>0123B
WELCOME EZBOOT V2.3.04 (FALINUX Co.,Ltd) ......S3C2410(EZ-S3C2410) (266MHz)
Program by You Young-chang, Oh Jae-Kyong, Jang Hyung-Gi
Last Modify May 10 2009
Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
SIZE 64-Mbytes (page=512, block=16K)
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar]
Copy Kernel Image .....
Copy Ramdisk Image .....
Starting kernel [MARCH 3006]...
kernel command [EZBOOT mem=64M initrd=0x30800000,5M root=/dev/ram0 ramdisk=16384 console=ttySAC2,115200 ip0=192.168.102.101 mac=00:FA:01:A2:13:04 netmask=255.255.0.0 gw=192.168.10.1 host=192.168.10.61 nandparts=2,8,54 ]
음하하하 , 역시나 커널 부팅 안합니다.
나오는 메시지 중
Copy Kernel Image .....
Copy Ramdisk Image .....
Starting kernel [MARCH 3006]...
kernel command [
이 부분은 모두 다 이지부트로더에서 표시해주는 내용입니다. 즉 커널은 아무 소리를 하지 않고 있다는 거지요..
자 여러분은 이런 상황이면 어디서부터 의심하시겠습니까?
-
Cheap Uggs 2011.10.11 17:22 신고
Fashion business attracts a large number of young people these days don't just for the reason that this is a alternatively new occupation, but also it can be supposed to comprehend person's likes while in the subject of fashion. In addition to, it's always particularly a high-paid career now. Any time a youthful individual decides to link his / her activity when using the trend community very little comes to head except a single its element - vogue design and style. Probably, handful of customers actually understand that it is a separate discipline of trend sector. In reality, you can find an ideal variety of other professions and specialties in including planning garments, style and design, online marketing, merchandising, and many others.
보드 준비 및 부트로더 확인
자.. 재수가 있는지 확인해 봅시다.
보드에 커널을 올려서 제대로 돌아 가면 복권 당첨 된거고, 안 돌아 가면 당연한 겁니다.
우선 보드를 준비해야 겠죠?
EZ-S2410은 다음과 같이 생겼죠..
[A007_001_EZ_S2410.jpg]
잘 생겼죠? (큼… 자기 자식 자랑하면 팔불출이라는데 )
근데 제가 가지고 있는 보드는 좀 너덜 너덜 하군요..
USB 호스트 쪽이 안 된답니다.
아하 짠돌이 생산팀… .
새거 주지..
시험을 하기 위해서
전원과 아답터 연결하고 , 시리얼 포트 연결 하고 , 이더넷 연결합니다.
그리고 전원 올려서 부팅 메시지를 봅니다.
제가 가진 S3C2410 부트로더 버전은 아래 부팅 메세지에서 볼수 있습니다.
일단 이 부분이 저하고 비슷해야 겠죠?
그래야
S3C2410 에 대하여 저와 동일하게 진행할 수 있지 않을까요?
뭐 각자의 길을 가자면 가지요..
전 손해 볼 것 없습니다.
어찌되었든…
부팅하면 다음과 같은 메시지가 나옵니다.
WELCOME EZBOOT V1.4 (FALINUX Co.,Ltd) ..........for EZ-S2410
Program by You Young-chang, Oh Jae-Kyoung
Modified by Park Mun-Sik, Jang Hyung-Gi
Last Modify Apr 6 2007
NAND Chip Check .......................
NAND Maker ID [EC] NAND Size ID [76]
Detect SAMSUNG [ec:76] 64MByte
BAD BLOCK SCAN ->
BootLoader, Kernel, Ramdisk Bad Block [1]
CS8900 Init............................
Mac Address : [00 A2 55 F2 26 35]
Detect value : [3000:3000]
Chip ID : [0E63:0009]
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar]..
EZBOOT>
헉! 버전이 V1.4 라고 나오네요
어허허…
최근 이지부트가 2.0인데.. 이게 언제적 부트로더여?
일단 부트로더부터 업그레이드 해야 겠네요..
제가 그랬죠?
이 글들은 강좌가 아니라고
제가 진행해 가는 과정을 그래로 보여 주는 거라고..
자~~
부트로더 업그레이드 한번 해 봅시다.
이지부트 2.0으로 업그레이드
이지부트는 사실 내부적인 소스가 있고 외부적 소스가 있습니다.
하하하.. 완전한 공개는 힘들죠… ^^;
업체에서 요구한 부분들이나 저희 회사 나름대로 사전 진행하는 과정에서 발생한 소스들이 있는데 이것들은 공개 하기가 곤란하죠.
그래도 웬만한 것은 모두 다 공개해 갑니다. 감추고 있는 것은 1%로도 되지 않습니다.
어찌되었든
부트로더를 다운해야 겠죠?
부트로더가 어디있죠?
예 저희 회사 이지부트로더는 여기서 다운 받습니다.
이걸 다운로드 받아 보겠습니다. 외부에서 관리해야 하기 때문에 colinux 상에서
/project/ezboot_outsize/
라고 하는 디렉토리를 만들고 여기에 다운 받도록 하겠습니다.
[root@localhost ezboot_outside]# wget http://ftp.falinux.com/ezboot/recommendation/ezboot.tar.gz
--2009-05-10 02:57:58-- http://ftp.falinux.com/ezboot/recommendation/ezboot.tar.gz
Resolving ftp.falinux.com... 211.239.155.99
Connecting to ftp.falinux.com|211.239.155.99|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 291184 (284K) [application/x-gzip]
Saving to: `ezboot.tar.gz'
100%[=======================================================>] 291,184 --.-K/s in 0.08s
2009-05-10 02:57:58 (3.47 MB/s) - `ezboot.tar.gz' saved [291184/291184]
[root@localhost ezboot_outside]#
워낙 소스가 작기 때문에 금방 받습니다.
이제 압축을 풀어 봅시다.
다음과 같은 명령을 사용합니다.
[root@localhost ezboot_outside]# tar zxvf ezboot.tar.gz
이제 ezboot란 디렉토리가 생겼을 겁니다.
여기로 이동합니다.
[root@localhost ezboot_outside]# cd ezboot
[root@localhost ezboot]# ls
Makefile arch_pxa255 ez-au1250_make.sh ez-pxa270_make.sh image
arch_au1250 arch_pxa270 ez-ep9312_make.sh ez-s3c2440_make.sh include
arch_ep9312 arch_s3c2440 ez-pxa255_make.sh ez-x5_make.sh main
[root@localhost ezboot]#
허걱~
S3c2410 이 없습니다.
오마이 갓….
어쩐지 수 많은 고객들이 난리더구만.. 허허…
어떻게 2410이 없을 수 있죠?
이번에 심각하게 반성해야 겠군요..
그렇다면 긴급 패치에 들어가야 하는데..
흠.. , 에혀… , 어떻게 해야 하나..
고민 고민…
(**) 여기서부터
(**) 여기까지 글을 쓰는 사이에 약간의 시간이 흘렀습니다. ^^
짜잔!
다음과 같은 EZ-S3C2410 추가된 파일을 FTP 에 올렸습니다.
ftp://ftp.falinux.com/ezboot/history/2009_05_10/ezboot-yyc.tar.gz
이것은 공식적인 버전이 아닙니다
나중에 개발팀에서 공식적인 버전을 올려 놓겠죠?
수정된 파일을 다운 로드 받은 후 앞에서와 동일한 방법으로 압축을 풉니다.
그리고 컴파일 합니다.
이지부트 소스는 make 를 직접 사용하지 않고 몇가지 설정이 필요해서 이것을 쉘 스크립트로 만들었습니다.
그래서 다음과 같이 컴파일 해야 합니다.
[root@localhost ezboot]# ./ez-s3c2410_make.sh clean
[root@localhost ezboot]# ./ez-s3c2410_make.sh
./ez-s3c2410_make.sh clean 이 명령은 처음 한번만 하면 됩니다.
소스가 수정되면 ./ez-s3c2410_make.sh 이면 충분합니다.
이 처리 결과 다음과 같이 마지막에 메시지가 나오면 성공한 겁니다.
dd if=arch_s3c2410/start/start_org of=image/ezboot.ez-s3c2410 bs=1k conv=sync
1+1 records in
2+0 records out
2048 bytes (2.0 kB) copied, 0 s, Infinity B/s
dd if=main/main_org of=image/ezboot.ez-s3c2410 bs=1k seek=4
54+1 records in
54+1 records out
56128 bytes (56 kB) copied, 0 s, Infinity B/s
chmod 777 image/ezboot.ez-s3c2410
[root@localhost ezboot]#
부트로더 이미지는 image/ezboot.ez-s3c2410에 생겼습니다
그렇다면 이걸 tftp 프로토콜로 다운로드 받을 수 있겠 끔 옮겨야 겠죠?
자 이제 모두 끝났습니다.
다시 보드의 시리얼 에뮬레이터로 가 봅시다.
set 명령을 사용해서 컴파일된 부트로더를 받기 위한 환경 설정을 합니다.
^^;
1. MAC Address [00:a2:55:f2:26:35]
2. LOCAL IP [192.168.102.101]
3. HOST IP [192.168.10.61]
4. Host tftp directory []
5. zImage file name [zImage.s2410]
6. ram disk file name [ramdisk-12M.gz]
7. boot loader file name [ezboot.ez-s3c2410]
A. Autoboot wait time [3]
B. Boot Menu Key [ ]
C. Copy Ramdisk [Y/N] [Y]
D. Architecture Number [784]
E. Console Serial Number [2]
F. NAND-Partition MByte [2:5:57] (kernel:ramdisk:app)
W. Watchdog (sec, off=0) [0]
K. Kernel CMD 1st [initrd=0x30800000,5M root=/dev/ram0 ramdisk=12288]
M. Kernel CMD 2nd [console=ttySAC2,115200]
N. Kernel CMD 3rd []
L. Load Default
P. Apply & Exit
S. Save
0. Exit
Select >>
확인해봐야 하는 항목은 2번,3번,7번입니다.
tfb 명령을 통해서 다운받고 부트로더 이미지 받고
EZBOOT>tfb
Receive ezboot.ez-s3c2410
Send ARP Packet
Send ARP Packet
ARP PACKET Resive
HOST MAC : [ 00 FF A7 1F 64 00 ]
HOST IP : [192.168.10.61]
LOCAL IP : [192.168.102.101]
Resive Address : 3100-0000
TFTP Request Send
OPTION [timeout 120 tsize 60224]
ALL DATA RESIVE OK [ 60224 bytes ]
Erase : OK
Write : OK
Verify: OK
EZBOOT>
rst 명령을 통해서 보드 리부팅 합니다.
EZBOOT>rst
System Soft Reset.......
0123B
WELCOME EZBOOT V2.3.04 (FALINUX Co.,Ltd) ......S3C2410(EZ-S3C2410) (266MHz)
Program by You Young-chang, Oh Jae-Kyong, Jang Hyung-Gi
Last Modify May 10 2009
Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
SIZE 64-Mbytes (page=512, block=16K)
ff ff ff : a5 a5 97
ecc correct addr=0x00100000
ecc fail addr=0x00100200
ff ff ff : 6a 99 97
ecc fail addr=0x00100400
ecc fail addr=0x00100600
ff ff ff : 56 69 6b
ecc fail addr=0x00100800
:
:
ff ff ff : 96 96 9b
ecc fail addr=0x00107800
ecc fail addr=0x00107a00
ecc fail addr=0x00107c00
ecc fail addr=0x00107e00
diff magic [flash:20081103]
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar]..
CS8900 Init ......
Mac Address : [00 FA 01 A2 13 04]
Detect value : [3000:3000]
Chip ID : [0E63:0009]
EZBOOT>
이때 ecc fail 이라는 글자가 나온다고 당황하지 마시기 바랍니다.
이전 버전의 부트로더에서 ECC 체크를 하지 않았는데
2.0에서부터 ecc 체크를 하도록 했기 때문에 발생하는 것입니다.
일단은 set 명령을 사용해서
^^;
1) mac address : 00:FA:01:A2:13:04
2) local ip : 192.168.102.101
3) local netmask : 255.255.0.0
4) local gateway : 192.168.10.1
5) server ip : 192.168.10.61
6) zImage file name : zImage.ez-s3c2410
7) ram disk file name : ramdisk-1.11-16M.gz
8) boot loader file name : ezboot.ez-s3c2410
9) logo image file name :
10) auto execute full name :
11) autoboot wait time : 3
12) copy ramdisk [Y/N] : Y
13) arm kernel arch number : 3006
14) nand part (B,C,L,K,R,A): 1,1,0,3,5,54
15) watchdog (sec, off=0) : 0
16) KCMD 1 : mem=64M
17) KCMD 2 : initrd=0x30800000,5M root=/dev/ram0 ramdisk=16384
18) KCMD 3 : console=ttySAC2,115200
19) KCMD 4 :
20) KCMD 5 :
21) KCMD 6 :
L) Load default
LF) load KCMD2 root=flash
LR) load KCMD2 root=ramdisk
M) generlate Mac address
S) Save to flash
P) aPply & exit
Q) Quit
Select >>
일단 자신의 네트워크 상황에 맞도록 2,3,4,5 항을 수정하십시오 위 예시는 제 보드의네트워크 설정입니다.
그리고 환경 저장을 하시고
tfb 명령을 수행하셔서 다시 한번 부트로더를 받습니다.
그리고
rst 명령을 사용하거나 전원을 껐다가 켜서 다시 보드를 부팅 시킵니다.
EZBOOT>rst
System Soft Reset.......
EZBOOT>0123B
WELCOME EZBOOT V2.3.04 (FALINUX Co.,Ltd) ......S3C2410(EZ-S3C2410) (266MHz)
Program by You Young-chang, Oh Jae-Kyong, Jang Hyung-Gi
Last Modify May 10 2009
Detect Samsung NAND 64M 3.3V 8-bit Flash : vid=EC pid=76
SIZE 64-Mbytes (page=512, block=16K)
Quickly Autoboot [ENTER] / Goto BOOT-MENU press [space bar].
CS8900 Init ......
Mac Address : [00 FA 01 A2 13 04]
Detect value : [3000:3000]
Chip ID : [0E63:0009]
EZBOOT>
보시는 바와 같이 깔끔하게 정리 됩니다. 하하
자 이제 부트로더를 업그레이드 했습니다.
이제 커널만 올리면 됩니다. 음하하하
리눅스 커널 구하기
제는 커널 2.6 이후부터 커널 개발자들에게 정말 감사해 합니다.
리눅스 커널 소스에 임베디드를 위한 커널 패치가 모두 포함되었기 때문이죠
그분 들에게 축복이 있으라~~
옛날에는 arm 패치니 하는 것들이 있었는데 지금은 그냥 그 단계가 싹 사라진 거죠.
자..
일단 최소한 오늘은 리눅스 커널 소스는 다운 받아야 합니다.
벌써 진입부에서 지쳐 버리면 안 되거든요…
우선 리눅스 커널를 구할 수 있는 곳은 어디 일까요?
그림에 보듯이
www.kernel.org
로 가면 됩니다.
벌써 이글을 쓰는 시점에 2.6.30으로 마구 마구 달리고 있네요
하여간 부지런한 분들입니다.
제가 디바이스 드라이버 개정판 못 내는 이유가 저 이유입니다. ㅠㅠ
어쨌든 우리는 2.6.28 을 받아야 합니다.
홈페이지에 보면
http://www.kernel.org/pub/
ftp://ftp.kernel.org/pub/
에서 받을 수도 있고 미러 사이트들이 있다는 것도 알 수 있습니다.
아무래도 한국에 있는 미러 사이트가 좀 빠릅니다.
하지만 전 다운로드 하면서 커피한잔과 인터넷 서핑이라는 여유를 즐기기 위해서
아래 링크에서 받기로 했습니다.
http://www.kernel.org/pub/linux/kernel/v2.6/ linux-2.6.28.10.tar.gz
후후..
2.6.28에 10이 더 붙은 놈이군요..
뭐 2.6.29 버전을 하고 싶다는 욕망이 있지만 일단 참아 보렵니다.
원래 목표대로 가야 하지 않겠습니까?
후후
이걸 윈도우에서 클릭해서 다운로드를 받을 수 있겠지만 coLinux에서 명령행으로 받아 보기로 했습니다.
아..
참…
리눅스에서 작업 디렉토리는
/project/linux_2628/trunk
로 하기로 했습니다.
이걸 일단 포팅을 공개적으로 하기 위해서 svn 공개 리포지토리를 하나 만들겠습니다.
외부에서 다운 로드만 가능하게 하도록 하겠습니다.
저는 당근 커밋 권한이 있겠죠?
여러분들은 브라우징 권한만 있고요…
svn://svn.falinux.com/linux_2628/trunk/ 로 하죠..
/project/linux_2628/trunk
자신의 컴퓨터에 체크 아웃을 하시려면 다음과 같이 합니다.
체크아웃된 리비전 1.
자…
이제 이 디렉토리에 커널 소스를 가져 옵시다.
웹 파일 가져 오는 리눅스 명령 중에 wget 이라고 하는 명령이 있습니다.
이걸 한번 사용해 보겠습니다.
--2009-05-05 03:38:06-- http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.10.tar.gz
Resolving www.kernel.org... 204.152.191.37, 130.239.17.4, 149.20.20.133, ...
Connecting to www.kernel.org|204.152.191.37|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 66796955 (64M) [application/x-gzip]
Saving to: `linux-2.6.28.10.tar.gz'
100%[=========================================================>] 66,796,955 2.82M/s in 25s
2009-05-05 03:38:32 (2.58 MB/s) - `linux-2.6.28.10.tar.gz' saved [66796955/66796955]
[root@localhost linux_2628]#
받은 파일의 압축을 풉니다.
linux-2.6.28.10.tar.gz trunk
[root@localhost linux_2628]# mv linux-2.6.28.10.tar.gz trunk/
[root@localhost linux_2628]# cd trunk/
[root@localhost trunk]# tar zxvf linux-2.6.28.10.tar.gz
생성된 linux-2.6.28.10 디렉토리에 linux 라고 하는 이름으로 링크를 겁니다.
이렇게 하는 이유는 현재 작업중인 리눅스 커널을 명기 하기 위한 것도 있고
나중에 패치를 만들 때 디렉토리 명을 통일하기 위한 것도 있습니다.
일단 전 여기까지 작업을 하고 서브버전 커밋 했습니다.
아..
깜빡 잊었는데요..
전 주로 작업할 때 root 권한으로 합니다.
저의 이 무식한 행위를 이해해 주세요..
이번 커널 2.6.28 을 적용하려는 보드들은 다음과 같은 모델입니다.
▶ EZ-PXA270
▶ EZ-S2410
▶ EZ-S2440
▶ EZ-EP9312
▶ EZ-S3C6410
▶ EZ-AU1250
▶ EZ-IXP420
그리고 포팅 순서는 아마도 S3C2440 이 가장 먼저 될겁니다.
자 이제 포팅 할 각 보드를 간단하게 그림과 프로세서 소개로 알아 보겠습니다.
● EZ-X5
프로세서 코어 : ARM 계열 XScale
프로세서 모델 : 400MHz PXA255 ARM RISC Chip
● EZ-PXA270
프로세서 코어 : ARM 계열 XScale
프로세서 모델 : 520MHz PXA270 ARM RISC
● EZ-S2410
프로세서 코어 : ARM 계열 ARM920T
프로세서 모델 : 266MHz S3C2410A ARM RISC Chip
● EZ-S2440
프로세서 코어 : ARM 계열 ARM920T
프로세서 모델 : 400MHz S3C2440A ARM RISC Chip
● EZ-EP9312
프로세서 코어 : ARM 계열 ARM920T
프로세서 모델 : EP9312 200MHz RISC Chip
● EZ-AU1250
프로세서 코어 : MIPS 계열 MIPS32
프로세서 모델 : RMI AU-1250 600MHz MIPS core
● EZ-IXP420
현재 비 판매 보드
프로세서 코어 : ARM 계열 XScale
프로세서 모델 : IXP420
PCI 버스 지원
네트워크 특화 보드
● EZ-S3C6410
현재 비 판매 보드
프로세서 코어 : ARM 계열 ARM1176JZF-S
프로세서 모델 : 667MHz S3C6410 ARM RISC Chip
-
Cheap Uggs 2011.10.11 16:14 신고
Fashion business attracts a large number of young people these days don't just for the reason that this is a alternatively new occupation, but also it can be supposed to comprehend person's likes while in the subject of fashion. In addition to, it's always particularly a high-paid career now. Any time a youthful individual decides to link his / her activity when using the trend community very little comes to head except a single its element - vogue design and style. Probably, handful of customers actually understand that it is a separate discipline of trend sector. In reality, you can find an ideal variety of other professions and specialties in including planning garments, style and design, online marketing, merchandising, and many others.
-
Cheap Uggs 2011.10.11 16:24 신고
Fashion business attracts a large number of young people these days don't just for the reason that this is a alternatively new occupation, but also it can be supposed to comprehend person's likes while in the subject of fashion. In addition to, it's always particularly a high-paid career now. Any time a youthful individual decides to link his / her activity when using the trend community very little comes to head except a single its element - vogue design and style. Probably, handful of customers actually understand that it is a separate discipline of trend sector. In reality, you can find an ideal variety of other professions and specialties in including planning garments, style and design, online marketing, merchandising, and many others.