Age | Commit message (Collapse) | Author |
|
We would like to be able to set the frame rate of the video source of a
stream. This patch adds such a function to set the source's frame rate
from the stream. The frame rate is set right after the format is set.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
Implement the video source op set_frame_rate for v4l2-source video
source.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
We would like to be able to set the frame rate for video sources. This
patch adds a set_frame_rate op for video sources, along with a wrapper
to call video sources' set_frame_rate functions.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
We would like to be able to set the frame rate of video sources. This
patch adds such a function for v4l2-based video sources to use.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
Parse /proc/mounts to identify the correct mount location of the
ConfigFS filesystem.
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The Android C library doesn't provide the glob() function which we use
in the configfs code. Add conditional compilation to cmake such that a
local copy of glob is automatically compiled if glob isn't provided.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The glibc glob() implementation doesn't compile on Android due to
missing support for getlogin_r (before Android ABI 28) and to missing
__THROW, __THROWNL and __attribute_noinline__ macros.
getlogin_r is only used to implement support for the '~' path component
which we don't use in the uvc-gadget library, so we can compile it out.
The three macros can safely be defined as no-op.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The glibc glob() implementation seems to be meant to be compilable
outside of glibc, but that clearly hasn't been tested for some time. Fix
compilation.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The Android libc implementation (bionic) doesn't provide the glob()
function. To enable compilation of the UVC gadget library for Android,
import the glibc glob() implementation.
The glob.c and glob.h files are imported unmodified to ease copyright
management, even if they don't compile as-is. Compilation will be fixed
separately.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Android now uses clang as the default C compiler, and gcc support is
deprecated. clang doesn't support nested functions, which were used to
implement callback functions in the ConfigFS code. We thus move the
callbacks to the global scope.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The asprintf function returns -1, and leaves the first parameter
undefined in case of an allocation error. This conflicts with the
code's assumption that the parameter is set NULL on error.
Check all return values of asprintf, and ensure that the string
parameter is not used as a return value on error paths.
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
There is code that is meant to check for the error of an ioctl, but the
return variable that it checks isn't actually assigned from the ioctl.
Assign the return value before checking it.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
[Fixed error message]
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
In order to avoid depending on an external kernel source tree recent
enough to provide the g_uvc.h header, import in the the project.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
To allow usage of the UVC gadget library in closed-source or otherwise
GPL-incompatible applications, relicense the library under the terms of
the LGPL v2.1 or later, as published by the Free Software Foundation.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Ideas on Board SPRL, the original copyright owner of the UVC gadget
application code, has been dissolved. All company copyrights have been
transferred to Laurent Pinchart. Update the copyright notices to
accordingly.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Replace the boilerplate copyright headers with an SPDX header to ease
license compliance. This doesn't change the license of any of the files.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Split the project into a UVC gadget library and a test application. To
avoid rolling out a custom build system, switch to CMake.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|