summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-16meson: add option to use system pybind11 or subprojectTomi Valkeinen
Add 'system-pybind11' option. enabled = use pybind11 from the system disabled = use pybind11 from meson subproject auto = use pybind11 from the system, or, if not available, subproject Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-16Add meson subproject wrap for pybind 2.6.0Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-16meson_options: add descriptions and reorganizeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-16Use system libfmtTomi Valkeinen
libfmt is available on standard PC distros and on buildroot, so lets just use the system provided libfmt instead of a git submodule. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-03gamma.py: support legacy & non-legacy gammaTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-03crtc: add legacy gamma setTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-03atomicreq: throw on non-existing propertyTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-12-01Fix clang-tidy reported issuesTomi Valkeinen
2020-12-01Add .clang-tidyTomi Valkeinen
2020-10-20py: add -fvisibility=hiddenTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-20meson: fix build with thread supportTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-20meson: add 'util' option to disable kms++util and utilsTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-09rename omap wb utils to omap-wbTomi Valkeinen
2020-10-09Bulk format of all filesTomi Valkeinen
2020-10-09Add .clang-format and format-all scriptTomi Valkeinen
2020-10-09gitignore: add *.pycTomi Valkeinen
2020-10-09dmabuffb: add constructor which takes in string fourccTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-09Merge pull request #59 from virusxp/gcc10_compabilityTomi Valkeinen
added #include <string> to card.h to follow gcc10 porting guide
2020-10-08added #include <string> to card.h to follow gcc10 porting guideTobias Off
2020-10-03py: move framebuffer functions to correct placeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-02Small Property improvementsTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-10-02meson.build: add static-libc optionTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-29Fix Plane::get_possible_crtcsTomi Valkeinen
Looks like RPi gives 0xff as possible_crtcs, even if there's only one crtc. The current code throws an exception in that case. Fix this by just ignoring non-existent possible crtcs. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-14Update README for meson buildTomi Valkeinen
2020-09-14Change travis to use mesonTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-14Add meson buildTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-14Rename esTransform.c to .cppTomi Valkeinen
This was the only C file in the project, so now we're "pure" c++. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-08Travis: add llvm-dev packages to add gold linkerTomi Valkeinen
2020-09-08Move to c++17Tomi Valkeinen
It's time. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-05Update travis to ubuntu 20.04Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-05Drop python2Tomi Valkeinen
I don't think python2 even works with kms++. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-09-05kmscapture: remove unneeded xf86drm.h includeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10kms++: Add support for missing 8 -and 16-bit RGB formatsLaurent Pinchart
Add support for the RGB332, XRGB1555 and XRGB4444 formats to the PixelFormat class, the Python API, and the drawing utilities. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10kms++: Add support for the planar YUV formatsLaurent Pinchart
Add support for the 6 planar YUV formats (YUV and YVU, combined with 420, 422 or 444 subsampling) to the PixelFormat class, the Python API, and the drawing utilities. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10kms++: Add support for semiplanar YUV422 formats (NV16 and NV61)Laurent Pinchart
Add support for the NV16 and NV61 pixel formats to the PixelFormat class, the Python API, and the drawing utilities. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10pykmsbase: Add missing pixel formatsLaurent Pinchart
Several pixel formats defined in the C++ PixelFormat class are missing from the Python API. Add them. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10dumbfb: Fix pitch for tri-planar formatsLaurent Pinchart
The BO pitches are unconditionally set to the frame buffer pitch, for all planes. This is correct for semiplanar YUV formats, as they subsample chroma horizontally by two but combined U and V in a single plane, cancelling each other. For fully planar YUV formats, however, the horizontal subsampling need to be taken into account to compute the pitch. Fix it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10dumbfb: Add support tri- or quadri-planar buffersLaurent Pinchart
The DumbFrameBuffer class supports up to 4 planes, as required by the DRM/KMS API, but only considers planes 0 and 1 when constructing the buffer. Fix it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10card: Rename has_has_universal_planes to has_universal_planesLaurent Pinchart
The has_has_universal_planes() method name includes a typo, fix it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-10card: Add a method to retrieve the device minorLaurent Pinchart
The device minor number is needed to access the debugfs directory corresponding to the device. Make it available to users through a dev_minor() method on the Card object. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2020-08-04Merge pull request #57 from dreamer-dead/videodevice-unique-ptrTomi Valkeinen
Use unique_ptr to prevent memory leaks in VideoDevice class
2020-07-24Use unique_ptr to prevent memory leaks in VideoDevice classdreamer.dead
2020-05-28Merge pull request #56 from matthoosier-garmin/more-card-constructorsTomi Valkeinen
More card constructors
2020-05-28card: add factory function for selecting card by nameMatt Hoosier
Uses drmOpen() to do the heavy lifting.
2020-05-28card: add constructor for pre-opened FDMatt Hoosier
This is an escape hatch to let the user do whatever crazy thing he wants to obtain the DRM fd. This could be from a DRM lease, an FD passed across a Wayland protocol request, something calculated by manually walking across the set of DRI cards and selecting specific criteria, etc.
2020-05-17Merge pull request #54 from ilteroi/gcc10Tomi Valkeinen
fix compiler errors with gcc 10
2020-05-17Merge pull request #53 from matthoosier-garmin/resmgr-release-methodsTomi Valkeinen
resmgr: add release() methods
2020-05-15fix compiler errors with gcc 10Peter Trompeter
2020-05-15resmgr: add release() methodsMatt Hoosier
This makes the ResourceManager class much more functional for uses where the set of resources used to scan out a scene changes from frame to frame. The atomic modesetting API discipline requires a brute-force search to find a compatible pairing of planes/etc, and being able to reserve bits incrementally is much simpler than throwing out the entire resourcemanager and make a new one each time a resource reserved in a tentative attempt to probe its compatibility with an test-mode atomic commit, turns out not to pan out.
2020-05-15kmstest: allow enabling output without anything connectedTomi Valkeinen
Allow kmstest to enable an output without anything connected, if the user gives a videomode. DRM framework allows this, and is needed for testing. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>