Age | Commit message (Collapse) | Author |
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add new Card constructor:
Card(const std::string& driver, uint32_t idx)
which can be used to open Nth card for the given driver.
The default constructor behavior is:
- If KMSXX_DEVICE env variable is set, the card device with that path is
opened.
- If KMSXX_DRIVER env variable is set, the card with the given driver
name and index is opened. The format is either "drvname" or
"drvname:idx".
- If neither env variable is given, open /dev/dri/card0
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add support to get the driver name.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Benoit Parrot <bparrot@ti.com>
|
|
Add selection API support to the VideoSteamer class.
Signed-off-by: Benoit Parrot <bparrot@ti.com>
|
|
|
|
Add commandline parameters and use more sensible defaults
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
zpos is the official property.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
|
|
Consider the screen size for the displayed objects and calculate the
placement so they look similar on all screen sizes
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
|
|
|
|
|
|
|
|
There's no blob() method on mode objects, use to_blob().
Fixes: 66f161d0032e ("py: Add in fence test using swsync")
Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Fancy event handling was dropped in commit 95de32aa7fbb ("py: drop the
fancy event handling"). Python tests were updated, but one commit call
got forgotten in the sync.py test. Fix it.
Fixes: 95de32aa7fbb ("py: drop the fancy event handling")
Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
|
|
The videodevice module defines a stream_off function call, but this is
not available in the python bindings interface.
Provide the binding of VideoStreamer::stream_off.
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Commit 706a44abb3aa ("Update to latest pybind11") removed the crtcs and
encoders properties from the Card class. Add them back by wrapping the
associated C++ methods manually due to a limitation of pybind11.
Fixes: 706a44abb3aa ("Update to latest pybind11")
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
The method returns an std::vector of DRMObject, which isn't supported by
the latest pybind11 as explained in commit 706a44abb3aa. Fix it by
wrapping the method manually.
Fixes: 706a44abb3aa ("Update to latest pybind11")
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
Update to latest pybind11 HEAD. We can't use the latest tag (v2.2.0) as
it has a regression.
There were two problems when updating:
1) Difficulty in managing DrmObject derived classes
Most of the DrmObjects are owned by Card, and can't be allocated or
freed, but a few of them are allocated and freed by the user. For the
former, we need to use unique_ptr with py::nodelete, but that prevents
the latter from working.
The solution was to not tell the python that the latter classes derive
from DrmObject.
This seems to be missing feature in pybind11, but I think we can live
with it.
2) DrmObjects in STL containers
vector<T> where T is a DrmObject derived class doesn't work. We need to
have a manual wrapper to return vector<unique_ptr<T, py::nodelete>>
instead.
This also seems to be a pybind11 missing feature.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|
|
|
|
Drop (I)MappedFramebuffer, as it doesn't really provide any value, and
have most of the methods be present in IFramebuffer with default
exception throwing implementation.
This gives us simpler way to use the framebuffers, as almost always we
can just use a pointer to IFramebuffer.
|
|
Unfortunately the nice event handler added previously doesn't work: we
may get multiple page-flip events, which would lead to unref'ing the
passed python object multiple times, leading to memory corruption.
I guess it's only possible to pass a plain int as user data to commit()
and page_flip().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Add a test tool for rotation
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
Add TILER rotation support for omapframebuffer.
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>
|
|
The test uses Atomic Mode Setting only and moves one horizontal bar
up/down in the framebuffer - which stretches through all connected
displays.
The flip mode can be selected with --flipmode <single, separate> :
single: Page flip on all displays with one request (default)
separate: Separate page flip on the displays
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
|
|
|