내가 이해한 바로는 검색/열거를 위한 버스 지원이 없는 시스템(주로 임베디드 시스템)에서 dtb 파일은 하드웨어를 설명하고 커널이 이를 메모리에 로드한 후 사용할 수 있도록 하는 데 사용됩니다.
그렇다면 그러한 시스템의 커널만 업데이트한다고 가정하면 dtb도 업데이트해야 합니까? 하드웨어에 대해서만 설명하고 하드웨어가 변경되지 않았으니 간단히 재사용할 수는 없을까?
내 라즈베리 파이에 업데이트된 커널을 설치하는 동안 이 문제가 발생했습니다.공식 빌드 문서그리고 내가 찾을 수 있는 다른 모든 튜토리얼에서는 dtb 파일 컴파일 및 복사에 대해 명시적으로 언급하고 있으므로 하드웨어가 변경되지 않기 때문에 이 단계가 실제로 필요한지 궁금합니다.
답변1
주로 커널과 장치 트리는 서로 독립적이어야 합니다. 따라서 그렇습니다. 일반적으로 이전 dtb와 함께 새로 컴파일된 커널을 사용할 수 있으며 그 반대의 경우도 마찬가지입니다.
물론 장치 트리가 특정 버전의 장치 드라이버에 의존하거나 새 커널에 다른 장치 트리 속성이 필요한 경우에는 더 이상 그렇지 않습니다.
이제 새로운 dtb를 구축하는 것은 dtc
몇 밀리초의 문제이고 튜토리얼 작성자는 일부 패치가 실제로 dts 또는 dtsi 파일을 변경했는지 알지 못한다는 점을 고려하면 커널과 함께 dtb를 구축하고 배포하는 것이 좋습니다.