← Documents Documentation/admin-guide/media/raspberrypi-rp1-cfe.dot GitHub 원문 ↗

Linux 6.18.37 · Admin guide

Raspberry Pi RP1 CFE 미디어 그래프

Raspberry Pi RP1 CFE에서 IMX219 센서, CSI-2 네 채널, PiSP 프런트엔드의 이미지·통계·설정 큐가 연결되는 미디어 토폴로지를 해설합니다.

Source pathDocumentation/admin-guide/media/raspberrypi-rp1-cfe.dot
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약·해설

raspberrypi-rp1-cfe.dot:1-27

Raspberry Pi RP1 CFE에서 IMX219 센서, CSI-2 네 채널, PiSP 프런트엔드의 이미지·통계·설정 큐가 연결되는 미디어 토폴로지를 해설합니다.

RP1 CFE 경로 요약
IMX219CSI-2CSI ch0-3 또는 pisp-feimage0/image1/stats
configpisp-fe

센서 입력은 직접 CSI 캡처 또는 PiSP 프런트엔드 처리 경로로 이어집니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 digraph board {
2 rankdir=TB
3 n00000001 [label="{{<port0> 0} | csi2\n/dev/v4l-subdev0 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4}}", shape=Mrecord, style=filled, fillcolor=green]
4 n00000001:port1 -> n00000011 [style=dashed]
5 n00000001:port1 -> n00000007:port0
6 n00000001:port2 -> n00000015
7 n00000001:port2 -> n00000007:port0 [style=dashed]
8 n00000001:port3 -> n00000019 [style=dashed]
9 n00000001:port3 -> n00000007:port0 [style=dashed]
10 n00000001:port4 -> n0000001d [style=dashed]
11 n00000001:port4 -> n00000007:port0 [style=dashed]
12 n00000007 [label="{{<port0> 0 | <port1> 1} | pisp-fe\n/dev/v4l-subdev1 | {<port2> 2 | <port3> 3 | <port4> 4}}", shape=Mrecord, style=filled, fillcolor=green]
13 n00000007:port2 -> n00000021
14 n00000007:port3 -> n00000025 [style=dashed]
15 n00000007:port4 -> n00000029
16 n0000000d [label="{imx219 6-0010\n/dev/v4l-subdev2 | {<port0> 0}}", shape=Mrecord, style=filled, fillcolor=green]
17 n0000000d:port0 -> n00000001:port0 [style=bold]
18 n00000011 [label="rp1-cfe-csi2-ch0\n/dev/video0", shape=box, style=filled, fillcolor=yellow]
19 n00000015 [label="rp1-cfe-csi2-ch1\n/dev/video1", shape=box, style=filled, fillcolor=yellow]
20 n00000019 [label="rp1-cfe-csi2-ch2\n/dev/video2", shape=box, style=filled, fillcolor=yellow]
21 n0000001d [label="rp1-cfe-csi2-ch3\n/dev/video3", shape=box, style=filled, fillcolor=yellow]
22 n00000021 [label="rp1-cfe-fe-image0\n/dev/video4", shape=box, style=filled, fillcolor=yellow]
23 n00000025 [label="rp1-cfe-fe-image1\n/dev/video5", shape=box, style=filled, fillcolor=yellow]
24 n00000029 [label="rp1-cfe-fe-stats\n/dev/video6", shape=box, style=filled, fillcolor=yellow]
25 n0000002d [label="rp1-cfe-fe-config\n/dev/video7", shape=box, style=filled, fillcolor=yellow]
26 n0000002d -> n00000007:port1
27 }
28

3. 한국어 전문 번역

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

IMX219, CSI-2 채널과 PiSP 프런트엔드 경로

1-27

이 Graphviz DOT 원문은 Raspberry Pi RP1 Camera Front End(CFE)의 V4L2 미디어 토폴로지를 나타냅니다. `imx219 6-0010` 센서가 `csi2` 수신기 입력 port0에 연결되고, 수신기의 출력 port1-4는 네 CSI 채널 비디오 노드 또는 `pisp-fe` 프런트엔드 입력 port0으로 이어집니다.

`pisp-fe`는 영상 입력 port0과 설정 입력 port1을 가지며, 출력 port2와 port3은 이미지 큐 두 개, port4는 통계 큐로 연결됩니다. `/dev/video7`의 `rp1-cfe-fe-config`는 출력 결과가 아니라 `pisp-fe`로 들어가는 설정 입력입니다. `/dev/video6`의 `rp1-cfe-fe-stats`는 영상 프레임과 구분되는 통계 출력입니다.

원문은 링크 스타일을 세 종류로 구분합니다. 센서와 CSI-2 사이 1개 링크는 `style=bold`, 선택 후보 7개는 `style=dashed`, 스타일 속성이 없는 5개는 일반 실선입니다. 이 페이지는 해당 표현을 그대로 설명하며 DOT에 기록되지 않은 런타임 포맷이나 라우팅 상태를 임의로 추가하지 않습니다.

RP1 CFE의 센서·직접 캡처·프런트엔드 흐름
imx219 6-0010 /dev/v4l-subdev2csi2 /dev/v4l-subdev0 port0csi2 port1-4rp1-cfe-csi2-ch0-3 /dev/video0-3
imx219 6-0010 /dev/v4l-subdev2csi2 /dev/v4l-subdev0 port0csi2 port1-4pisp-fe /dev/v4l-subdev1 port0image0/image1/stats /dev/video4-6
rp1-cfe-fe-config /dev/video7pisp-fe port1프런트엔드 설정

CSI-2 출력은 채널별 직접 캡처 노드와 PiSP 프런트엔드 입력 사이에서 토폴로지 링크를 제공합니다.

CSI-2 출력 채널과 프런트엔드 분기
CSI-2 출력직접 캡처 엔티티장치직접 링크프런트엔드 링크
csi2 port1rp1-cfe-csi2-ch0/dev/video0점선pisp-fe port0으로는 일반 실선
csi2 port2rp1-cfe-csi2-ch1/dev/video1일반 실선pisp-fe port0으로는 점선
csi2 port3rp1-cfe-csi2-ch2/dev/video2점선pisp-fe port0으로도 점선
csi2 port4rp1-cfe-csi2-ch3/dev/video3점선pisp-fe port0으로도 점선

각 CSI-2 source 패드의 직접 캡처 노드와 `pisp-fe` 입력 링크를 함께 정리합니다.

PiSP 프런트엔드 큐
출발대상 엔티티장치 또는 대상스타일역할
pisp-fe port2rp1-cfe-fe-image0/dev/video4일반 실선프런트엔드 이미지 출력 0
pisp-fe port3rp1-cfe-fe-image1/dev/video5점선프런트엔드 이미지 출력 1
pisp-fe port4rp1-cfe-fe-stats/dev/video6일반 실선통계 메타데이터 출력
rp1-cfe-fe-config/dev/video7pisp-fe port1일반 실선프런트엔드 설정 입력

`pisp-fe`의 출력 세 개와 설정 입력 하나의 방향·장치·스타일입니다.

미디어 엔티티와 패드
엔티티장치 경로입력 패드출력 패드
imx219 6-0010/dev/v4l-subdev2없음port0
csi2/dev/v4l-subdev0port0port1, port2, port3, port4
pisp-fe/dev/v4l-subdev1port0 영상, port1 설정port2 image0, port3 image1, port4 stats

세 초록색 서브디바이스의 입력과 출력 패드를 구분합니다.

노드와 링크 구조 수량
구성수량세부
전체 노드11초록색 Mrecord 3 + 노란색 box 8
비디오 노드8CSI 채널 4 + FE image 2 + stats 1 + config 1
전체 링크13굵은 선 1 + 점선 7 + 일반 실선 5
CSI-2 분기 링크8네 직접 캡처 링크 + 네 `pisp-fe` 입력 링크
FE 링크4image0, image1, stats 출력 + config 입력

27줄 DOT 원문에서 전용 감사가 검증하는 구조입니다.

원문 줄 좌표
원문 줄구성해설
1-2그래프와 배치 선언`digraph board`와 `rankdir=TB`를 정의합니다.
3-11CSI-2 엔티티와 여덟 분기 링크port1-4가 직접 캡처와 `pisp-fe` 입력으로 각각 갈라집니다.
12-15`pisp-fe`와 세 출력image0, image1, stats 큐로 가는 링크입니다.
16-17IMX219 센서센서 port0이 CSI-2 port0에 굵은 선으로 연결됩니다.
18-25비디오 노드 8개`/dev/video0-7`의 이름과 역할을 정의합니다.
26설정 입력 링크`/dev/video7`에서 `pisp-fe` port1으로 들어갑니다.
27닫는 중괄호`board` 그래프 정의를 끝냅니다.

각 엔티티와 링크 묶음이 등장하는 원문 범위입니다.

아래 코드는 Linux v6.18.37 원문 1-27줄 전체입니다. 표시 안정성을 위해 탭만 여덟 칸으로 정규화했으며 노드 ID, 엔티티명, 장치 경로, 패드 번호, 링크 방향과 스타일은 그대로 보존했습니다.

digraph board {
        rankdir=TB
        n00000001 [label="{{<port0> 0} | csi2\n/dev/v4l-subdev0 | {<port1> 1 | <port2> 2 | <port3> 3 | <port4> 4}}", shape=Mrecord, style=filled, fillcolor=green]
        n00000001:port1 -> n00000011 [style=dashed]
        n00000001:port1 -> n00000007:port0
        n00000001:port2 -> n00000015
        n00000001:port2 -> n00000007:port0 [style=dashed]
        n00000001:port3 -> n00000019 [style=dashed]
        n00000001:port3 -> n00000007:port0 [style=dashed]
        n00000001:port4 -> n0000001d [style=dashed]
        n00000001:port4 -> n00000007:port0 [style=dashed]
        n00000007 [label="{{<port0> 0 | <port1> 1} | pisp-fe\n/dev/v4l-subdev1 | {<port2> 2 | <port3> 3 | <port4> 4}}", shape=Mrecord, style=filled, fillcolor=green]
        n00000007:port2 -> n00000021
        n00000007:port3 -> n00000025 [style=dashed]
        n00000007:port4 -> n00000029
        n0000000d [label="{imx219 6-0010\n/dev/v4l-subdev2 | {<port0> 0}}", shape=Mrecord, style=filled, fillcolor=green]
        n0000000d:port0 -> n00000001:port0 [style=bold]
        n00000011 [label="rp1-cfe-csi2-ch0\n/dev/video0", shape=box, style=filled, fillcolor=yellow]
        n00000015 [label="rp1-cfe-csi2-ch1\n/dev/video1", shape=box, style=filled, fillcolor=yellow]
        n00000019 [label="rp1-cfe-csi2-ch2\n/dev/video2", shape=box, style=filled, fillcolor=yellow]
        n0000001d [label="rp1-cfe-csi2-ch3\n/dev/video3", shape=box, style=filled, fillcolor=yellow]
        n00000021 [label="rp1-cfe-fe-image0\n/dev/video4", shape=box, style=filled, fillcolor=yellow]
        n00000025 [label="rp1-cfe-fe-image1\n/dev/video5", shape=box, style=filled, fillcolor=yellow]
        n00000029 [label="rp1-cfe-fe-stats\n/dev/video6", shape=box, style=filled, fillcolor=yellow]
        n0000002d [label="rp1-cfe-fe-config\n/dev/video7", shape=box, style=filled, fillcolor=yellow]
        n0000002d -> n00000007:port1
}