커널 구성 10) Device Drivers
Download
Report
Transcript 커널 구성 10) Device Drivers
제 7강 커널 컴파일2
목 차
강의 목표
커널 컴파일
강의 목표
커널의 컴파일 과정을 안다.
Makefile을 이해 한다.
커널의 모듈화를 이해한다.
커널에 디바이스를 포함시키는 방법을 안다.
커널 구성
10) Device Drivers --->
커널 구성
10) Device Drivers --->
Hotplug firmware loading
support 설정
<*> Hotplug firmware
loading support
커널 구성
10) Device Drivers --->
Memory Technology
Devices(MTD) --->
임베디드 디바이스에서 파
일시스템을 구성하는데 사용
하는 플래시 메모리, RAM, 그
리고 그 비슷한 다른 칩셋 등
메모리 장치를 세팅한다.
커널 구성
10) Device Drivers --->
NAND Flash Device Drivers
--->
<*> NAND Device Support
<*> NAND Flash device on
X-HYPER320 TKU board
[*] support for PXA3xx
Processor NAND flash DMA
operation
커널 구성
10) Device Drivers --->
디스크장치 사용을 위해
SCSI device support 선택
커널 구성
10) Device Drivers --->
Network device support
네트워크 장치가 사용할 드라이
버를 선택한다.
커널 구성
10) Device Drivers --->
<*> DM9000 support
X-HYPER320-TKU Ethernet 장
치 DM9000 지원.
커널 구성
10) Device Drivers --->
Input device support - XHyper320TKU 터치스크린관련
드라이버 설정
커널 구성
10) Device Drivers --->
Character devices –
터미널, 비디오 어뎁터, 마우
스, 프린터 등 문자 단위로 데
이터를 다루는 다양한 장치들을
지원설정
커널 구성
10) Device Drivers --->
X-HYPER320 IEB drivers –
IEB보드 디바이스 추가
커널 구성
10) Device Drivers --->
Serial drivers
Ⓐ [*] PXA2xx/PXA3xx Processor serial port support
Ⓑ [*] Console on PXA2xx/3xx Processor serial port
직렬 포트를 시스템 콘솔로 쓸 수 있는 옵션이다(시스템 콘솔은 커
널 메세지와 경고들을 받아 뿌려주고 싱글 유저 모드로 로긴할 수 있
게 해주는 디바이스이다). 가령 직렬 포트 프린터 등으로 여러 메시지
들을 기록할 수도 있다. 여기서 [Y]를 설정해도 커널 패러미터를 조정
하지 않으면 /dev/tty0가 시스템 콘솔로 그대로 잡혀 있다.
커널 구성
10) Device Drivers --->
이 옵션을 이용하면 VGA
카드가 없는 리눅스 시스템
도 운영할 수 있는데, 커널
이 자동으로 시스템 콘솔을
/dev/ttyS0로 잡는다. 리눅
스 박스에 직접 연결된 모니
터와 비디오 카드, 키보드
등이 없어도 시리얼 라인으
로 연결된 다른 터미널에서
시스템을 제어할 수 있다.
이는 리눅스를 이용한 라우
터, 공유기 등 네트워크 장
비에서 많이 사용한다.
커널 구성
10) Device Drivers --->
I2C support
커널 구성
10) Device Drivers --->
PXA320 Processor의 I2C기능
사용
<*> PXA2xx/PXA3xx
Processor I2C adapter
(EXPERIMENTAL)
[*] PXA2xx/PXA3xx I2C
Polling support (EXPERIMENTAL)
커널 구성
10) Device Drivers --->
Multimedia devices - <*>
Video For Linux 추가
커널 구성
10) Device Drivers --->
Graphics support
Linux에서 사용하는 그래픽
장치의 설정 및 로고 등을 선택
[*] Enable Video Mode
Handling Helpers
<*> PXA2xx/PXA3xx
Processor LCD framebuffer
support
<*> LCD overlay support
커널 구성
10) Device Drivers --->
Console display driver
support – LCD에 콘솔메세지를 출
력하기 위한 폰트설정
<*> Framebuffer Console
support
[*] Select compiled-in fonts
[*] VGA 8x16 font
커널 구성
10) Device Drivers --->
Logo configuration – 부팅 로
고 이미지 설정
[*] Bootup logo
[*] XHYPER320 TKU Linux logo
XHYPER320 TKU용 로고 이미지를
사용하게 된다.
커널 구성
10) Device Drivers --->
Sound ---> <*> Sound card
support
커널 구성
10) Device Drivers --->
ALSA(Advanced Linux Sound
Architecture) 드라이버 사용
<*> Advanced Linux Sound
Architecture
<*> OSS Mixer API
<*> OSS PCM (digital audio)
API
ALSA ARM devices ---> <*>
AC97 driver for the Intel
PXA2xx chip
커널 구성
10) Device Drivers --->
USB support --->
USB 장치들을 설정(Host, Class
Driver, Slave Driver)
<*> Support for Host-side USB
<*> OHCI HCD support
<*> USB Mass Storage support
커널 구성
11) File systems --->
커널 구성
11) File systems --->
Network File Systems --->
<*> NFS file system support
어떤 다른 (보통 로컬) 유닉스 컴퓨
터에 연결되었거나 Network File
Sharing protocol 을 사용하여 NFS
server에 들어있는 파일들을 마운트
(mount)할 때 사용.
[*] Provide NFSv4 client support
[*] Root fileSystem on NFS
“IP: kernel level
autoconfiguration”과 함께 쓰여 네트
워크 위의 다른 컴퓨터를 마운트하여 루
트 파일시스템으로 사용.
커널 구성
11) File systems --->
설정을 확인한후 Yes를 선택하여
저장
커널 컴파일
X-Hyper320TKU 보드용으로 포팅되어 있는 커널소스를 컴파일한다.
컴파일을 하기 위해서 최상위 Makefile에서 CROSS_COMPILE항목
에 컴파일러 경로를 수정한다.
# cd linux
# vi Makefile
실습에서는 /320/Kernel/linux 디렉토리로 이동한다
저장을 위해서는 강제저장 :w! 후 종료함
커널 컴파일
make WENDERS_defconfig 명령으로 X-Hyper320TKU설정을 적용
# cd linux
# make WENDERS_defconfig
커널 컴파일
make zImage 명령으로 커널 이미지를 생성
# make zImage
커널 컴파일
위와 같은 명령을 실행 하면 컴파일이 진행되며, 컴퓨터 성능에 따라
10~20분에서 그 이상이 소요되며 컴파일이 완료된다
# ls arch/arm/boot/zImage
절대경로로는 /320/Kernel/linux/arch/arm/boot 디렉토리에 생성됨
임베디드 보드를 위한 커널이 컴파일 된 것이다.