요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
Device Tree bindings for Armada DRM CRTC driver
Required properties:
- compatible: value should be "marvell,dove-lcd".
- reg: base address and size of the LCD controller
- interrupts: single interrupt number for the LCD controller
- port: video output port with endpoints, as described by graph.txt
Optional properties:
- clocks: as described by clock-bindings.txt
- clock-names: as described by clock-bindings.txt
"axiclk" - axi bus clock for pixel clock
"plldivider" - pll divider clock for pixel clock
"ext_ref_clk0" - external clock 0 for pixel clock
"ext_ref_clk1" - external clock 1 for pixel clock
Note: all clocks are optional but at least one must be specified.
Further clocks may be added in the future according to requirements of
different SoCs.
Example:
lcd0: lcd-controller@820000 {
compatible = "marvell,dove-lcd";
reg = <0x820000 0x1000>;
interrupts = <47>;
clocks = <&si5351 0>;
clock-names = "ext_ref_clk_1";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Armada DRM CRTC 필수 속성과 pixel clock
1-21Armada DRM CRTC 드라이버의 Device Tree 바인딩입니다. 필수 `compatible` 값은 `marvell,dove-lcd`이고, `reg`에는 LCD controller의 base address와 size를, `interrupts`에는 LCD controller의 단일 interrupt 번호를 지정합니다. `port`는 `graph.txt`에서 설명하는 endpoint를 갖춘 video output port입니다.
선택 속성 `clocks`와 `clock-names`는 `clock-bindings.txt`를 따릅니다. 지원하는 이름은 pixel clock용 AXI bus clock인 `axiclk`, pixel clock용 PLL divider clock인 `plldivider`, 두 외부 clock인 `ext_ref_clk0`과 `ext_ref_clk1`입니다.
각 clock 자체는 선택 사항이지만 적어도 하나는 반드시 지정해야 합니다. 서로 다른 SoC의 요구에 맞추어 앞으로 clock 종류가 더 추가될 수 있습니다.
선택한 clock source 가운데 적어도 하나가 LCD controller의 pixel clock을 공급합니다.
외부 기준 clock 예제
22-30예제의 `lcd-controller@820000`은 register 영역 `0x820000..0x820fff`, interrupt 47, `si5351`의 clock index 0을 사용합니다. 원문 예제의 `clock-names` 값은 속성 목록의 `ext_ref_clk1`과 달리 `ext_ref_clk_1`로 표기되어 있으므로 아래 코드는 원문 그대로 보존합니다.
lcd0: lcd-controller@820000 {
compatible = "marvell,dove-lcd";
reg = <0x820000 0x1000>;
interrupts = <47>;
clocks = <&si5351 0>;
clock-names = "ext_ref_clk_1";
};
요약과 해설
marvell,dove-lcd.txt:1-30필수 controller 자원과 선택 가능한 네 pixel clock 이름을 설명합니다.