아래의 사이트 Modules Library 에서 원하는 CPU에서 각각의 모듈의 지원을 확인하자.
- TI Main Wiki 관련문서 검색
TI에서 제공하는 MCU들의 정보들을 그룹별로 간단하게 파악이 가능하다
http://processors.wiki.ti.com/index.php/Main_Page
- TI Traning 관련자료
반드시 참고하고 숙지해야 할 것 이다.
http://processors.wiki.ti.com/index.php/Hands-On_Training_for_TI_Embedded_Processors
https://training.ti.com/search-catalog/categories/products
- TI CCS V6 Training 정보 및 CCSV6 칩 별로 기능지원확인
1.1 CCS or Eclipse LINUX Debug 구성
CCS는 기본적으로 Eclipse으로 기반으로 구성되어있기 때문에, 동일한 부분이 상당히 많으며, Eclipse를 나누어서 공통으로 생각해야 할 부분이 많다.
- Linux 기본 Debugging 구성
- App은 Gdb와 Gdbserver
- Kernel JTAG을 이용한 Debug이지만, CCS에서 vmlinux로 실행
상세한내용은 아래의 TI에서 제공해주는 PPT 자료를 한번보자
http://processors.wiki.ti.com/index.php/CCS_Modules_Library#Linux_Debug
http://processors.wiki.ti.com/index.php/Linux_Debug_in_CCSv5
- View->Other->Profiling (eclipse에서 기본제공)
- gcov
- gprof
1.2 Linux Tools Install (CCS or Ecplise에 설치)
Eclipse or CCS 동일하며, Linux Tools 라는 Profile Program을 제공을 해준다.
Valgrind, OProfile, RPM, SystemTap, GCov, GProf, LTTng의 기능을 제공을 해준다고 하는데, 이미 GCov와 GProf 기능은 존재한다.
Valgrind Heap Memory Profile 해주는 Tool , OProfile, SystemTap, LTTng 기능을 사용하고 싶지만, 아직 사용을 못해봤다.
하지만 설치는 가능하다.
관련설명
http://www.eclipse.org/linuxtools/
- Help->Install New Software
1. Available Software Sites에서 현재 추가된 Site 확인가능
2. Linux Tools update Site 추가
- Add 로 사이트 추가
- Name : Linux Tools
- Location: http://download.eclipse.org/linuxtools/update/
- Linux Tool Package 설치방법
- Linux Tool Download (강제설치 방법)
Archive Menu를 이용하여 직접 추가 한 후 강제로 설치
http://www.eclipse.org/linuxtools/downloads.php
- Help->Install Details
Update or 설치된 Package를 제거 가능하다.
- Help->Eclipse Marketplace
- PyDev (Python IDE)
- Vrapper (Vim)
CCS를 Eclipse 처럼 동일하게 많이 이용하여 좋지만 CCS에는 TI에서 제공해주는 많은 Package도 설치하여 동작하기 때문에
가능하면 CCS의 본연의 기능으로 이용하는 것이 좋을 것 같다.
예를들면, TI의 Compiler version Package 문제로 빌드오류 발생 문제든지, 다른 Package로 문제성이 있겠다.
1.3 Kernel Debug on Window CCS
- KERNEL DEBUG 환경설정 (요약)
이를 CCS에서 Run->load -> Load Sysmbols로 ARM CPU에 올려준다.
이를 View->Modules 에서 올라간 vmlinux를 간단히 확인가능하지만, TI Reference 처럼 실행을 할 수가 없다.
참고로, KERNEL Source에서 menuconfig 할때에는 아래와 같이 ARCH를 넣어줘야함.
만약, 매번 넣기 귀찮다면, export 이용하거나 source를 이용함.
$ make ARCH=arm menuconfig Kernel hacking-> 필요한 debug 선택
다시 Kernel을 build 후 vmlinux 사용하기위해 u-boot 설정을 변경한다.
문제는 fdtfile을 사용하기에, kernel 의 arch/arm/mach-omap2에서 board-generic.c를 사용한다.
(DT_MACHINE_START(AM43_DT, 이곳에 breakpoint를 걸지라도 fdtfile 필요하다. )
1.4 Kernel Debug on Linux CCS
기본적으로 유사하지만, 이클립스에서 source를 Project를 만들어 hw breakpoint를 만들수 있다. 하지만 이클립스에서 Project를 만들 경우, kernel 및 uboot 소스가 변형이 된다.
그러므로, 이부분은 주의해야한다.
특히 커널은 메뉴가 x86로 자동으로 설정이 되어서, 에러가 발생이 된다.
- TI LINUX DEBUG
TI 기본적으로, LINUX에서 CCS를 설치하는 것을 권장하는 것 같음
관련설정
http://processors.wiki.ti.com/index.php/Sitara_Linux_Training:_uboot_linux_debug_with_ccsv5
- Linux Board Porting 관련 동영상
댓글 없음 :
댓글 쓰기