On Tue, Jan 21, 2014 at 11:14:16AM -0600, Chase Maupin wrote:
> * Add a package that will run ts_calibrate if needed.  This
>   will allow separating this logic from the matrix init script
>   since it is not always needed and allow others to use it for
>   their own systems without requiring matrix.
> 
> Signed-off-by: Chase Maupin <[email protected]>
> ---
>  .../recipes-graphics/tslib/ts-calibrate-init/init  |   50 
> ++++++++++++++++++++
>  .../tslib/ts-calibrate-init_1.0.bb                 |   29 +++++++++++
>  2 files changed, 79 insertions(+), 0 deletions(-)
>  create mode 100644 
> meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init/init
>  create mode 100644 
> meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init_1.0.bb
> 
> diff --git a/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init/init 
> b/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init/init
> new file mode 100644
> index 0000000..26ea581
> --- /dev/null
> +++ b/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init/init
> @@ -0,0 +1,50 @@
> +#!/bin/sh
> +# Copyright (C) {2013} Texas Instruments Incorporated - http://www.ti.com/
> +#
> +# This program is free software; you can redistribute it and/or
> +# modify it under the terms of the GNU General Public License as
> +# published by the Free Software Foundation version 2.
> +#
> +# This program is distributed "as is" WITHOUT ANY WARRANTY of any
> +# kind, whether express or implied; without even the implied warranty
> +# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +
> +tsfile=/etc/pointercal
> +
> +# First let's check if we even see a touchscreen device node.  If not
> +# then bail out.
> +if [ ! -e /dev/input/touchscreen0 ]
> +then
> +    exit
> +fi
> +
> +# Check if the SD card is mounted and the first partition is
> +# vfat.  If so let's write the pointercal file there so that if
> +# someone messes up calibration they can just delete the file from
> +# any system and reboot the board.
> +
> +#TODO how can we find the SD card and not eMMC?  can we look for a "boot"
> +# LABEL?
> +mount | grep /media/mmcblk0p1 | grep vfat > /dev/null 2>&1
> +if [ "$?" = "0" ]
> +then
> +    tsfile=/media/mmcblk0p1/pointercal
> +    export TSLIB_CALIBFILE=$tsfile
> +fi
> +
> +if [ ! -f $tsfile ] ; then
> +    echo -n "Calibrating touchscreen (first time only)"
> +    ts_calibrate
> +    echo "."
> +
> +    # If we create a pointercal file and it was not in /etc/pointercal
> +    # let's copy it there as well if it does not already exist.  This is so
> +    # that running other applications that look for /etc/pointercal and
> +    # without TSLIB_CALIBFILE set will still get the right calibration.
> +    # TODO: can we just globally export TSLIB_CALIBFILE?
> +    if [ ! -f /etc/pointercal -a -f $tsfile ]
> +    then
> +        cp $tsfile /etc/pointercal
> +    fi
> +fi
> diff --git 
> a/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init_1.0.bb 
> b/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init_1.0.bb
> new file mode 100644
> index 0000000..7fdbc26
> --- /dev/null
> +++ b/meta-arago-extras/recipes-graphics/tslib/ts-calibrate-init_1.0.bb
> @@ -0,0 +1,29 @@
> +# This recipe installs an init script that can be used to invoke ts_calibrate
> +# on systems that need this done during the boot sequence.

Should it RDEPENDS on tslib/ts_calibrate binary that is used in the initscript?


> +DESCRIPTION = "TS calibration init script"
> +
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = 
> "file://init;beginline=2;endline=11;md5=4b2e3b15f01cf63d2cb7988afdcc6c60"
> +
> +PR = "r0"
> +
> +S = "${WORKDIR}"
> +
> +INITSCRIPT_NAME = "ts-calibrate"
> +
> +# Start this init script early enough for other processes to be started later
> +# in the init sequence
> +INITSCRIPT_PARAMS = "start 96 2 3 4 5 ."
> +
> +PACKAGE_ARCH = "${MACHINE_ARCH}"
> +
> +inherit update-rc.d
> +
> +SRC_URI = "file://init"
> +
> +do_install(){
> +     # Install the init script
> +     # TODO: replace init script with systemd files
> +     install -d ${D}${sysconfdir}/init.d
> +     install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ts-calibrate
> +}
> -- 
> 1.7.0.4
> 
> _______________________________________________
> meta-arago mailing list
> [email protected]
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
_______________________________________________
meta-arago mailing list
[email protected]
http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago

Reply via email to