← Documents Documentation/admin-guide/media/omap3isp.rst GitHub 원문 ↗

Linux 6.18.37 · Administration / Media

OMAP 3 Image Signal Processor Driver

OMAP 3430·3530·3630 ISP의 V4L2 subdev 분할, Media Controller link, frame 경계 설정과 autoidle 제약을 설명합니다.

Source pathDocumentation/admin-guide/media/omap3isp.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

OMAP3 ISP pipeline

omap3isp.rst:1-92

OMAP3 ISP는 receiver, capture, preview, resize, statistics block을 8개 V4L2 subdev로 노출합니다. 설정은 보통 다음 frame 경계에서 적용되고 대부분의 block은 complete frame을 요구합니다.

OMAP3 ISP 처리 흐름
Sensor · lens · flashCCP2 / CSI2aCCDCpreviewresizerV4L2
ISP frameAEWB · AF · histogram

Media Controller link가 sensor에서 image output과 statistics block까지의 경로를 구성합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 .. include:: <isonum.txt>
4
5 OMAP 3 Image Signal Processor (ISP) driver
6 ==========================================
7
8 Copyright |copy| 2010 Nokia Corporation
9
10 Copyright |copy| 2009 Texas Instruments, Inc.
11
12 Contacts: Laurent Pinchart <[email protected]>,
13 Sakari Ailus <[email protected]>, David Cohen <[email protected]>
14
15
16 Introduction
17 ------------
18
19 This file documents the Texas Instruments OMAP 3 Image Signal Processor (ISP)
20 driver located under drivers/media/platform/ti/omap3isp. The original driver was
21 written by Texas Instruments but since that it has been rewritten (twice) at
22 Nokia.
23
24 The driver has been successfully used on the following versions of OMAP 3:
25
26 - 3430
27 - 3530
28 - 3630
29
30 The driver implements V4L2, Media controller and v4l2_subdev interfaces.
31 Sensor, lens and flash drivers using the v4l2_subdev interface in the kernel
32 are supported.
33
34
35 Split to subdevs
36 ----------------
37
38 The OMAP 3 ISP is split into V4L2 subdevs, each of the blocks inside the ISP
39 having one subdev to represent it. Each of the subdevs provide a V4L2 subdev
40 interface to userspace.
41
42 - OMAP3 ISP CCP2
43 - OMAP3 ISP CSI2a
44 - OMAP3 ISP CCDC
45 - OMAP3 ISP preview
46 - OMAP3 ISP resizer
47 - OMAP3 ISP AEWB
48 - OMAP3 ISP AF
49 - OMAP3 ISP histogram
50
51 Each possible link in the ISP is modelled by a link in the Media controller
52 interface. For an example program see [#]_.
53
54
55 Controlling the OMAP 3 ISP
56 --------------------------
57
58 In general, the settings given to the OMAP 3 ISP take effect at the beginning
59 of the following frame. This is done when the module becomes idle during the
60 vertical blanking period on the sensor. In memory-to-memory operation the pipe
61 is run one frame at a time. Applying the settings is done between the frames.
62
63 All the blocks in the ISP, excluding the CSI-2 and possibly the CCP2 receiver,
64 insist on receiving complete frames. Sensors must thus never send the ISP
65 partial frames.
66
67 Autoidle does have issues with some ISP blocks on the 3430, at least.
68 Autoidle is only enabled on 3630 when the omap3isp module parameter autoidle
69 is non-zero.
70
71 Technical reference manuals (TRMs) and other documentation
72 ----------------------------------------------------------
73
74 OMAP 3430 TRM:
75 <URL:http://focus.ti.com/pdfs/wtbu/OMAP34xx_ES3.1.x_PUBLIC_TRM_vZM.zip>
76 Referenced 2011-03-05.
77
78 OMAP 35xx TRM:
79 <URL:http://www.ti.com/litv/pdf/spruf98o> Referenced 2011-03-05.
80
81 OMAP 3630 TRM:
82 <URL:http://focus.ti.com/pdfs/wtbu/OMAP36xx_ES1.x_PUBLIC_TRM_vQ.zip>
83 Referenced 2011-03-05.
84
85 DM 3730 TRM:
86 <URL:http://www.ti.com/litv/pdf/sprugn4h> Referenced 2011-03-06.
87
88
89 References
90 ----------
91
92 .. [#] http://git.ideasonboard.org/?p=media-ctl.git;a=summary
93

3. 한국어 전문 번역

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

OMAP 3 Image Signal Processor driver

1-15

이 문서는 GPL-2.0 라이선스를 따릅니다. Copyright © 2010 Nokia Corporation 및 Copyright © 2009 Texas Instruments, Inc.

연락처는 Laurent Pinchart <[email protected]>, Sakari Ailus <[email protected]>, David Cohen <[email protected]>입니다.

소개

16-34

이 문서는 `drivers/media/platform/ti/omap3isp`에 있는 Texas Instruments OMAP 3 Image Signal Processor(ISP) driver를 설명합니다. 원래 driver는 Texas Instruments가 작성했으며 이후 Nokia에서 두 번 다시 작성했습니다.

Driver는 다음 OMAP 3 version에서 성공적으로 사용됐습니다.

  • 3430
  • 3530
  • 3630

Driver는 V4L2, Media Controller, `v4l2_subdev` interface를 구현합니다. Kernel에서 `v4l2_subdev` interface를 사용하는 sensor, lens, flash driver를 지원합니다.

Subdev 분할

35-54

OMAP 3 ISP는 V4L2 subdev로 분할되며 ISP 내부의 각 block을 하나의 subdev가 나타냅니다. 각 subdev는 userspace에 V4L2 subdev interface를 제공합니다.

  • OMAP3 ISP CCP2
  • OMAP3 ISP CSI2a
  • OMAP3 ISP CCDC
  • OMAP3 ISP preview
  • OMAP3 ISP resizer
  • OMAP3 ISP AEWB
  • OMAP3 ISP AF
  • OMAP3 ISP histogram

ISP 안에서 가능한 각 link는 Media Controller interface의 link 하나로 model됩니다. 예제 program은 문서 끝의 media-ctl reference를 참조하십시오.

OMAP3 ISP subdev graph
SensorCCP2 또는 CSI2aCCDCpreviewresizervideo output
CCDC/image pathAEWB · AF · histogram statistics

Receiver와 image-processing block, statistics block이 개별 V4L2 subdev로 노출되고 Media Controller link로 연결됩니다.

OMAP 3 ISP 제어

55-70

일반적으로 OMAP 3 ISP에 지정한 설정은 다음 frame 시작 시 적용됩니다. Sensor의 vertical blanking period 동안 module이 idle 상태가 될 때 적용되며, memory-to-memory operation에서는 pipe를 frame 단위로 실행하고 frame 사이에 설정을 적용합니다.

CSI-2 receiver와 경우에 따라 CCP2 receiver를 제외한 ISP의 모든 block은 complete frame을 받아야 합니다. 따라서 sensor는 ISP에 partial frame을 보내면 안 됩니다.

적어도 OMAP 3430의 일부 ISP block에는 autoidle 문제가 있습니다. Autoidle은 OMAP 3630에서만 `omap3isp` module parameter `autoidle`이 0이 아닐 때 활성화됩니다.

기술 참조 문서

71-88

다음 TRM과 관련 문서를 참조할 수 있습니다.

Reference

89-92

Media Controller link를 구성하는 예제 program은 다음 media-ctl project에서 확인할 수 있습니다.