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) Vaio Picturebook Motion Eye Camera 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| 2001-2004 Stelian Pop <stelian@popies.net>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Copyright |copy| 2001-2002 Alcôve <www.alcove.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) Copyright |copy| 2000 Andrew Tridgell <tridge@samba.org>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) Private API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) The driver supports frame grabbing with the video4linux API,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) so all video4linux tools (like xawtv) should work with this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Besides the video4linux interface, the driver has a private interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) for accessing the Motion Eye extended parameters (camera sharpness,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) agc, video framerate), the snapshot and the MJPEG capture facilities.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) This interface consists of several ioctls (prototypes and structures
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) can be found in include/linux/meye.h):
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) MEYEIOC_G_PARAMS and MEYEIOC_S_PARAMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	Get and set the extended parameters of the motion eye camera.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 	The user should always query the current parameters with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	MEYEIOC_G_PARAMS, change what he likes and then issue the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	MEYEIOC_S_PARAMS call (checking for -EINVAL). The extended
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	parameters are described by the meye_params structure.
^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) MEYEIOC_QBUF_CAPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	Queue a buffer for capture (the buffers must have been
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	obtained with a VIDIOCGMBUF call and mmap'ed by the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 	application). The argument to MEYEIOC_QBUF_CAPT is the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	buffer number to queue (or -1 to end capture). The first
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	call to MEYEIOC_QBUF_CAPT starts the streaming capture.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) MEYEIOC_SYNC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	Takes as an argument the buffer number you want to sync.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 	This ioctl blocks until the buffer is filled and ready
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 	for the application to use. It returns the buffer size.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) MEYEIOC_STILLCAPT and MEYEIOC_STILLJCAPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	Takes a snapshot in an uncompressed or compressed jpeg format.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 	This ioctl blocks until the snapshot is done and returns (for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	jpeg snapshot) the size of the image. The image data is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 	available from the first mmap'ed buffer.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) Look at the 'motioneye' application code for an actual example.