← Documents Documentation/devicetree/bindings/display/tilcdc/panel.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

TI tilcdc Generic Panel

tilcdc panel-info, display timing, backlight와 enable GPIO 바인딩입니다.

Source pathDocumentation/devicetree/bindings/display/tilcdc/panel.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

panel.txt:1-66

LCDC DMA/sync 설정과 320x240 native timing 예제를 설명합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 Device-Tree bindings for tilcdc DRM generic panel output driver
2
3 Required properties:
4 - compatible: value should be "ti,tilcdc,panel".
5 - panel-info: configuration info to configure LCDC correctly for the panel
6 - ac-bias: AC Bias Pin Frequency
7 - ac-bias-intrpt: AC Bias Pin Transitions per Interrupt
8 - dma-burst-sz: DMA burst size
9 - bpp: Bits per pixel
10 - fdd: FIFO DMA Request Delay
11 - sync-edge: Horizontal and Vertical Sync Edge: 0=rising 1=falling
12 - sync-ctrl: Horizontal and Vertical Sync: Control: 0=ignore
13 - raster-order: Raster Data Order Select: 1=Most-to-least 0=Least-to-most
14 - fifo-th: DMA FIFO threshold
15 - display-timings: typical videomode of lcd panel. Multiple video modes
16 can be listed if the panel supports multiple timings, but the 'native-mode'
17 should be the preferred/default resolution. Refer to
18 Documentation/devicetree/bindings/display/panel/display-timing.txt for display
19 timing binding details.
20
21 Optional properties:
22 - backlight: phandle of the backlight device attached to the panel
23 - enable-gpios: GPIO pin to enable or disable the panel
24
25 Recommended properties:
26 - pinctrl-names, pinctrl-0: the pincontrol settings to configure
27 muxing properly for pins that connect to TFP410 device
28
29 Example:
30
31 /* Settings for CDTech_S035Q01 / LCD3 cape: */
32 lcd3 {
33 compatible = "ti,tilcdc,panel";
34 pinctrl-names = "default";
35 pinctrl-0 = <&bone_lcd3_cape_lcd_pins>;
36 backlight = <&backlight>;
37 enable-gpios = <&gpio3 19 0>;
38
39 panel-info {
40 ac-bias = <255>;
41 ac-bias-intrpt = <0>;
42 dma-burst-sz = <16>;
43 bpp = <16>;
44 fdd = <0x80>;
45 sync-edge = <0>;
46 sync-ctrl = <1>;
47 raster-order = <0>;
48 fifo-th = <0>;
49 };
50 display-timings {
51 native-mode = <&timing0>;
52 timing0: 320x240 {
53 hactive = <320>;
54 vactive = <240>;
55 hback-porch = <21>;
56 hfront-porch = <58>;
57 hsync-len = <47>;
58 vback-porch = <11>;
59 vfront-porch = <23>;
60 vsync-len = <2>;
61 clock-frequency = <8000000>;
62 hsync-active = <0>;
63 vsync-active = <0>;
64 };
65 };
66 };
67

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

tilcdc generic panel 설정

1-28

tilcdc DRM generic panel output driver의 Device Tree 바인딩입니다. 필수 `compatible`은 `ti,tilcdc,panel`이고 `panel-info`는 panel에 맞게 LCDC를 구성하는 정보를 담습니다.

`panel-info`의 `ac-bias`는 AC Bias pin frequency, `ac-bias-intrpt`는 interrupt당 AC Bias pin transition 수, `dma-burst-sz`는 DMA burst size, `bpp`는 bits per pixel, `fdd`는 FIFO DMA request delay입니다.

`sync-edge`는 horizontal/vertical sync edge로 0은 rising, 1은 falling입니다. `sync-ctrl`은 sync control로 0이면 ignore, `raster-order`는 raster data order로 1이면 most-to-least, 0이면 least-to-most입니다. `fifo-th`는 DMA FIFO threshold입니다.

`display-timings`에는 LCD panel의 대표 video mode를 둡니다. 여러 timing을 나열할 수 있지만 `native-mode`는 preferred/default resolution이어야 합니다. 자세한 형식은 `Documentation/devicetree/bindings/display/panel/display-timing.txt`를 참조합니다.

선택 `backlight`는 panel backlight device의 phandle, `enable-gpios`는 panel enable/disable pin입니다. 권장 `pinctrl-names`, `pinctrl-0`은 TFP410 연결 pin의 mux를 올바르게 구성합니다.

tilcdc panel-info
속성역할
ac-bias / ac-bias-intrptAC bias frequency와 interrupt cadence
dma-burst-sz / fifo-thDMA burst와 FIFO threshold
bpp / fddPixel depth와 DMA request delay
sync-edge / sync-ctrlSync polarity edge와 control
raster-orderPixel data bit order

LCDC의 DMA, pixel, sync와 raster 동작을 결정하는 설정을 정리합니다.

CDTech 320x240 panel 예제

29-66

CDTech_S035Q01/LCD3 cape 예제는 default pinctrl, backlight와 GPIO3 pin 19의 enable을 사용합니다. Panel-info는 AC bias 255, DMA burst 16, 16 bpp, FIFO DMA delay `0x80`, rising sync edge와 least-to-most raster order를 설정합니다.

Native timing은 320x240, pixel clock 8 MHz입니다. Horizontal porch는 back 21/front 58, hsync 47이고 vertical porch는 back 11/front 23, vsync 2이며 두 sync active 값은 0입니다.

/* Settings for CDTech_S035Q01 / LCD3 cape: */
lcd3 {
        compatible = "ti,tilcdc,panel";
        pinctrl-names = "default";
        pinctrl-0 = <&bone_lcd3_cape_lcd_pins>;
        backlight = <&backlight>;
        enable-gpios = <&gpio3 19 0>;

        panel-info {
                ac-bias           = <255>;
                ac-bias-intrpt    = <0>;
                dma-burst-sz      = <16>;
                bpp               = <16>;
                fdd               = <0x80>;
                sync-edge         = <0>;
                sync-ctrl         = <1>;
                raster-order      = <0>;
                fifo-th           = <0>;
        };
        display-timings {
                native-mode = <&timing0>;
                timing0: 320x240 {
                        hactive         = <320>;
                        vactive         = <240>;
                        hback-porch     = <21>;
                        hfront-porch    = <58>;
                        hsync-len       = <47>;
                        vback-porch     = <11>;
                        vfront-porch    = <23>;
                        vsync-len       = <2>;
                        clock-frequency = <8000000>;
                        hsync-active    = <0>;
                        vsync-active    = <0>;
                };
        };
};
CDTech 320x240 timing
ActiveBack porchFront porchSync length
Horizontal320215847
Vertical24011232
Pixel clock8,000,000 Hz---

예제의 active 영역, porch, sync와 clock을 구조화합니다.