On Fri, Dec 27, 2013 at 10:22:43PM +0100, Alexandre Belloni wrote: > Hi, > > When using core-image-sato (latest dora), I encountered again an issue > that I once solved by hacking around it. It has the following symptoms: > - touchscreen calibration doesn't start the first time the board is booted
see http://git.openembedded.org/meta-openembedded/commit/?id=98bfe33760acb74b67eba9d58ea7cac8cad6d810 I'll backport it to dora > - matchbox-keyboard doesn't come up when touching the keyboard icon in > the panel > - matchbox-panel is ugly (compare > http://www.ossystems.com.br/images/blog/boards/boundarydevices-nitrogen6x-hdmi-screenshot-fsl-image-gui.jpg > with http://free-electrons.com/~alexandre/matchbox-panel.jpg) > > This time, I decided to investigate that issue a bit more. Here is what > I found: > The cause is the /etc/X11/Xsession script which at some point does: > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > SESSIONFILES=`ls -X $SYSSESSIONDIR` > if [ -n "$SESSIONFILES" ]; then > for SESSIONFILE in $SESSIONFILES; do > # Test if script is executable first before sourcing it > if [ -x "$SYSSESSIONDIR/$SESSIONFILE" ]; then > . $SYSSESSIONDIR/$SESSIONFILE > fi > done > fi > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > > This is not working because ls -X is not sorting the files > alphabetically but by extension: > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > root@cfa10058:~# ls -X -1 /etc/X11/Xsession.d/ > 60xXDefaults > 89xdgautostart > 90xXWindowManager > 30xinput_calibrate.sh > 70settings-daemon.sh > 80matchboxkeyboard.shbg > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > > So, obviously, matchbox is started before calibration and matchbox-keyboard. > Now, why is that happening ? > > Looking at the build directory, one can find Xsession being provided by > two packages ! > xserver-common 1.34-r8 and x11-common 0.1-r47 why ? > The dependancies are: > packagegroup-core-x11 -> x11-common > packagegroup-core-x11 -> xserver-nodm-init -> xserver-common > > Which is what we ask for since > poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb has: > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > # xserver-common, x11-common > VIRTUAL-RUNTIME_xserver_common ?= "x11-common" > > # elsa, xserver-nodm-init > VIRTUAL-RUNTIME_graphical_init_manager ?= "xserver-nodm-init" > > [...] > RDEPENDS_${PN}-utils = "\ > ${VIRTUAL-RUNTIME_xserver_common} \ > ${VIRTUAL-RUNTIME_graphical_init_manager} \ > xauth \ > xhost \ > xset \ > xrandr \ > " > =-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > > What is really happening is that xserver-nodm-init is provided both by > poky/meta/recipes-graphics/x11-common/xserver-nodm-init.bb and > meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb > > layer path priority > ========================================================================== > meta /home/alex/fsl/sources/poky/meta 5 > meta-yocto /home/alex/fsl/sources/poky/meta-yocto 5 > meta-oe /home/alex/fsl/sources/meta-openembedded/meta-oe 6 > > The meta-oe one is selected ! That one can't actually work with the > current > poky/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb recipe > because of the "ls -X" sorting and it doesn't know how to handle shbg > files this will hang trying to use 80matchboxkeyboard.shbg > > So my next step was to remove the meta-oe layer (or simply mask > /meta-openembedded/meta-oe/recipes-graphics/). The final result is > better but touch screen calibration (xtscal instead of > xinput-calibrator) fails with: > XCALIBRATE extension missing: Resource temporarily unavailable > XCALIBRATE extension missing: Resource temporarily unavailable > XCALIBRATE extension missing: Resource temporarily unavailable > > > So, questions: > - How do we solve that cleanly ? > - Why doesn't xserver-common conflicts with x11-common despite > RCONFLICTS_${PN} = "xserver-kdrive-common x11-common" ? > - Shouldn't we stop using xtscal and use xinput-calibrator instead ? > - Should we update the Xsession script from the poky recipes and stop > using x11-common ? > > On my side, what I do is masking > /meta-openembedded/meta-oe/recipes-graphics/ and replacing xtscal by > xinput-calibrator as a dependency of x11-common but I believe we can do > better. > > -- > Alexandre Belloni, Free Electrons > Embedded Linux, Kernel and Android engineering > http://free-electrons.com > > _______________________________________________ > poky mailing list > [email protected] > https://lists.yoctoproject.org/listinfo/poky -- Martin 'JaMa' Jansa jabber: [email protected]
signature.asc
Description: Digital signature
_______________________________________________ meta-freescale mailing list [email protected] https://lists.yoctoproject.org/listinfo/meta-freescale
