summaryrefslogtreecommitdiff
path: root/src/lib/ecore_drm (follow)
AgeCommit message (Collapse)Author
2015-11-17ecore-drm: Don't send mouse_move event too earlyChris Michael
We cannot be sending an ecore_event for mouse move here as it is too early in the startup process for that too happen. Raising the event here never gets caught because the ecore_evas has not yet registered for ecore_input listening. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-10ecore_drm: pass NULL to mmap() instead 0 for addressStefan Schmidt
The second find of these. The other one was in evas generic loaders. mmap() expects a void * as address here. If we want to let the kernel choose the address we should really pass in NULL instead of the integer 0. Thanks goes to the sparse semantic parser for pointing this out.
2015-11-05ecore-drm: Remove unused functionChris Michael
As we no longer have an fd handler to listen on the drm fd, we don't need this function anymore @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-05ecore-drm: Fix issue of hanging in read()Chris Michael
Summary: As we already call drmHandleEvent when we pageflip, we don't need to be using an fd handler to catch them. This should fix T2791 @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-05ecore-drm: Fix issue of duplicate page flipsChris Michael
Summary: If we already have a pending pageflip scheduled for a given framebuffer, don't reschedule another one. This also includes a minor fix when mmap'ing the framebuffer (previously was also mapped PROT_READ). @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04ecore-drm: Check return value of drmHandleEvent and cleanupChris Michael
Summary: drmHandleEvent will return 0 on success, or -1 on error. We should trap for the error case so that we can cleanup any allocated callback structures. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04ecore-drm: Don't always check fb size against dumb bufferChris Michael
Summary: If we are running using gl_drm, then we don't need to create software dumb buffers on the drm device. Since we may not have the dumb buffers (only used in software rendering), then we should not always be checking the framebuffer size against the dumb buffer size. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-30ecore-drm: Add some debug printing for driver detailsChris Michael
Summary: In efforts to debug some non-working drm issues for people, it would be helpful to know what drivers and versions they are using. This commit just adds some debug printing for that information Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-30ecore-drm: Don't exit tty setup if tty is already in graphics modeChris Michael
Summary: If we go to setup a tty and it is already in graphics mode, then there is no need to exit with a failed setup here. Instead, we can actually continue to setup the tty. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14ecore-drm: Add missing field initializers for vt_modeChris Michael
Summary: clang reports missing field initializers for usage of vt_mode structure, so add the missing initializers @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-08-25build: replace libsystemd-{daemon, journal} with libsystemdMarcel Hollerbach
Summary: since all the libs got merged into libsystemd in 209, we can just check for libsystemd Reviewers: cedric Subscribers: stefan_schmidt, morlenxus Differential Revision: https://phab.enlightenment.org/D2984
2015-08-07ecore_drm_evdev: Avoid shadowing a local variable.Stefan Schmidt
input is already used within this function so rename it in the block.
2015-07-23ecore-drm: Ignore key events that are not seat wide state changesChris Michael
Summary: This patch adds some checks to make sure that we can ignore key events which are not seat wide state changes. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-29Revert "ecore-input: add keysym to Ecore_Event_Key struct"Mike Blumenkrantz
This reverts commit c3f3c4eba80f0a7f388de608f2b1566213e73603. this was audited and found to be impractical due to portability concerns
2015-06-23ecore-drm: Quiet down output from libinputChris Michael
Summary: As libinput has matured enough now, we can reduce the noise in outputs logs by adjusting libinput log level priority @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23ecore-drm: Fix setting proper output subpixel valueChris Michael
Summary: This adds a minor internal function to convert DRM_MODE_SUBPIXEL values into something that the wayland protocol supports. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-23ecore-drm: Fix issue of outputs not getting registered with the wayland registryChris Michael
Summary: This fixes T2465: QT5 apps don't work. The issue here is that when the randr code runs in E we make calls to ecore_drm_output_enable/disable which is supposed to register the outputs with the wayland registry. This was not happening due to the enable/disabled checks at the top of these functions. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05ecore-drm: Don't free an output on unplugChris Michael
Summary: We should not be freeing an output when it gets unplugged (as it may get replugged). Just disable rendering on that output @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05ecore-drm: Don't crash when trying to disable an outputChris Michael
Summary: If we call these functions with an already disabled output, we crash. Check for an output being 'enabled' before we make these calls. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05ecore-drm: Remove erroneous error messages from EINA_SAFETY checksChris Michael
Summary: As the gl_drm engine code will almost always pass NULL rectangles, remove the EINA_SAFETY checks so that logs don't fill with meaningles error messages. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-21ecore-drm: Remove call to set drm mode when creating an outputChris Michael
Summary: As it turns out, we don't need to make the call to set an output mode during creation. The mode will end up getting set anyway when we set the first buffer. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-20ecore-input: add keysym to Ecore_Event_Key structMike Blumenkrantz
currently only functional for x11, wl, drm @feature
2015-05-18ecore-drm: Only try to set the crtc mode if an output is connectedChris Michael
Summary: If an output is disconnected, then we should not be trying to set the mode of it's CRTC as that is going to fail anyway. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-14ecore-drm: Ignore output enabled flag when setting output modeChris Michael
Summary: We really do not need to check the enable flag here because if we are setting a valid mode, then we will be enabled anyway NB: This makes it actually possible to Enable/Disable outputs in the RandR config dialog of E-Wl ;) @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-14ecore-drm: Fix segfault if sending output event and output has no current modeChris Michael
Summary: This fixes a segfault which could happen if we enable an output before setting the output current mode. Now we test for an output having a current_mode, and if not we use the crtc size when sending the output event. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Remove debug outputChris Michael
Summary: This should not have been included in the previous push as it was just debug noise which was added during testing Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Add API function to set a new mode on an outputChris Michael
Summary: This adds a new API function (ecore_drm_output_mode_set) that we can use from within RandR code to set the resolution of an output (or disable an output if NULL is passed in). @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Fix issue with output_current_resolution_get functionChris Michael
Summary: This fixes ecore_drm_output_current_resolution_get function to properly operate if an output does not have a current mode assigned. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Only send output events when we enable/disable an outputChris Michael
Summary: This reduces the number of output events that wl_drm module will receive from ecore-drm. We now only send those events when an output gets enabled/disabled where previously we were also sending them during output creation. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Greatly improve drm rendering speedChris Michael
Summary: This greatly improves rendering speed in evas drm engine. Previously we would always call drmModeSetCrtc regardless if it was needed or not. These changes greatly improve rendering speed in drm as we now only call drmModeSetCrtc if it is needed. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-13ecore-drm: Fix purpose of ecore_drm_output_enable/disable functionsChris Michael
Summary: These API functions should be used for enable/disable of a given output. They were previously being misused to stop/start rendering on an output when we VT switch away so now we add an internal function we can call to disable/enable rendering. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Skip not connected outputs when calculating geometryChris Michael
Summary: When we make a call to get the geometry of all outputs, we should be skipping ones which are not connected. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Fix finding possible crtcsChris Michael
Summary: This fixes an issue when searching for possible crtcs that an output can work on. Previously, we would end up not returning any possible crtcs due to not looping the crtcs of the resource. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Add a 'name' field to Ecore_Drm_Event_OutputChris Michael
Summary: This adds a new 'name' field to the Ecore_Drm_Event_Output structure so that when we catch drm output events in E, we can compare this name to find an e_randr screen and update compositor's outputs. @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Fix ecore_drm_output_edid_get to return a hex stringChris Michael
Summary: As we will use the edid string inside RandR code to store unique information about an output, we should be returning this edid in a "readable" form. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Fix issue of edid parsing not ignoring stringChris Michael
Summary: When we are parsing the edid string, if the string is random junk, then we need to ignore it. Prior to this commit, we were not setting the returned text properly. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-12ecore-drm: Add API function to test if an output can go on a given crtcChris Michael
Summary: This adds a new API function to test if a given Ecore_Drm_Output can be used on a given crtc. This is needed for DRM RandR support @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add new API function to mark an output as primaryChris Michael
Summary: This adds a new API function which we can use to mark a given Ecore_Drm_Output as being the primary output. @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to find an output given a nameChris Michael
Summary: This adds a new API function to find an Ecore_Drm_Output which matches a given name. @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Fix formattingChris Michael
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to get an output's crtc sizeChris Michael
Summary: This adds a new API function to return an output's crtc size. This is mainly used for drm RandR config in E @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to return primary outputChris Michael
Summary: This adds a new API function to return the output which is marked as the primary output. @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add support for a Primary OutputChris Michael
Summary: As 'primary' output support is not implemented in hardware, we need to support this feature via software. For now, the first output returned via libdrm will be marked as 'primary' until user changes it via config @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Set drm client capabilities to support universal planesChris Michael
Summary: If we do not set client capabilities to support universal planes, then libdrm does not expose the primary or cursor planes so this adds a quick call to set DRM_CLIENT_CAP_UNIVERSAL_PLANES @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Cleanup plane debug outputChris Michael
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Set output connected property in the creation functionChris Michael
Summary: Makes more sense to set the output's connected property inside the function which creates outputs. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add some debug code to spit out planes and plane propertiesChris Michael
Summary: This adds a debug function to spit out planes and their properties while debugging rotation support Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to return output modesChris Michael
Summary: This adds a new API function to return a list of modes supported on a given output @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to return the edid of a given outputChris Michael
Summary: This adds a new API function to return the EDID string of a given output. @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07ecore-drm: Add API function to return if a given output has a backlightChris Michael
Summary: This adds a new API function to call so we can check if a given Ecore_Drm_Output has a backlight @feature Signed-off-by: Chris Michael <cp.michael@samsung.com>