Weston RDP on ARM

Heikki Sarkanen hsarkane at gmail.com
Thu Mar 26 07:45:11 PDT 2015


Hi,

I am trying to use the RDP backend on custom Freescale iMX6 based ARM
board where the only supported fbdev-backend is heavily patched:
https://github.com/Freescale/meta-fsl-arm/tree/master/recipes-graphics/wayland/weston.
I am using Yocto build system, Weston 1.7 and freerdp version:
3f371b22ad67033c366e41f459747796a95633b8 which was working on some ARM
board: http://lists.freedesktop.org/archives/wayland-devel/2015-February/020088.html.
Probably I am doing something wrong because I have tried three
different approaches with no luck yet:

1. Use fullscreen shell to show contents of other fbdev/desktop-shell
compositor.
Currently fullscreen shell works and I can connect RDP client which
shows blank image:
weston --no-config --backend=rdp-backend.so
--shell=fullscreen-shell.so --no-clients-resize
--rdp-tls-cert=/home/root/test.crt --rdp-tls-key=/home/root/test.key

How can I show desktop-shell contents running on fbdev-backend on this
fullscreen shell compositor?

2. Use desktop-shell on RDP-backend like they use on Tizen:
https://wiki.tizen.org/wiki/Weston_RDP_access This fails to
get_shell_surface and quits:
weston --no-config --backend=rdp-backend.so --shell=desktop-shell.so
--no-clients-resize --rdp-tls-cert=/home/root/test.crt
--rdp-tls-key=/home/root/test.key --socket=wayland-1
[12:12:17.884] weston 1.7.0
               http://wayland.freedesktop.org
               Bug reports to:
https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version=1.7.0
               Build: 1.6.93-9-gdbd8606 configure.ac: bump to version
1.7.0 for release (2015-02-13 20:47:09 -0800)
[12:12:17.885] OS: Linux, 3.10.53-alpha1.1, #1 SMP PREEMPT Tue Mar 3
23:09:53 EET 2015, armv7l
[12:12:17.886] Starting with no config file.
[12:12:17.888] Loading module '/usr/lib/weston/rdp-backend.so'
[12:12:17.983] using FreeRDP version 1.2.1
[12:12:17.986] TLS support activated
[12:12:17:471] [969:1992478720] [INFO][com.freerdp.core.listener] -
Listening on 0.0.0.0:3389
[12:12:17.988] Compositor capabilities:
               arbitrary surface rotation: yes
               screen capture uses y-flip: yes
               presentation clock: CLOCK_MONOTONIC_RAW, id 4
[12:12:17.990] Loading module '/usr/lib/weston/desktop-shell.so'
[12:12:17.998] launching '/usr/lib/weston/weston-desktop-shell'
[12:12:18.072] Error: /usr/lib/weston/weston-desktop-shell apparently
cannot run at all.
               Quitting...

Does RDP backend work with desktop shell?

3. Use screen-share module, which fails to find wl_shm:
weston --no-config --backend=fbdev-backend.so --shell=desktop-shell.so
--modules=screen-share.so --use-gl=1 --tty=1
[12:33:36.522] weston 1.7.0
               http://wayland.freedesktop.org
               Bug reports to:
https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version=1.7.0
               Build: 1.6.93-9-gdbd8606 configure.ac: bump to version
1.7.0 for release (2015-02-13 20:47:09 -0800)
[12:33:36.524] OS: Linux, 3.10.53-alpha1.1, #1 SMP PREEMPT Tue Mar 3
23:09:53 EET 2015, armv7l
[12:33:36.525] Starting with no config file.
[12:33:36.527] Loading module '/usr/lib/weston/fbdev-backend.so'
[12:33:36.568] initializing fbdev backend
[12:33:36.572] compositor->use_gal2d=0
[12:33:36.573] Loading module '/usr/lib/weston/gl-renderer.so'
[12:33:36.628] warning: EGL_EXT_swap_buffers_with_damage not
supported. Performance could be affected.
[12:33:36.628] Creating fbdev output. /dev/fb0 x=0 y=0
[12:33:36.628] Opening fbdev frame buffer.
[12:33:36.629] Calculating pixman format from:
                - type: 0 (aux: 0)
                - visual: 2
                - bpp: 16 (grayscale: 0)
                - red: offset: 11, length: 5, MSB: 0
                - green: offset: 5, length: 6, MSB: 0
                - blue: offset: 0, length: 5, MSB: 0
                - transp: offset: 0, length: 0, MSB: 0
[12:33:36.652] EGL version: 1.4
[12:33:36.652] EGL vendor: Vivante Corporation
[12:33:36.652] EGL client APIs: OpenGL_ES OpenVG
[12:33:36.652] EGL extensions: EGL_KHR_reusable_sync EGL_KHR_fence_sync
               EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap
               EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image
               EGL_KHR_gl_renderbuffer_image EGL_KHR_lock_surface
               EGL_KHR_create_context EGL_EXT_create_context_robustness
               EGL_EXT_buffer_age EGL_EXT_protected_surface
               EGL_WL_bind_wayland_display
[12:33:36.653] GL version: OpenGL ES 3.0 V5.0.11.p4.25762
[12:33:36.653] GLSL version: OpenGL ES GLSL ES 3.00
[12:33:36.653] GL vendor: Vivante Corporation
[12:33:36.653] GL renderer: Vivante GC880
[12:33:36.653] GL extensions: GL_OES_vertex_type_10_10_10_2
               GL_OES_vertex_half_float GL_OES_element_index_uint
               GL_OES_mapbuffer GL_OES_vertex_array_object
               GL_OES_compressed_ETC1_RGB8_texture
               GL_OES_compressed_paletted_texture GL_OES_texture_npot
               GL_OES_rgb8_rgba8 GL_OES_depth_texture
               GL_OES_depth_texture_cube_map GL_OES_depth24 GL_OES_depth32
               GL_OES_packed_depth_stencil GL_OES_fbo_render_mipmap
               GL_OES_get_program_binary GL_OES_fragment_precision_high
               GL_OES_standard_derivatives GL_OES_EGL_image GL_OES_EGL_sync
               GL_EXT_texture_type_2_10_10_10_REV
               GL_EXT_texture_filter_anisotropic
               GL_EXT_texture_format_BGRA8888 GL_EXT_read_format_bgra
               GL_EXT_multi_draw_arrays GL_EXT_frag_depth
               GL_EXT_discard_framebuffer GL_EXT_blend_minmax
               GL_EXT_multisampled_render_to_texture GL_EXT_robustness
               GL_VIV_tex_direct
[12:33:36.653] GL ES 2 renderer features:
               read-back format: BGRA
               wl_shm sub-image to texture: no
               EGL Wayland extension: yes
[12:33:36.654] Chosen EGL config details:
               RGBA bits: 8 8 8 0
               swap interval range: 0 - 10
[12:33:36.654] fbdev output 1280×800 px
               guessing 61 Hz and 96 dpi
[12:33:36.657] input device 'gpio-keys.28', /dev/input/event0 is a keyboard
[12:33:36.661] input device 'Lite-On Technology Corp. HP Basic USB
Keyboard', /dev/input/event4 is a keyboard
[12:33:36.661] launching '/usr/lib/weston/weston-keyboard'
[12:33:36.752] Compositor capabilities:
               arbitrary surface rotation: yes
               screen capture uses y-flip: yes
               presentation clock: CLOCK_MONOTONIC_RAW, id 4
[12:33:36.753] Loading module '/usr/lib/weston/desktop-shell.so'
[12:33:36.756] Loading module '/usr/lib/weston/screen-share.so'
[12:33:36.813] launching '/usr/lib/weston/weston-desktop-shell'
[12:33:39.859] Screen share failed: No wl_shm found
[12:33:39.859] unknown child process exited

Does screen share work with fbdev-backend?

Any help would be really appreciated.

BR,
Heikki Sarkanen


More information about the wayland-devel mailing list