Commit Graph

113 Commits

Author SHA1 Message Date
Christopher Michael f85f6f5ad2 ecore_drm2: Add API to return display info
NB: This is unfinished !! Need to support rotations
2023-01-02 07:56:59 -05:00
Christopher Michael 7b19fbe81c ecore_drm2: Add API to return list of displays 2023-01-02 07:36:23 -05:00
Christopher Michael 5664911df8 ecore_drm2: Add API to get/set if display is primary 2023-01-02 07:28:52 -05:00
Christopher Michael cf2a325012 ecore_drm2: Add API to return display mode info 2023-01-02 07:25:44 -05:00
Christopher Michael 5278c54839 ecore_drm2: Add API to return display modes 2023-01-02 07:22:26 -05:00
Christopher Michael 28e9ef0ec0 ecore_drm2: Add API to return display edid 2023-01-02 07:20:03 -05:00
Christopher Michael f02385bd09 ecore_drm2: Add API to return display crtc id 2023-01-02 06:47:57 -05:00
Christopher Michael b8a257b7d6 ecore_drm2: Add API to return display enabled 2023-01-02 06:42:58 -05:00
Christopher Michael 3a635f0f98 ecore_drm2: Add API function to return dpms value 2022-12-14 06:17:28 -05:00
Christopher Michael 69ecb57c2b ecore_drm2: Add API function to get display physical size 2022-12-13 06:41:48 -05:00
Christopher Michael 5574ab8707 ecore_drm2: Add API function to return display subpixel 2022-12-13 06:39:01 -05:00
Christopher Michael 7ce9125d1e ecore_drm2: Add API function to return connector type 2022-12-13 06:36:44 -05:00
Christopher Michael df5f13ea64 ecore_drm2: Add API to return if a display is connected 2022-12-07 08:21:07 -05:00
Christopher Michael 8f5f7773b3 ecore_drm2: Add API to return if a backlight exists on display 2022-12-07 08:19:06 -05:00
Christopher Michael 122298af42 ecore_drm2: Add API to return display model 2022-12-07 08:10:16 -05:00
Christopher Michael defeaf1313 ecore_drm2: Add API to return display name 2022-12-07 08:08:34 -05:00
Christopher Michael e47a812240 ecore_drm2: Add API to get screen size range 2022-12-07 07:19:38 -05:00
Christopher Michael b2535043dc ecore_drm2: Add start of explicit threading for crtc state
NB: Pushing this so that the code is up there, but it is certainly
going to change shortly
2022-10-18 10:34:18 -04:00
Christopher Michael aa64d0f37c ecore_drm2: Add opaque structure for Ecore_Drm2_Display_Mode 2022-09-20 12:15:09 -04:00
Christopher Michael 2958c10c93 ecore_drm2: Add public structures for Crtc, Connector, Display, Plane
This commit adds opaque API structures for Crtc, Connector, Display,
and Plane. It also adds missing sym_drm functions that we will need
later
2022-09-20 08:42:55 -04:00
Christopher Michael aaa694e551 ecore_drm2: Add API function to get preferred depth 2022-09-20 08:42:55 -04:00
Christopher Michael 94cdf5d9f2 ecore_drm2: Add API function to retrieve cursor size 2022-09-20 08:42:55 -04:00
Christopher Michael 275e42275f ecore-drm2: Add enum for rotation 2022-09-20 08:42:55 -04:00
Christopher Michael 226d306454 ecore-drm2: Add start of Ecore_Drm2_Output structure 2022-09-20 08:42:55 -04:00
Christopher Michael 1e6df64525 ecore_drm2: Start rework of Ecore_Drm2 library
This removes all old code and starts fresh with just simple
ecore_drm2_init & ecore_drm2_shutdown functions
2022-09-20 08:42:55 -04:00
Christopher Michael ca169ec715 ecore-drm2: Add missing params for doxygen 2020-05-15 10:50:37 -04:00
Christopher Michael f3c4692221 ecore-drm2: Add API function to return default depth
Rather than hard-coding depth & bpp in the evas drm engines, we can
use this function to return the default depth & bpp.

@feature
2020-05-15 10:45:56 -04:00
Christopher Michael 7c1c09f3ed ecore-drm2: Add support for using page_flip_handler2
In our current Ecore_Drm2_Context structure, we are missing support
for using page_flip_handler2. This patch adds that ability. This could
prove useful when working with ecore_drm2 as it allows
page_flip_handler callbacks to setup a handler for page_flip_handler2,
which when the callback gets received, passes back the crtc_id which
the pageflip occured on.

@feature
2020-05-01 10:29:45 -04:00
Xavi Artigas e7f4bc4c2a doxygen docs: Fix all invalid @param names
There were quite a few of these...
2020-04-20 12:24:41 +02:00
Christopher Michael ead88ff2ad ecore-drm2: Add API to check if vblank is supported
This patch adds a small API that we can use to check if the current
video driver supports the usage of drmWaitVBlank. This check is
required for certain drivers (like vbox) which do not support
drmWaitVBlank and thus are causing our animators in ecore_evas to
freeze. We can now use this API from within Ecore_Evas to disable
vsync'd animators and fall back to timer based ones.

@feature
2019-05-22 07:44:00 -04:00
Christopher Michael b462d9bc11 ecore-drm2: Fix API function parameters for background color set
Passing int as parameters here is too small for left shifting the
colors so make these parameters uint64_t
2019-04-18 09:10:49 -04:00
Christopher Michael 2aaca58de0 ecore-drm2: Add API function to set crtc background color
This patch adds a new API function we can be called in order to set
the crtc background color of a given output.

@feature
2019-04-18 07:21:39 -04:00
Christopher Michael d3a8f0f250 ecore-drm2: Add missing @ingroup for some doxy
Small patch to add missing @ingroup for doxygen comments, and correct
one that was in the wrong group

@fix
2019-04-01 10:31:08 -04:00
Christopher Michael 828984393e ecore-drm2: Add API function to return output rotation
Summary:
Small patch to add an API function which can be used to return a given
output's rotation value

ref T7690

@feature

Depends on D8113

Reviewers: raster, cedric, zmike, stefan_schmidt, bu5hm4n

Reviewed By: cedric

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8114
2019-03-22 12:41:21 -04:00
Michaël Bouchaud (yoz) 72f9a94188 ecore_drm2: Add API to allow settings tap-to-click on pointer device
Summary:
Add a way to configure pointer device with tap-to-click features.

@feature
Depends on D7843

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7847
2019-01-31 08:41:04 -05:00
Chris Michael ccf064f5ae ecore-drm2: Add API function to retrieve output user data
With the rework of Ecore_Evas drm engine, we need to get the
ecore_evas itself in the pageflip callback so we have to reassign
output->user_data to the ecore_evas which we can then use to retrieve
via this function

This is needed as the pageflip callback will pass us the output on
which the pageflip completed.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-27 09:31:33 -05:00
Chris Michael fc4f66c6c2 ecore-drm2: Add API to get/set which output is relative to another
In order to know which output we should clone, we need a way to
store/retrieve the output which should be cloned. This patch adds a
small api we can use in randr config dialog to get/set that value.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-27 09:16:00 -05:00
Chris Michael a78dc2d816 ecore-drm2: Add API functions to get/set output relative mode
These API functions will be used inside Enlightenment in order to
determine the proper extended screen size based on outputs relative
position.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-02-13 11:44:11 -05:00
Vincent Torri 4ae6eeb2cf efl: remove _MSC_VER (Visual Studio macro) usage in source code 2018-01-04 12:59:47 -08:00
Chris Michael 474da25165 ecore-drm2: Add API to allow setting pointer acceleration profile
Small patch to allow setting pointer acceleration profile (for
wayland) from within Enlightenment.

ref T4736

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-24 11:42:57 -04:00
Chris Michael b43f6c14dd ecore-drm2: Add API function to allow setting pointer acceleration speed
Small patch to add a new API function which can be called from
Enlightenment in order to allow setting pointer acceleration speed.

ref T4736

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-08-24 11:32:51 -04:00
Derek Foreman eec565cc0f ecore_drm2: Add query for pending pageflip
We've been tracking this in ecore_evas, but ecore_evas isn't the only
caller, and it doesn't know about flips initiated by the evas engines.
2017-08-11 17:11:12 -05:00
Derek Foreman 9fd0ed736d ecore_drm2: Remove ecore_drm2_output_resolution_get()
No local callers.  Superseded by ecore_drm2_output_info_get()
2017-08-09 14:56:59 -05:00
Derek Foreman 5ecfe6a8b5 ecore_drm2: Remove ecore_drm2_output_crtc_size_get()
Replaced with ecore_drm2_output_info_get()
2017-08-09 14:56:59 -05:00
Derek Foreman 846db0e0e7 ecore_drm2: Remove ecore_drm2_output_geometry_get()
Replaced with ecore_drm2_output_info_get()
2017-08-09 14:56:59 -05:00
Derek Foreman 1b853dcfad ecore_drm2: Add ecore_drm2_output_info_get
We've got too many ways to query output information, so let's add more.
(this will soon replace all of them)
2017-08-09 14:56:59 -05:00
Derek Foreman afd65a8a99 ecore_drm2: Merge ecore_drm2_device_free and _close
There's no reason to have them be separate, all callers must do them
back to back, so let's just combine them.
2017-08-09 14:56:58 -05:00
Derek Foreman d8a9b895bb ecore_drm2: Merge ecore_drm2_device_find and ecore_drm2_device_open
There's never a reason to find a device and not open it, so all callers
end up calling these two functions back to back.
2017-08-09 14:56:58 -05:00
Derek Foreman 8ff59b2c55 ecore_drm2: Pass Ecore_Drm2_Device instead of fd to most functions
Intended to simplify the upcoming commit that merges device find and
device open into a single function that returns a device.

The fd is something callers shouldn't really need to get their hands on,
right now there are still a few places where it's needed, but those will
be gone soon too.
2017-08-09 14:56:58 -05:00
Derek Foreman 8e500c6835 ecore_drm2: Allow picking a sequence number for blanktime_get
This lets us do a blocking wait for a vsync.  Something we should try to
do as infrequently as possible, but in some cases we need it one time at
startup to catch graphics driver bugs.
2017-07-28 10:41:11 -05:00