summaryrefslogtreecommitdiff
path: root/py
AgeCommit message (Collapse)Author
2020-08-06card: Add support for writeback connectorsLaurent Pinchart
Add a Card::has_writeback() method to report if the card support writeback connectors. Similarly to universal planes, add a KMSXX_DISABLE_WRITEBACK_CONNECTORS environment variable to disable enumeration of writeback connectors to avoid confusing existing code that expects all connectors to model an output. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2020-08-06kms++: 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>
2020-08-06kms++: 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>
2020-08-06kms++: 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>
2020-08-06pykmsbase: 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>
2020-08-06card: 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 get_minor() method on the Card object. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2020-04-21py/cam.py: get w & h from cmdlineTomi Valkeinen
2020-02-14global_alpha_test.py: Updates for tidssJyri Sarha
2020-02-14alpha-test.py: Updates for tidssJyri Sarha
2020-02-14ctm_test.py: Updates for tidssJyri Sarha
2020-01-29improve hpd.pyTomi Valkeinen
2019-11-06pykmsbase: upgrade Blob __init__ to fix deprecation warningTomi Valkeinen
2019-11-06Split dmabuf support from ExtFramebuffer into DmabufFramebufferTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2019-10-28kmsmodeview.py: update to current kms++ apiTomi Valkeinen
2019-09-25add testmodes.pyTomi Valkeinen
Add testmodes.py which goes through all videomodes from a connector one by one. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2019-09-25videomode to_string improvementsTomi Valkeinen
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>
2019-01-17Revert "py: add open_modesetting_card"Tomi Valkeinen
This reverts commit 27f1c296c4f5996227b28215400c787ea018862b.
2019-01-14py: add open_modesetting_cardTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2019-01-14Card: improve DRM card selectionTomi Valkeinen
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>
2019-01-14Card: add support to get the driver nameTomi Valkeinen
Add support to get the driver name. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2019-01-09pykms: expose Card(device) constructorTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-11-01Add wb-m2m-crop.py test to test cropping on write-backBenoit Parrot
Signed-off-by: Benoit Parrot <bparrot@ti.com>
2018-11-01videodevice: Add selection API supportBenoit Parrot
Add selection API support to the VideoSteamer class. Signed-off-by: Benoit Parrot <bparrot@ti.com>
2018-10-10Add globa_alpha_test.py for DRM per plane "alpha" property testingJyri Sarha
2018-10-10scale.py: Use atomic modesetting and other improvementsJyri Sarha
Add commandline parameters and use more sensible defaults
2018-10-10plane_csc.py: do not assume HDMI output and other improvementsJyri Sarha
2018-10-03trans-test.py: cleanupTomi Valkeinen
2018-10-03test.py: cleanupTomi Valkeinen
2018-09-24py: fix __atomic_req_add_plane when crtc = NoneTomi Valkeinen
2018-09-24trans-test.py: fix usageTomi Valkeinen
2018-09-17py: add AtomicReq extensions and use them in test.pyTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-08-28py/tests: rename zorder to zposTomi Valkeinen
zpos is the official property. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-08-14Add plane_move.py test for testing plane move between crtcsPeter Ujfalusi
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2018-08-14trans-test.py: Aesthetic improvementsPeter Ujfalusi
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>
2018-08-10trans-test.py: am4 improvementsTomi Valkeinen
2018-08-03trans-test.py: improvementsTomi Valkeinen
2018-08-03add a simple draw_circle()Tomi Valkeinen
2018-06-20py: sync: Moded to blob conversion method is called to_blob()Laurent Pinchart
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>
2018-06-20py: sync: Fix event handlingLaurent Pinchart
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>
2018-01-12alpha-test.py: fixTomi Valkeinen
2018-01-09trans-test.py: fix drawing outside the bufferTomi Valkeinen
2017-12-15py: pyvid: Provide stream_off bindingKieran Bingham
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>
2017-12-08py: add convert_vector helperTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2017-12-08py: Add Card crtcs and encoders properties back to the Python bindingsLaurent Pinchart
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>
2017-12-08Fix Python bindings for Connector::get_possible_crtcs() methodLaurent Pinchart
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>
2017-11-24pykms: keep Card alive until Blob is goneTomi Valkeinen
2017-11-24Update to latest pybind11Tomi Valkeinen
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>
2017-11-22kmstest: use resmanTomi Valkeinen
2017-10-20Crtc: add set_mode() which doesn't take a fbTomi Valkeinen
2017-10-03Rework framebuffer classesTomi Valkeinen
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.