Hi Christopher,

thank you for your repply.

With these information and you post on your blog I'll try to do a simple module 
to make it working.

I'll post it if I manage to do it.

Kind Regards,

Pierre

________________________________________
De : Christopher Michael <[email protected]>
Envoyé : vendredi 7 octobre 2016 18:25
À : Enlightenment developer list
Objet : Re: [E-devel] ecore_drm2 and elput

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

------------------------------------------------------------------------------
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

Reply via email to