← Documents Documentation/devicetree/bindings/media/st,st-hva.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

ST HVA Video Encoder

ST HVA 비디오 인코더의 레지스터, ESRAM, 인터럽트, 클록 바인딩입니다.

Source pathDocumentation/devicetree/bindings/media/st,st-hva.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

st,st-hva.txt:1-24

두 메모리 영역의 순서와 이름, 복수 인터럽트 예제를 보존합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 st-hva: multi-format video encoder for STMicroelectronics SoC.
2
3 Required properties:
4 - compatible: should be "st,st-hva".
5 - reg: HVA physical address location and length, esram address location and
6 length.
7 - reg-names: names of the registers listed in registers property in the same
8 order.
9 - interrupts: HVA interrupt number.
10 - clocks: from common clock binding: handle hardware IP needed clocks, the
11 number of clocks may depend on the SoC type.
12 See ../clock/clock-bindings.txt for details.
13 - clock-names: names of the clocks listed in clocks property in the same order.
14
15 Example:
16 hva@8c85000{
17 compatible = "st,st-hva";
18 reg = <0x8c85000 0x400>, <0x6000000 0x40000>;
19 reg-names = "hva_registers", "hva_esram";
20 interrupts = <GIC_SPI 58 IRQ_TYPE_NONE>,
21 <GIC_SPI 59 IRQ_TYPE_NONE>;
22 clock-names = "clk_hva";
23 clocks = <&clk_s_c0_flexgen CLK_HVA>;
24 };
25

3. 한국어 전문 번역

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

ST HVA 다중 형식 비디오 인코더

1-2

`st-hva`는 STMicroelectronics SoC에 내장된 다중 형식 비디오 인코더입니다.

HVA 자원 구성
자원이름 또는 역할예제
MMIOhva_registers0x8c85000 / 0x400
ESRAMhva_esram0x6000000 / 0x40000
IRQHVA 인터럽트GIC SPI 58, 59
Clockclk_hvaCLK_HVA

인코더가 사용하는 두 레지스터 영역과 인터럽트 및 클록을 구조화했습니다.

필수 메모리·인터럽트·클록

3-14

`compatible`은 `st,st-hva`여야 합니다. `reg`에는 HVA 물리 주소와 길이, ESRAM 주소와 길이를 차례로 넣고, `reg-names`에는 같은 순서의 레지스터 영역 이름을 적습니다. 원문은 이를 registers 속성이라고 표현하지만 실제 속성 이름은 `reg`입니다.

`interrupts`는 HVA 인터럽트 번호를 담습니다. `clocks`는 공통 클록 바인딩에 따른 필수 하드웨어 클록 핸들이며 SoC 종류에 따라 개수가 달라질 수 있습니다. 자세한 내용은 `../clock/clock-bindings.txt`를 봅니다. `clock-names`는 `clocks`와 같은 순서의 이름 목록입니다.

HVA와 ESRAM 예제

15-24

예제는 HVA 레지스터와 256KiB ESRAM을 각각 `hva_registers`, `hva_esram`으로 이름 붙이고 GIC SPI 58과 59를 지정합니다. `CLK_HVA` 클록은 `clk_hva`라는 이름으로 연결됩니다.

hva@8c85000{
        compatible = "st,st-hva";
        reg = <0x8c85000 0x400>, <0x6000000 0x40000>;
        reg-names = "hva_registers", "hva_esram";
        interrupts = <GIC_SPI 58 IRQ_TYPE_NONE>,
                     <GIC_SPI 59 IRQ_TYPE_NONE>;
        clock-names = "clk_hva";
        clocks = <&clk_s_c0_flexgen CLK_HVA>;
};