기존 장치 드라이버 프로그램이 장치 드라이버을 지원하는 방법과 다른 점 장치 트리?전통적인 장치 드라이버 프로그램은 어떻게 다른가요?
0
A
답변
0
장치 트리가 도입되기 전에 Linux 커널에서 드라이버가 필요로하는 데이터는 보드 파일을 통해 제공되었으며 각 가능한 보드에 보드 파일이있었습니다. 그것은 플랫폼 데이터로 불리는 것으로부터 제공되었으며, 드라이버는 기본적으로 드라이버를 자동으로 발견 할 수 없거나 USB 또는 PCI와 같이 열거 된 플랫폼 드라이버입니다.
위의 접근 방식은 많은 데이터가 물론 공통적이거나 보드간에 공통적 인 것처럼 많은 혼란과 복제를 초래했습니다. 예를 들어 특정 SoC 용 GPIO 컨트롤러는 보드간에 다를 수 없으며 최소한 인터럽트 ID와 같은 주요 정보는 필요하지 않습니다.
디바이스 트리 접근 방식은 일반적으로 모든 보드 또는 모듈 변형이이를 상속하지만 어떤 차이나 추가 주변 장치를 끄고 켜기 위해 지정하는 SoC 수준의 dtsi 파일을가집니다.
둘 중 하나를 구문 분석하거나 읽는 기능이 다릅니다. 장치 트리는 하드웨어를 나타내며 둘 다 주요 차이점은 데이터를 제공하고 읽는 방법입니다.
이제 새로운 장치 드라이버를 작성하려고합니다. ** PIN 구성 **을 지정하여 ** _ i가 장치 트리 _ **에서 내 드라이버로 데이터에 액세스 할 수있는 방법을 알려줍니다. –