How can I rotate Wayland weston?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How can I rotate Wayland weston?

14,380 Views
hyobokahn
Contributor II

Hello.

My project need to rotate screen.

I use Yocto git://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-4.1.15-1.0.0_ga release version with Wayland backend and Qt5.

What is best way to rotate 90 degree clock-wise ?

I try to use weston.init (I add my self) with my display is LVDS 1024x768.

    [output]

   name=LVDS1

   mode=1024x768

   tansform=90

but, that is not work. in this reason

I try name=WL1, but it was not work too.

I see manual, if I use name=LVDS1, I must use drm or x11 backend.

So, I add [core] section with backend option like as

   [core]

   backend=drm-backend.so.

but, If I use this option, I fail to loading dri/swrast_dri.so,  dri/vivante_dri.so.

how can I install this library with Waland backend Yocto build system?

or, is there any better way to rotate screen without this way?

Thanks.

Labels (2)
Tags (1)
8 Replies

11,435 Views
grigoritimonen
Contributor II

Finally I got it working.

The problem was in wrong connector name in the weston.ini.

root@imx8mmevk:~# ls /sys/class/drm/
card0  card0-DSI-1  version

I was trying to use card0 and card0-DSI-1 as a KMS connector names in the weston.ini. Then I took a look at /var/log/weston.log and found that proper name is DSI-1.

[05:55:41.223] DRM: head 'DSI-1' found, connector 33 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[05:55:41.223] Registered plugin API 'weston_drm_output_api_v1' of size 24
[05:55:41.224] Chosen EGL config details:
               RGBA bits: 8 8 8 0
               swap interval range: 1 - 60
[05:55:41.224] No backlight control for output 'DSI-1'
[05:55:41.224] Output DSI-1 (crtc 31) video modes:
               720x1280@58.1, preferred, current, 67.3 MHz
[05:55:41.224] associating input device event0 with output DSI-1 (none by udev)
[05:55:41.224] associating input device event1 with output DSI-1 (none by udev)
[05:55:41.224] associating input device event2 with output DSI-1 (none by udev)
[05:55:41.224] Output 'DSI-1' enabled with head(s) DSI-1

So 'card0' part of name should be omitted.

Rotation works properly for me with following weston.ini:

root@imx8mmevk:~# cat /etc/xdg/weston/weston.ini
[core]
# i.MX: Disable idle timeout
idle-time=0
backend=drm-backend.so

[libinput]
touchscreen_calibrator=true

[output]
name=DSI-1
mode=720x1280@60
transform=270

[screen-share]
command=/usr/bin/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize

11,435 Views
furkancanby
Contributor I


fbdev.jpg
I found the device name at "/var/log/weston.log". 
And I add these lines to  "/etc/xdg/weston/weston.ini" : 

(My default screen size :1024x768 and 60Hz)

[output]
name=fbdev
mode=768x1024@60
transform=270

You can set "transform" 90 or 270 to use your display vertical. 

Thank you.

0 Kudos

11,436 Views
joanxie
NXP TechSupport
NXP TechSupport

one can use xrandr to rotate the display, for more detailed information, pls refer to the chapter 5.2 XRandR of enclosed file.

0 Kudos

11,435 Views
hyobokahn
Contributor II

Hello Joan.

Thanks for your reply.

Frankly speaking, I know the way to use XRandR, but when I use x11 backend, the Qt application have window border on the top.

But, I do not want border. I want full screen with my own Qt application without any X11 window border.

may I know I can I remove it?

0 Kudos

11,435 Views
grigoritimonen
Contributor II

I have this problem too. Transform option doesn't seem to work on IMX8M Mini.

0 Kudos

11,436 Views
joanxie
NXP TechSupport
NXP TechSupport

for rotation, one also can use IPU, I send the sample code to you for reference

GitHub - jerome-pouiller/mxc-video-rotate 

0 Kudos

11,437 Views
erhany
Contributor II

Can you able to solve the issue? I am using imx6ul and have the same issue. transform parameter is not working with the default bsp. 

0 Kudos

7,660 Views
darsh_dev
Contributor V

Its worked, With below changes /etc/xdg/weston/weston.ini

[output]
name=DSI-1
mode=720x1280@60
transform=rotate-180

0 Kudos