Summary: When running E-Wl with multiple outputs, we could not
previously move the mouse pointer across to the second output. This
commit fixes that issue.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: Since we now create the dumb buffers in the ecore_drm_device
structure, we don't need them on a per-output basis. This commit fixes
the output & device code to adjust to this.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we make the call to outputs_geometry_get, we should NOT
include cloned outputs in the final size.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: If an output has a pending page flip, we cannot destroy it
until the page flip has completed. This commit adds support to delay
destroying an output until the page flip is completed.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This refactors the output creation code to support better
mode detection, cloning of hotplugged outputs, and initial support for
setting of output gamma (API to follow)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This commit adds support for setting DPMS level of an output.
This adds a new API function 'ecore_drm_output_dpms_set' to set the
level.
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This fixes an issue where heights of all outputs would get
added, thus causing the ecore_evas to be created at the wrong size.
Now, the height will be whichever output is larger.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This fixes a minor oversight in ecore_drm_output_mode_add
which was not setting the mode->flag to preferred if this is a
preferred mode.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: If we unplug an output, we should still be sending this event
so that the compositor can remove any unplugged outputs
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: libdrm has support for Virtual and DSI connector types, so
add those to the connector types
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: Move the Eeze udev watch to inside the ecore_drm_device. This
allows us to only create One watch to catch all output changes. No
need for more than one watch (one per output) as was done previously
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: As there are various DVI and HDMI output names, update the
output connector types area to be more accurate so we get better
output names
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When setting up the Eeze_Udev_Watch for output hotplug
events, we should also be listening for the "change" event. As eeze
will now check the HOTPLUG property for drm events, we don't need to
check that here.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This is mainly just a build fix. This issue occurred due to
the function declaration being After a call to use it while not having
a function prototype. This just adds the function prototype
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This patch adds more information so we can debug output
hotplug events better. It fixes an issue where any new outputs
from _ecore_drm_update_outputs where not getting the eeze udev watch
event created, and also addresses the issue of disconnected outputs
not sending the ecore_drm_event (both minor fixes)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Fix issue of invalid memory read from
ecore_drm_output_create. We call ecore_drm_output_crtc_find to get the
Index of the crtc to use, however prior to this commit the index was
not being returned (the actual crtc was)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2140
Summary: This implements edid parsing to obtain output make and model
so we can get better output names. This also fixes a false FIXME
statement in ecore_drm_output_physical_size_get function. As it turns
out, we don't need to get these values from edid parsing as they are
already available in the drm connector.
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we raise an event for an output, also include the output
id in the event structure. This will allow us to better identify which
output the event occured on.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
This provides callbacks to any bound wl_output listeners when a
display is hotplugged.
NOTE: Currently we don't receive hotplug events
ANOTHER NOTE: We don't yet handle display removal
Reviewers: devilhorns, zmike
Reviewed By: devilhorns, zmike
Subscribers: cedric
Maniphest Tasks: T2131
Differential Revision: https://phab.enlightenment.org/D2006
invalid id. Fix T2086
Summary: In order to avoid getting returned an invalid id, we should
not be checking the currently active encoder and crtc combination
because outputs may have changed, encoders/crtc combinations could
have changed, etc, etc.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we shutdown outputs, we should reset the hardware cursor
state and the saved crtc mode in order to reset things back to normal.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This just removes the call to the no longer used/needed
function to update the input device's view of the output.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we exit the backlight_init function, we should
stringshare_del the returned device strings from eeze properly
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Added internal function _ecore_drm_update_outputs which will update the
outputs if the drm device is hotplug
@fix
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1565
Summary: Cleaned up all unwanted code's in ecore_drm. This just
removes a bunch of already commented out code.
@fix
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1615
Summary:
Added code to cleanup backlight structure and to close the drm device and
delete it.
@fix
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1566
Summary: We cannot call drmModeFreeCrtc with an invalid crtc, so check
that it is set inside the output structure before trying to make this
call
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: There is no point in having different code in each output
free function (internal one and API exposed one), so let's unify the
code here.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Added _ecore_drm_output_device_is_hotplug API to check if the
drm device is hotplug device. It returns EINA_TRUE if device is
hotplug else returns EINA_FALSE
@feature
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1559
when we free the output.
Summary: This commit fixes an issue where a hotplug watch was Only
being added for One input, and also deletes any created watch during
output_free.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
after the device loop.
Summary: If there are no outputs created during the loop, we would end
up crashing here by checking output->watch. This fixes that situation
without leaking resources because we still end up doing our cleanup.
NB: Thanks Cedric for the report !! :)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Added watch to check if drm output device is hotplug and update the
outputs accordingly.
NB: This is only partially complete. The actual update of outputs
still needs to be implemented.
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1552
Summary:
Added _ecore_drm_output_backlight_shutdown function to clean up
the resources related to backlight structure and initialized backlight structure
in _ecore_drm_output_create.
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1501
Summary: This commit has no functional changes, just
cosmetic/formatting to make the code easier to read.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Added private internal functions to get various brightness levels
1) Added _ecore_drm_actual_brightness_get to get Actual brightness
2) Added _ecore_drm_max_brightness_get to get Max brightness
3) Added _ecore_drm_brightness_get to get Brightness
These functions will eventually be exposed with an API for ecore-drm
to get/set the backlight level for an output.
@feature
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1482
Summary: This ports the current backlight_init code to use Eeze
library instead of udev functions directly.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Added initial support for backlight in drm by adding various structures
and provided api for initializing the backlight struct.
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns, stefan_schmidt
Subscribers: stefan_schmidt, cedric
Differential Revision: https://phab.enlightenment.org/D1448
create, call it
Basically, this will fix a potential leak (and a potential case of a
false output getting added) IF during creation of outputs, something
fails.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
If we have a CRTC already configured save the work to search for a new
crtc and encoder combination that works with this connector. Just use what
we have.
Also always check if the CRTC is already allocated for a different connection
before using it.
Summary:
These files are missing group titles on the @defgroup line. Added the titles so Doxygen does not
complain.
Test Plan: make doc 2> doc/doxyerr.log
CC: cedric
Differential Revision: https://phab.enlightenment.org/D612
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
@feature: Add Ecore_Drm library code for setting up drm card, outputs,
virtual terminals, framebuffers, and input for use with ecore_evas drm
code.
Signed-off-by: Chris Michael <cp.michael@samsung.com>