On 10/07/2016 11:09 AM, Pierre FLOURY wrote:
> Hi,
>
> I am a user of efl libs. I don't know if I am on the right mailing list.
> Let me know if I am not.
>
> I have some issues with ecore_drm2 and elput on efl v1.18.1.
>
> I want to use efl libs on an embedded system directly on top of dri/drm. (nxp
> imx6dl)
> No X server, no wayland, (no systemd).
>
> I build my system with buildroot. I used previous release of efl : v1.17.1,
> and this configuration was possible.
> Even with the gl_drm. It was nice.
>
> I built the new version of efl, the 1.18.1. Then it fails due to the new
> ecore_drm2 interface and the elput lib.
>
> here is my error :
>
> ERR<182>:ecore_drm2 lib/ecore_drm2/ecore_drm2_device.c:164
> ecore_drm2_device_find() Could not connect to input manager
> ERR<182>:ecore_evas modules/ecore_evas/engines/drm/ecore_evas_drm.c:74
> _ecore_evas_drm_init() Failed to create device
>
> it seems the function elput_manager_connect(const char *seat, unsigned int
> tty) return NULL.
> which is normal, as this function loop on this code :
>
> static Elput_Interface *_ifaces[] =
> {
> #ifdef HAVE_SYSTEMD
> &_logind_interface,
> #endif
> NULL,
> };
>
> And I do not have any systemd (And I don't want to use it).
>
> So, am I doing the right thing ? ecore_drm2 module is for my type of usage
> isn't it ? (efl on top of drm)
>
>
>
> Regards,
>
Yes, you are doing the right thing :) However, the issue is that no
other interface (other than systemd) has been added to Elput yet. If you
would like to create a non-systemd interface for it, we would be happy
to review that code for inclusion in upstream git.
The functions needed to implement a new Elput_Interface are pretty simple:
typedef struct _Elput_Interface
{
Eina_Bool (*connect)(Elput_Manager **manager, const char *seat,
unsigned int tty);
void (*disconnect)(Elput_Manager *manager);
int (*open)(Elput_Manager *manager, const char *path, int flags);
void (*open_async)(Elput_Manager *manager, const char *path, int flags);
void (*close)(Elput_Manager *manager, int fd);
Eina_Bool (*vt_set)(Elput_Manager *manager, int vt);
} Elput_Interface;
The only ones above that you would Need to implement would be: connect,
disconnect, open, close ... all others are optional.
Kind Regards,
dh
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel