Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

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