Device Tree
Linux

Device Tree

장치 트리 파일은 ARM 기반 Linux 시스템의 BIOS와 유사하다. 장치 트리 파일에는 메모리 주소, 다른 장치와의 링크 및 커널 드라이버가 추가로 참조하는 많은 매개 변수(클럭 속도, CSI 레인 등)에 대한 몇 가지 하드웨어 정의가 들어 있다.

 

ARM Processor는 모든 Device Tree Source files (DTS)이 'arch/arm/boot/dts'에 위치해 있으며, Device Tree Compiler (DTC) 는 'dts, dtsi' source 파일을 compile 하여 binary 파일로 만든다.

 

 

일반적인 장치 트리 파일 형식

 

이미 많이 알려진 디바이스트리는 arch/arm/boot/dts/ 에 위치하고 있으며 3개의 확장자로 존재한다.

  • dtb - dts 파일을 컴파일 하여 나온 바이너리 파일이다.
  • dts - 파일은 디바이스트리 소스 파일로써 하나의 특정 플랫폼을 설명한다. 이 파일은 dtc(Device tree compiler)로 컴파일 하게된다.
  • dtsi - 파일은 여러 플랫폼에 공통적인 하드웨어를 설명한다. 일반적으로 *.dts 파일에서 이러한 파일을 포함한다.

장치 트리 파일을 수정하는 방법에는 두 가지가 있으며, 이를 위해서는 다른 환경 설정이 필요하다.

  • 기존에 존재하는 컴파일 된 dtb 파일을 디컴파일 하여 dts 파일 을 추출 한 뒤 장치 트리 수정
  • dtsi 파일에서 장치 트리 수정
 
 

 

'Linux' 카테고리의 다른 글

[Kernel] Device-tree probe Platform Driver  (0) 2024.03.11
v4l2loopback  (0) 2024.01.21
expect 명령어  (0) 2023.11.25
ubuntu 네트워크 장치 이름 변경  (0) 2023.07.16
PCIe ASPM Error  (0) 2023.07.02