summaryrefslogtreecommitdiff
path: root/kms++/src
AgeCommit message (Collapse)Author
2019-01-14card: don't throw if no dumb buffersTomi Valkeinen
Allow opening DRM cards without dumb buffers. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2019-01-14card: don't throw when no resourcesTomi Valkeinen
Allow opening DRM cards without any resources. 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-14card: cleanup fd usageTomi Valkeinen
Use m_fd consistently. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-10-17Add AR12 & AR15 supportTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-09-28Add include of <cerrno> to various filesAndrew F. Davis
This is needed for building with some version of some compilers where it is not automatically included with the existing include set (clang). Signed-off-by: Andrew F. Davis <afd@ti.com>
2018-09-10kmstest: give an error if master permissions could not be setTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-08-28connector: add connector_status()Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-06-29drmpropobject: add set_prop_value(Property* prop, uint64_t value)Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-04-02Add DPI encoderTomi Valkeinen
2017-10-20Crtc: add set_mode() which doesn't take a fbTomi Valkeinen
2017-10-20Connector: improve get_mode(string)Tomi Valkeinen
2017-10-20Card: add disable_all()Tomi Valkeinen
2017-10-20Videomode: add to_string()Tomi 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.
2017-10-03card: fix compile warningTomi Valkeinen
2017-10-03add ExtFramebuffer::prime_fdTomi Valkeinen
2017-05-30omapfb: add flags for memory allocTomi Valkeinen
2017-05-30omapfb: add enum Flags for OmapFBTomi Valkeinen
2017-05-24omapfb: add TILER supportTomi Valkeinen
Add TILER rotation support for omapframebuffer. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2017-04-27connector: add DPI connector typeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2017-04-21Return primary plane already associated with the CRTC if it existsLaurent Pinchart
The Crtc::get_primary_plane() method returns the first primary plane that supports the CRTC. While being correct, this could lead to multiple primary planes being associated with the CRTC, which can confuse applications. To avoid that, return insead the primary plane already associated with the CRTC if one exists, otherwise keep the current behaviour. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2017-03-13plane: add get_possible_crtcs()Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2017-02-10omapfb: add constructor with fourccTomi Valkeinen
2017-02-10ExtFb: pass params in vectorsTomi Valkeinen
2017-02-10improve ExtFbTomi Valkeinen
Inherit MappedFramebuffer and add map()
2017-02-10ExtFb: remove legacy constructorTomi Valkeinen
2017-02-10PlaneType to bitmaskTomi Valkeinen
2017-01-25Add refresh() to connector, crtc and encoderTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-12-20crtc: add disable_mode()Tomi Valkeinen
Add crtc::disable_mode() for disabling the crtc. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-11-21Add OmapCard and OmapFramebufferTomi Valkeinen
Add OmapCard and OmapFramebuffer classes to utilize omap_bos. Only non-tiled framebuffer is implemented for now. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-11-21Add MappedFramebufferTomi Valkeinen
Add a base MappedFramebuffer class, which inherits Framebuffer and implements IMappedFramebuffer. This helps to implement platform specific framebuffer classes, like OmapFramebuffer. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-11-03dumbfb: pass O_RDWR to drmPrimeHandleToFD()Tomi Valkeinen
This enables write access to the dumb fb with mmap(). Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-10-11modedb_dmt: update tableTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-10-11kms++: add videomode_from_cvt()Tomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-10-11Add comment about ilaceTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-09-29Improve mode findingTomi Valkeinen
Change calculated_vrefresh to round to 2 decimals, and do two rounds when looking for a mode: first look for exact vrefresh match, then look for rounded match. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-09-26Improve struct VideomodeTomi Valkeinen
Enable set/get for sync polarities and interlace. Add videomode_from_timings() helper to construct Videomode from non-X timings. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-09-01Fix error printsTomi Valkeinen
2016-08-15AtomicReq: add add_display() helperTomi Valkeinen
2016-08-15support finding fractional vrefreshTomi Valkeinen
2016-08-15modedb: fix vrefresh for ilaceTomi Valkeinen
2016-08-15testpat & kmsprint: improve mode printsTomi Valkeinen
2016-08-11Add BGR888 (BG24) and BGR565 (BG16) pixelformats.Jyri Sarha
Note colorbar does not support 24 bit modes (RGB888 or BGR888) yet.
2016-07-10Fix property name lookupTomi Valkeinen
Object types can have different properties with the same name, so we need to move name-based property lookup from Card to DrmPropObject. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-07-10kms++: fix AtomicReq compilationTomi Valkeinen
4fb69b7d20e90746855de122422ac9cabd78f66f ("kms++: use DrmPropObject in AtomicReq") made AtomicReq::add() use a not-yet-implemented method. Fix this by changing that line back. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-06-22kms++: use DrmPropObject in AtomicReqTomi Valkeinen
The objects to which we set properties with AtomicReq must have properties, so they are DrmPropObjects instead of DrmObjects. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-06-20Framebuffer: don't crash is drmModeGetFB() returns 0Tomi Valkeinen
2016-06-20Add Framebuffer::flush()Tomi Valkeinen