summaryrefslogtreecommitdiffstats
path: root/recipes-graphics/wayland
diff options
context:
space:
mode:
authorTom Hochstein <tom.hochstein@nxp.com>2023-05-18 05:26:35 -0700
committerTom Hochstein <tom.hochstein@nxp.com>2023-05-18 05:26:35 -0700
commit47f0410be104d69c779f9e697b86eac9eb366a12 (patch)
tree4eb8db09b63ac753a78ef53092dc967feb49adfa /recipes-graphics/wayland
parent011aa5617d287aa83fff549494a63c4baad0c171 (diff)
downloadmeta-freescale-47f0410be104d69c779f9e697b86eac9eb366a12.tar.gz
weston-init: Rework weston.ini configuration
The main recipe has a different mechanism for customizing weston.ini. Rework our mechanism to follow. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Diffstat (limited to 'recipes-graphics/wayland')
-rw-r--r--recipes-graphics/wayland/weston-init.bbappend98
-rw-r--r--recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini10
2 files changed, 53 insertions, 55 deletions
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
index a742bb86..fa088b6f 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -8,64 +8,68 @@ REQUIRED_DISTRO_FEATURES:remove = "${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"
8 8
9SRC_URI:append:mx6sl-nxp-bsp = " file://weston.config" 9SRC_URI:append:mx6sl-nxp-bsp = " file://weston.config"
10 10
11# To customize weston.ini, start by setting the desired assignment in weston.ini, 11PACKAGECONFIG ??= " \
12# commented in. For example: 12 no-idle-timeout \
13# xwayland=true 13 rdp \
14# Then add the assignment to INI_COMMENT_ASSIGNMENTS. 14 ${PACKAGECONFIG_GBM_FORMAT} \
15# 15 ${PACKAGECONFIG_REPAINT_WINDOW} \
16# commented out. For example: 16 ${PACKAGECONFIG_SIZE} \
17# #xwayland=true 17 ${PACKAGECONFIG_USE_G2D} \
18# Then add the assignment to INI_UNCOMMENT_ASSIGNMENTS.
19INI_COMMENT_ASSIGNMENTS:append:imx-mainline-bsp = " \
20 xwayland=true \
21" 18"
22 19
23INI_UNCOMMENT_ASSIGNMENTS:append:mx8-nxp-bsp = " \ 20PACKAGECONFIG_GBM_FORMAT ?= ""
24 repaint-window=16 \ 21PACKAGECONFIG_GBM_FORMAT:mx8mq-nxp-bsp ?= "gbm-format"
25"
26INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq-nxp-bsp = " \
27 gbm-format=argb8888 \
28 \\[shell\\] \
29 size=1920x1080 \
30"
31 22
32# FIXME: The 8QM and 8QXP SoCs have better performance without G2D so don't enable it 23GBM_FORMAT_VALUE:mx8mq-nxp-bsp = "argb8888"
33# Ideally, this should be seamless and Vivante ought to handle it internally and take the fastest
34# rendering code.
35INI_UNCOMMENT_USE_G2D ?= ""
36INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
37INI_UNCOMMENT_USE_G2D:mx8qm-nxp-bsp ?= ""
38INI_UNCOMMENT_USE_G2D:mx8qxp-nxp-bsp ?= ""
39INI_UNCOMMENT_USE_G2D:mx8dx-nxp-bsp ?= ""
40INI_UNCOMMENT_ASSIGNMENTS:append = " \
41 ${INI_UNCOMMENT_USE_G2D} \
42"
43 24
44comment() { 25PACKAGECONFIG_REPAINT_WINDOW ?= ""
45 if ! grep -q "^#$1" $2 && ! grep -q "^$1" $2; then 26PACKAGECONFIG_REPAINT_WINDOW:mx8-nxp-bsp ?= "repaint-window"
46 bbwarn "Commented setting '#$1' not found in file $2" 27PACKAGECONFIG_REPAINT_WINDOW:mx9-nxp-bsp ?= "repaint-window"
47 fi
48 sed -i -e 's,^'"$1"',#'"$1"',g' $2
49}
50 28
51uncomment() { 29PACKAGECONFIG_SIZE ?= ""
52 if ! grep -q "^#$1" $2 && ! grep -q "^$1" $2; then 30PACKAGECONFIG_SIZE:mx8mq-nxp-bsp ?= "size"
53 bbwarn "Commented setting '#$1' not found in file $2" 31
54 fi 32SIZE_VALUE:mx8mq-nxp-bsp = "1920x1080"
55 sed -i -e 's,^#'"$1"','"$1"',g' $2 33
56} 34PACKAGECONFIG_USE_G2D ?= ""
35PACKAGECONFIG_USE_G2D:imxgpu2d ?= "use-g2d"
36PACKAGECONFIG_USE_G2D:mx8qm-nxp-bsp ?= ""
37PACKAGECONFIG_USE_G2D:mx8qxp-nxp-bsp ?= ""
38PACKAGECONFIG_USE_G2D:mx8dx-nxp-bsp ?= ""
39
40PACKAGECONFIG[gbm-format] = ",,"
41PACKAGECONFIG[rdp] = ",,"
42PACKAGECONFIG[repaint-window] = ",,"
43PACKAGECONFIG[size] = ",,"
44PACKAGECONFIG[use-g2d] = ",,"
57 45
58do_install:append() { 46do_install:append() {
59 if [ -f "${WORKDIR}/weston.config" ]; then 47 if [ -f "${WORKDIR}/weston.config" ]; then
60 install -Dm0755 ${WORKDIR}/weston.config ${D}${sysconfdir}/default/weston 48 install -Dm0755 ${WORKDIR}/weston.config ${D}${sysconfdir}/default/weston
61 fi 49 fi
62 50
63 for assignment in ${INI_COMMENT_ASSIGNMENTS}; do 51 if [ "${@bb.utils.contains('PACKAGECONFIG', 'gbm-format', 'yes', 'no', d)}" = "yes" ]; then
64 comment "$assignment" ${D}${sysconfdir}/xdg/weston/weston.ini 52 sed -i -e "/^\[core\]/a gbm-format=${GBM_FORMAT_VALUE}" ${D}${sysconfdir}/xdg/weston/weston.ini
65 done 53 fi
54
55 if [ "${@bb.utils.contains('PACKAGECONFIG', 'rdp', 'yes', 'no', d)}" = "yes" ]; then
56 sed -i -e "s|^command=${bindir}/weston .*|& --rdp-tls-cert=${sysconfdir}/freerdp/keys/server.crt --rdp-tls-key=${sysconfdir}/freerdp/keys/server.key|" ${D}${sysconfdir}/xdg/weston/weston.ini
57 sed -i -e "/^\[core\]/a modules=screen-share.so" ${D}${sysconfdir}/xdg/weston/weston.ini
58 fi
59
60 if [ "${@bb.utils.contains('PACKAGECONFIG', 'repaint-window', 'yes', 'no', d)}" = "yes" ]; then
61 sed -i -e "/^\[core\]/a repaint-window=16" ${D}${sysconfdir}/xdg/weston/weston.ini
62 fi
63
64 if [ "${@bb.utils.contains('PACKAGECONFIG', 'size', 'yes', 'no', d)}" = "yes" ]; then
65 sed -i -e "/^\[shell\]/a size=${SIZE_VALUE}" ${D}${sysconfdir}/xdg/weston/weston.ini
66 fi
67
68 if [ "${@bb.utils.contains('PACKAGECONFIG', 'use-g2d', 'yes', 'no', d)}" = "yes" ]; then
69 sed -i -e "/^\[core\]/a use-g2d=1" ${D}${sysconfdir}/xdg/weston/weston.ini
70 else
71 sed -i -e "/^\[core\]/a #use-g2d=1" ${D}${sysconfdir}/xdg/weston/weston.ini
72 fi
66 73
67 for assignment in ${INI_UNCOMMENT_ASSIGNMENTS}; do
68 uncomment "$assignment" ${D}${sysconfdir}/xdg/weston/weston.ini
69 done
70 sed -i -e 's,@bindir@,${bindir},g' ${D}${sysconfdir}/xdg/weston/weston.ini 74 sed -i -e 's,@bindir@,${bindir},g' ${D}${sysconfdir}/xdg/weston/weston.ini
71} 75}
diff --git a/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini b/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
index 3e298973..63c26415 100644
--- a/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
+++ b/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
@@ -1,13 +1,7 @@
1[core] 1[core]
2#gbm-format=argb8888
3idle-time=0
4#use-g2d=1
5#repaint-window=16
6#enable-overlay-view=1 2#enable-overlay-view=1
7modules=screen-share.so
8 3
9#[shell] 4[shell]
10#size=1920x1080
11 5
12[libinput] 6[libinput]
13touchscreen_calibrator=true 7touchscreen_calibrator=true
@@ -27,4 +21,4 @@ touchscreen_calibrator=true
27#transform=rotate-90 21#transform=rotate-90
28 22
29[screen-share] 23[screen-share]
30command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize --rdp-tls-cert=/etc/freerdp/keys/server.crt --rdp-tls-key=/etc/freerdp/keys/server.key 24command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize