diff options
Diffstat (limited to 'meta-agl/recipes-graphics')
13 files changed, 57 insertions, 109 deletions
diff --git a/meta-agl/recipes-graphics/wayland/Readme.weston-ini-conf b/meta-agl/recipes-graphics/wayland/Readme.weston-ini-conf index eb30a9a96..bbd5a80c4 100644 --- a/meta-agl/recipes-graphics/wayland/Readme.weston-ini-conf +++ b/meta-agl/recipes-graphics/wayland/Readme.weston-ini-conf @@ -1,36 +1,34 @@ -#Generate a weston.ini file: +##Generate a weston.ini file: -To generate the weston.ini file: +To modify any of the default sections (core, shell, ivi-shell), add a +do_configure() function to your bbappend: ''' -[core] -backend=drm-backend.so -shell=desktop-shell.so -''' - -Just create a Variable Flag: +do_configure() { + echo repaint-window=34 >> ${WORKDIR}/core.cfg + echo transition-duration=300 >> ${WORKDIR}/ivishell.cfg + echo cursor-theme=default >> ${WORKDIR}/ivishell.cfg +} ''' -WESTONCORE[backend]??="drm-backend.so" -WESTONCORE[shell]??="desktop-shell.so" -''' - -And add it to the Variable Flag WESTONSECTION, with the name of the section: +or: ''' -WESTONSECTION[WESTONCORE]?="core" +do_configure() { + sed -i -e 's/drm-backend/fbdev-backend/' ${WORKDIR}/core.cfg +} ''' -#You can custumize weston.ini by create a weston-ini-conf.bbappend: +To change the display from the default assumption of an HDMI-1-A connected +screen that needs to be rotated 270 degrees: ''' -WESTONCORE[repaint-window] ??= "34" +SRC_URI_remove = "file://hdmi-a-1-270.cfg" +SRC_URI += "file://hdmi-a-1-90.cfg" ''' -This will generate weston.ini file: - +To add new sections just list them in SRC_URI: ''' -[core] -backend=drm-backend.so -shell=ivi-shell.so -repaint-window=34 +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +SRC_URI += "file://dsi.cfg" ''' diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf.bb b/meta-agl/recipes-graphics/wayland/weston-ini-conf.bb index 0edc05d24..9ba49bf2e 100644 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf.bb +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf.bb @@ -2,57 +2,26 @@ SUMMARY = "Startup script and systemd unit file for the Weston Wayland composito LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" -S = "${WORKDIR}" - -require weston-ini-conf/screen.inc - -DEFAULT_SCREEN[transform]?="270" -DEFAULT_SCREEN[name]?="HDMI-A-1" - -WESTONCORE[shell]??="desktop-shell.so" -WESTONCORE[backend]??="drm-backend.so" -WESTONCORE[require-input]??="false" - -WESTONSHELL[locking]="true" -# hide panel -WESTONSHELL[panel-location]="none" +SRC_URI = "file://core.cfg \ + file://ivishell.cfg \ + file://shell.cfg \ + file://hdmi-a-1-270.cfg \ + " +S = "${WORKDIR}" -WESTONOUTPUT1[agl_screen]??="DEFAULT_SCREEN" - -WESTONSECTION[WESTONCORE]?="core" -WESTONSECTION[WESTONSHELL]?="shell" -WESTONSECTION[WESTONOUTPUT1]?="output" - -python do_generate_weston_init() { - with open(d.getVar('WORKDIR', True)+"/weston.ini" ,'w') as weston_ini: - dicoSection=d.getVarFlags('WESTONSECTION') - keysSection=list(dicoSection.keys()) - keysSection.sort() - for section in keysSection: - weston_ini.writelines( "["+dicoSection[section]+"]\n") - dicoSectionValues=d.getVarFlags(section) - keysSectionValues=list(dicoSectionValues.keys()) - keysSectionValues.sort() - for sectionValue in keysSectionValues: - if (dicoSection[section] == "output" and sectionValue == "agl_screen"): - screen=dicoSectionValues[sectionValue] - dicoScreenConfig=d.getVarFlags(screen) - keysScreenConfig=list(dicoScreenConfig.keys()) - keysScreenConfig.sort() - for screenConfig in keysScreenConfig: - weston_ini.writelines( screenConfig+"="+dicoScreenConfig[screenConfig]+"\n") - else: - weston_ini.writelines( str(sectionValue)+"="+str(dicoSectionValues[sectionValue])+"\n") +PACKAGE_ARCH = "${MACHINE_ARCH}" - weston_ini.writelines( "\n") +do_compile() { + # Put all of our cfg files together. + rm -f ${WORKDIR}/weston.ini + for F in ${WORKDIR}/*.cfg; do + cat $F >> ${WORKDIR}/weston.ini + echo >> ${WORKDIR}/weston.ini + done + sed -i -e '$ d' ${WORKDIR}/weston.ini } -#ar_src = d.getVarFlag('ARCHIVER_MODE', 'src', True) - -addtask do_generate_weston_init after do_compile before do_install -do_generate_weston_init[vardeps] = "DEFAULT_SCREEN WESTONCORE WESTONSHELL WESTONOUTPUT1 WESTONSECTION" - do_install_append() { WESTON_INI_CONFIG=${sysconfdir}/xdg/weston install -d ${D}${WESTON_INI_CONFIG} diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/core.cfg b/meta-agl/recipes-graphics/wayland/weston-ini-conf/core.cfg new file mode 100644 index 000000000..a0ec1e181 --- /dev/null +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf/core.cfg @@ -0,0 +1,4 @@ +[core] +shell=ivi-shell.so +backend=drm-backend.so +require-input=false diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-270.cfg b/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-270.cfg new file mode 100644 index 000000000..dffc2b6dd --- /dev/null +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-270.cfg @@ -0,0 +1,6 @@ +# A display is connected to HDMI-A-1 and needs to be rotated 270 degrees +# to have a proper orientation of the homescreen. For example the various sizes +# of the GeChic display or the Dell display. +[output] +name=HDMI-A-1 +transform=270 diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-90.cfg b/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-90.cfg new file mode 100644 index 000000000..88a692a1b --- /dev/null +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf/hdmi-a-1-90.cfg @@ -0,0 +1,6 @@ +# A display is connected to HDMI-A-1 and needs to be rotated 90 degrees +# to have a proper orientation of the homescreen. For example, the 'eGalax' +# display used in some instances. +[output] +name=HDMI-A-1 +transform=90 diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/ivishell.cfg b/meta-agl/recipes-graphics/wayland/weston-ini-conf/ivishell.cfg new file mode 100644 index 000000000..1c4304cdd --- /dev/null +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf/ivishell.cfg @@ -0,0 +1,3 @@ +[ivi-shell] +ivi-input-module=ivi-input-controller.so +ivi-module=ivi-controller.so diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen.inc deleted file mode 100644 index e91e90212..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen.inc +++ /dev/null @@ -1,5 +0,0 @@ -require screen_dell.inc -require screen_qemu.inc -require screen_GeChic.inc -require screen_DSI.inc -require screen_eGalax.inc diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_DSI.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_DSI.inc deleted file mode 100644 index e0b39b3a3..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_DSI.inc +++ /dev/null @@ -1,4 +0,0 @@ -SCREEN_DSI[name] ?= "DSI-1" -SCREEN_DSI[transform] ?= "270" - -do_generate_weston_init[vardeps] += "SCREEN_DSI" diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_GeChic.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_GeChic.inc deleted file mode 100644 index 846e0592e..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_GeChic.inc +++ /dev/null @@ -1,6 +0,0 @@ -SCREEN_GECHIC[name] ?= "HDMI-A-1" -SCREEN_GECHIC[transform] ?= "270" -# for 1080p on GeChic 1502i: -SCREEN_GECHIC[mode] = "173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync" - -do_generate_weston_init[vardeps] += "SCREEN_GECHIC" diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_dell.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_dell.inc deleted file mode 100644 index 9d4119120..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_dell.inc +++ /dev/null @@ -1,4 +0,0 @@ -SCREEN_DELL[name]?="HDMI-A-1" -SCREEN_DELL[transform]?="180" - -do_generate_weston_init[vardeps] += "SCREEN_DELL" diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_eGalax.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_eGalax.inc deleted file mode 100644 index ecbba19e6..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_eGalax.inc +++ /dev/null @@ -1,4 +0,0 @@ -SCREEN_eGalax[name] ?= "HDMI-A-1" -SCREEN_eGalax[transform] ?= "90" - -do_generate_weston_init[vardeps] += "SCREEN_eGalax" diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_qemu.inc b/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_qemu.inc deleted file mode 100644 index c7f3abeba..000000000 --- a/meta-agl/recipes-graphics/wayland/weston-ini-conf/screen_qemu.inc +++ /dev/null @@ -1,18 +0,0 @@ -SCREEN_QEMU[name]?="Virtual-1" -#mode=1920x1080 -#mode=1600x1200 -#mode=1680x1050 -#mode=1400x1050 -SCREEN_QEMU[mode]?="1600x900" -#mode=1280x1024 -#mode=1440x900 -#mode=1280x960 -#mode=1360x768 -#mode=1280x800 -#mode=1280x768 -#mode=1280x720 -#mode=800x600 -#mode=848x480 -#mode=640x480 - -do_generate_weston_init[vardeps] += "SCREEN_QEMU" diff --git a/meta-agl/recipes-graphics/wayland/weston-ini-conf/shell.cfg b/meta-agl/recipes-graphics/wayland/weston-ini-conf/shell.cfg new file mode 100644 index 000000000..056770427 --- /dev/null +++ b/meta-agl/recipes-graphics/wayland/weston-ini-conf/shell.cfg @@ -0,0 +1,3 @@ +[shell] +locking=true +panel-location=none |