Device Tree 상세분석 in Linux Kernel 4.0

책소개:

312쪽 | 257*188mm (B5) | 593g | ISBN : 9788997750061

 

커널연구회가 그동안 수년동안 최신의 리눅스 커널 소스를 분석하고 정리해온 노력들이 그대로 책속에 담겨져 있다. 또한 삼성 Exynos5420이 탑재된 Arndale Octa Board에 리눅스 커널 4.0 소스와 Device Tree를 포팅하는 과정을 그대로 따라하면서 실습할 수 있도록 내용을 구성하여 독자분들이 현장 업무에 그대로 적용할 수 있도록 했다.

 

커널연구회는 리눅스 커널과 자료구조 알고리즘을 연구하고 리눅스 시스템 프로그래밍 및 디바이스드라이버 개발을 통하여 창의적인 프로젝트를 수행하여 IoT 관련 제품들을 만들어 일상 생활을 풍요롭고 편리하게 하는데 가치를 두고 있습니다. 아울러 관련 기술들을 교육하여 여러사람들과 공유할 수 있도록 노력하고 있습니다.

 

"Device Tree 상세분석 in Linux Kernel 4.0"은 커널연구회가 그동안 수년동안 최신의 리눅스 커널 소스를 분석하고 정리해온 노력들이 그대로 책속에 담겨져 있습니다. 또한 삼성 Exynos5420이 탑재된 Arndale Octa Board에 리눅스 커널 4.0 소스와 Device Tree를 포팅하는 과정을 그대로 따라하면서 실습할 수 있도록 내용을 구성하여 독자분들이 현장 업무에 그대로 적용할 수 있도록 했습니다.

 

제1장에서는 작업환경에 해당하는 리눅스 커널 소스, 크로스컴파일러, 실습용 보드에 대해서 소개하고 Device Tree 소스에 대해서 요약 설명한다. 제2장은 Device Tree 소스를 분석하고 제3장에서 좀더 실용적으로 자세히 설명한다. 제4장에서는 앞에서 학습한 내용을 바탕으로 실습용 보드에서 그대로 따라하며 실습할 수 있도록 내용이 구성되어 있다. 부트로더, 리눅스 커널 4.0, 램디스크 소스를 빌드하는 방법을 순서대로 설명하고 디바이스 트리를 테스트하여 확인할 수 있다. 제5장부터는 모든 디바이스드라이버의 기본이 되는 시리얼(UART) 드라이버를 심도있게 자세히 분석하여 설명하는 내용으로 진행된다.

 

목차:

내용

DEVICE TREE 상세분석 1

저작권 2

커널연구회 로드맵 3

커널연구회 교육과정 4

저자 소개 5

문서 표준 6

목차 9

1. 작업환경 및 소스경로 14  

1.1 개요 14  

1.2 작업환경 15  

1.3 DEVICE TREE 소스경로 17

2. DEVICE TREE 소스 분석 21  

2.1 DTS 기본 문법 21  

2.2 DTS 기본 예제 23  

2.2.1 CPU 표현 23  

2.2.2 노드 명칭들 24  

2.2.3 디바이스 표현 24  

2.2.4 compatible 속성 25  

2.3 주소 표현 26  

2.3.1 CPU 주소 지정 28  

2.3.2 메모리 매핑 장치들 28  

2.3.3 메모리 매핑 않되는 장치들 30  

2.3.4 Ranges 속성 31  

2.4 인터럽트 표현 34  

2.5 사용자 추가 데이터 37  

2.6 특별한 노드들 38  

2.6.1 aliases 노드 38  

2.6.2 chosen 노드 39  

2.7 진보된 주제들 39  

2.7.1 진보된 장치 예제 39  

2.7.2 PCI 호스트 브릿지 40  

2.7.3 PCI 주소 변환 40  

2.7.4 진보된 인터럽트 매핑 43

3. DEVICE TREE 실용 분석 50  

3.1 CPU 표현 54  

3.2 메모리 표현 57  

3.3 인터럽트 표현 59  

3.4 CLOCK 표현 63  

3.5 CCI 표현 65  

3.6 내부 시스템 메모리 표현 66  

3.7 MMC 표현 66  

3.8 MCT(타이머) 표현 67  

3.9 핀맵(PINCTL) 표현 68  

3.10 AMBA 표현 83  

3.11 I2S 표현 84  

3.12 SPI 표현 85  

3.13 UART 표현 86  

3.14 PWM 표현 87

3.15 ADC 표현 88  

3.16 I2C 표현 88  

3.17 USB 표현 91  

3.18 TMU 표현 93  

3.19 멀티미디어 표현 93

4. DEVICE TREE 실습 96  

4.1 삼성 EXYNOS5420 이해 97  

4.2 개발 환경 구축 100  

4.2.1 우분투 설치 100  

4.2.2 개발용 패키지들 설치 101  

4.2.3 크로스 컴파일러 설치 103  

4.3 소스 빌드 및 포팅 105  

4.3.1 u-boot 소스 빌드 105  

4.3.2 마이크로 SD카드 부팅 113  

4.3.3 리눅스 커널 소스 빌드 117  

4.3.4 램디스크 포팅 134  

4.4 커널 부팅 소스 분석 151  

4.5 시리얼(UART) 드라이버 190  

4.6 USB 드라이버 196

4.7 GPIO 드라이버 179  

5. UART 드라이버 상세분석 202  

5.1 UART 구조체 204  

5.2 UART 드라이버 등록 205  

5.3 UART 포트 등록 206  

5.4 UART 드라이버 동작 207  

5.5 UART 실행함수들 207

6. UART 구조체 209  

6.1 UART_DRIVER 구조체 210  

6.2 CONSOLE 구조체 211  

6.3 UART_STATE 구조체 211  

6.4 TTY_DRIVER 구조체 212  

6.5 TTY_PORT 구조체 212  

6.6 UART_PORT 구조체 213  

6.7 UART_8250_PORT 구조체 215  

6.8 TTY_OPERATIONS 구조체 216  

6.9 UART_OPS 구조체 217  

6.10 TTY_STRUCT 구조체 218  

6.11 KTERMIOS 구조체 220  

6.12 UART_ICOUNT 구조체 220  

6.13 TTY_LDISC 구조체 221  

6.14 TTY_BUFFER 구조체 222  

6.15 기타 구조체 223  

6.15.1 cdev 구조체 223  

6.15.2 platform_ 구조체 223  

6.15.3 proc_dir_entry 구조체 224  

6.15.4 file_operations 구조체 224  

6.15.5 work_struct 구조체 225  

6.15.6 circ_buf 구조체 225  

6.15.7 baud rate 상수 226

7. UART 드라이버 등록 228  

7.1 SERIAL8250_INIT() 229  

7.2 UART_REGISTER_DRIVER() 231  

7.3 TTY_REGISTER_DRIVER() 232

8. UART 포트 등록 235  

8.1 SERIAL8250_REGISTER_PORTS() 236  

8.2 UART_ADD_ONE_PORT() 237  

8.3 SERIAL8250_ISA_INIT_PORTS() 239

9. UART 8250 드라이버 동작 241  

9.1 SERIAL8250_PROBE() 243  

9.2 SERIAL8250_SUSPEND() 248  

9.3 SERIAL8250_RESUME() 251  

9.4 인터럽트 동작 254  

9.4.1 receive_chars() 254  

9.4.2 transmit_chars() 256

10. 삼성 UART 드라이버 동작 257  

10.1 드라이버 등록 257  

10.2 포트 정보 260  

10.3 PROBE 262  

10.4 드라이버 동작 264  

10.5 문자 전송(_TX_CHARS) 266  

10.6 문자 수신(_RX_CHARS) 268

11. TTY 실행 함수들 271  

11.1 TTY 드라이버 등록 273  

11.2 TTY_OPEN() 274  

11.3 TTY_READ() 277  

11.4 TTY_WRITE() 279

12. UART 실행 함수들 281  

12.1 입출력(IO) 함수들 283  

12.2 UART_OPEN() 285  

12.3 UART_WRITE() 287

부록1. SENSOR 정보 요약 289  

A1.1 PHOTORESISTOR 289  

A1.2 PHOTOTRANSISTOR 290  

A1.3 거리 센서 291  

A1.4 적외선(INFRARED) 센서 292  

A1.5 초음파(ULTRASONIC) 센서 292  

A1.6 ACCELEROMETERS 293  

A1.7 MAGNETOMETERS 294  

A1.8 GYROSCOPE 295  

A1.9 배터리 센서 296  

A1.10 위험(화재, 가스누출)감지 센서 297

부록2. 병렬처리 299  

A2.1 병렬처리 용어정리 299  

A2.2 필요 기술 303  

A2.3 동작 시나리오 304

부록3. 커널연구회 교육과정 308  

A3.1 교육 일정 308  

A3.2 교육 로드맵 308  

A3.3 상세 교육 내용 테이블 309  

A3.4 커널연구회 로드맵 310  

A3.5 실습용 임베디드 보드 311

A3.6 커널연구회 교육학원 위치(약도) 312

Device Tree 상세분석 in Linux Kernel 4.0

책소개:312쪽 | 257*188mm (B5) | 593g | ISBN : 9788997750061 커널연구...

회원 등급
할인 행사
적립금
배송비
추가 금액
수량
품절된 상품입니다.