Age | Commit message (Collapse) | Author |
|
resmgr: add release() methods
|
|
|
|
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.
|
|
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>
|
|
|
|
Add an option to print crc16 for the framebuffer contents.
|
|
Only single touch supported, and pretty naive implementation.
|
|
|
|
|
|
Include array
|
|
|
|
Supply pkg-config files
|
|
These are customary, and pretty straightforward to offer.
|
|
Py tests tidss updates v3
|
|
|
|
|
|
|
|
PixelFormat is an uint32_t underneath, so use that type instead of int
when casting.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
Link libfmt in header-only mode
|
|
This saves us the trouble of having a copy of its shared library
installed into the target filesystem, which would conflict with
an independently packaged copy.
Only the headers are needed to accomplish the usages that Kms++
makes.
|
|
Add an build option to allow explicitly shutting off libdrm-omap
features. This is useful for packaging situations to prevent
accidental unexpected features.
To deactivate the drm-omap specific functionality that was activated
unconditionally if present until now, use:
cmake -DKMSXX_ENABLE_LIBDRMOMAP=OFF
Signed-off-by: Matt Hoosier <matt.hoosier@garmin.com>
|
|
This makes package managers happier when the software is built
as a dynamic-library.
Signed-off-by: Matt Hoosier <matt.hoosier@garmin.com>
|
|
Many GPUs use bandwidth compression or tiling, and this information
must be passed along to KMS when constructing the framebuffer object
around the GEM handle or prime filedescriptor.
Add an vector of modifiers as an optional parameter to both of these
classes.
Bump the minimum required version of libdrm to 2.4.17 to ensure
drmModeAddFB2WithModifiers() is available.
Signed-off-by: Matt Hoosier <matt.hoosier@garmin.com>
|
|
Use std::array and .at() to get bounds checking.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Check that parameter vectors are of the same size, and match the number
of planes.
Extend the vectors to 4, as drmModeAddFB2() expects to get arrays of 4
elements.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reported-by: Matt Hoosier <matt.hoosier@garmin.com>
|
|
Misc improvements
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
Use correct operator delete[] to free buffers in CPUFramebuffer
|
|
|
|
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Formatting changes and testmodes.py
|
|
Update travis to Ubuntu 18.04, and update the used compilers.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add testmodes.py which goes through all videomodes from a connector one
by one.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add to_string_short() and to_string_long() to videomode (using the fmt
library) for easy printing of videomodes.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add fmt library as a submodule to make string formatting not a pain.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
V4L2 and DRM differ in their interpretation of YUV420::NV12
V4L2 NV12 is a Y and UV co-located planes in a single plane buffer.
DRM NV12 is a Y and UV planes presented as dual plane buffer, which is
known as NM12 in V4L2.
Since here we have hybrid DRM/V4L2 user space helper functions we need
to translate DRM::NV12 to V4L2:NM12 pixel format back and forth to keep
the data view consistent.
Signed-off-by: Benoit Parrot <bparrot@ti.com>
|