blob: f1f664927ecb08c5005a6a286fc47d9b419cd73b [file] [log] [blame]
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +02001#!/system/bin/sh
Ravit Dennis59e450e2014-02-02 09:35:18 +02002# Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +02003#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions are
6# met:
7# * Redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer.
9# * Redistributions in binary form must reproduce the above
10# copyright notice, this list of conditions and the following
11# disclaimer in the documentation and/or other materials provided
12# with the distribution.
13# * Neither the name of The Linux Foundation nor the names of its
14# contributors may be used to endorse or promote products derived
15# from this software without specific prior written permission.
16#
17# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29#
30
Lior Barenboim3cca90d2014-06-09 14:32:39 +030031clean_copy_dir=/system/etc/usf
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020032dir0=/data/usf
33h_dir=$dir0/hovering
34g_dir=$dir0/gesture
Ravit Dennisdc86e4b2013-09-15 09:19:52 +030035sg_dir=$dir0/sync_gesture
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020036t_dir=$dir0/tester
37e_dir=$dir0/epos
38p2p_dir=$dir0/p2p
39prox_dir=$dir0/proximity
Ravit Dennis74eaef72013-12-10 10:30:36 +020040pairing_dir=$dir0/pairing
Ravit Dennisdd59b652014-05-27 15:03:04 +030041sw_calib_dir=$dir0/sw_calib
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020042ucm_dir=$dir0/ucm
Baruch Eruchimovitch3e468ed2013-11-04 10:30:56 +020043mixer_dir=/persist/usf/mixer
Ravit Dennis59e450e2014-02-02 09:35:18 +020044epos_dir=/persist/usf/epos
Lior Barenboimb4389822014-07-02 15:56:51 +030045p_dir=/persist/usf/pen_pairing
46sc_dir=/persist/usf/sw_calib
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020047
48trigger_file=$dir0/form_factor.cfg
49
50if [ ! -e $trigger_file ]; then
51 # Configurations select upon the current platform
Baruch Eruchimovitch8afb9c22013-02-06 15:44:44 +020052 platform=`cat /sys/devices/soc0/hw_platform`
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020053 type=""
54
55 case $platform in
56 "Liquid")
57 type="liquid"
58 ;;
59 "Fluid")
60 type="fluid"
61 ;;
62 "MTP")
63 type="mtp"
64 ;;
Baruch Eruchimovitch4f827e42013-07-23 13:22:18 +030065 "Dragon")
66 type="dragon"
67 ;;
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020068 esac
69
Lior Barenboim4d67d7f2014-12-15 18:03:07 +020070 cp -r $clean_copy_dir/* $dir0
Lior Barenboim3cca90d2014-06-09 14:32:39 +030071
Lior Barenboimc557ab52014-11-20 17:45:40 +020072 # The USF based calculators have system permissions
73 chown -R system $dir0
74
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020075 ln -s $dir0/form_factor_"$type".cfg $dir0/form_factor.cfg
76 ln -s $t_dir/cfg_"$type" $t_dir/cfg
77 ln -s $e_dir/cfg_"$type" $e_dir/cfg
78 ln -s $h_dir/cfg_"$type" $h_dir/cfg
79 ln -s $p2p_dir/cfg_"$type" $p2p_dir/cfg
80 ln -s $g_dir/cfg_"$type" $g_dir/cfg
Ravit Dennisdc86e4b2013-09-15 09:19:52 +030081 ln -s $sg_dir/cfg_"$type" $sg_dir/cfg
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020082 ln -s $prox_dir/cfg_"$type" $prox_dir/cfg
Ravit Dennis74eaef72013-12-10 10:30:36 +020083 ln -s $pairing_dir/cfg_"$type" $pairing_dir/cfg
Ravit Dennisdd59b652014-05-27 15:03:04 +030084 ln -s $sw_calib_dir/cfg_"$type" $sw_calib_dir/cfg
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020085
86 ln -s $e_dir/cfg/usf_epos_"$type".cfg $e_dir/usf_epos.cfg
87 ln -s $t_dir/cfg/usf_tester_epos_"$type".cfg $t_dir/usf_tester.cfg
88 ln -s $h_dir/cfg/usf_hovering_"$type".cfg $h_dir/usf_hovering.cfg
89 ln -s $p2p_dir/cfg/usf_p2p_"$type".cfg $p2p_dir/usf_p2p.cfg
90 ln -s $g_dir/cfg/usf_gesture_"$type".cfg $g_dir/usf_gesture.cfg
Ravit Dennisdc86e4b2013-09-15 09:19:52 +030091 ln -s $sg_dir/cfg/usf_sync_gesture_"$type".cfg $sg_dir/usf_sync_gesture.cfg
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020092 ln -s $prox_dir/cfg/usf_proximity_"$type".cfg $prox_dir/usf_proximity.cfg
Ravit Dennis74eaef72013-12-10 10:30:36 +020093 ln -s $pairing_dir/cfg/usf_pairing_"$type".cfg $pairing_dir/usf_pairing.cfg
Ravit Dennisdd59b652014-05-27 15:03:04 +030094 ln -s $sw_calib_dir/cfg/usf_sw_calib_"$type".cfg $sw_calib_dir/usf_sw_calib.cfg
Lior Barenboimb4389822014-07-02 15:56:51 +030095 ln -s $sw_calib_dir/cfg/usf_sw_calib_tester_"$type".cfg $sw_calib_dir/usf_sw_calib_tester.cfg
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +020096
Ravit Dennis59e450e2014-02-02 09:35:18 +020097 ln -s $e_dir/cfg/service_settings_"$type".xml $e_dir/service_settings.xml
98
Baruch Eruchimovitch3e468ed2013-11-04 10:30:56 +020099 ln -s $mixer_dir/mixer_paths_"$type".xml $mixer_dir/mixer_paths.xml
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +0200100
Lior Barenboimb4389822014-07-02 15:56:51 +0300101 ln -s $epos_dir/ref1/product_calib_"$type"_ref1.dat $epos_dir/product_calib_ref1.dat
Lior Barenboim08b61042014-08-07 13:57:12 +0300102 ln -s $epos_dir/ref2/product_calib_"$type"_ref2.dat $epos_dir/product_calib_ref2.dat
Lior Barenboimb4389822014-07-02 15:56:51 +0300103 ln -s $epos_dir/ref3/product_calib_"$type"_ref3.dat $epos_dir/product_calib_ref3.dat
104 ln -s $epos_dir/ref1/unit_calib_"$type"_ref1.dat $epos_dir/unit_calib_ref1.dat
Lior Barenboim08b61042014-08-07 13:57:12 +0300105 ln -s $epos_dir/ref2/unit_calib_"$type"_ref2.dat $epos_dir/unit_calib_ref2.dat
Lior Barenboimb4389822014-07-02 15:56:51 +0300106 ln -s $epos_dir/ref3/unit_calib_"$type"_ref3.dat $epos_dir/unit_calib_ref3.dat
107
108 ln -s $sc_dir/sw_calib_"$type".dat $sc_dir/sw_calib.dat
Baruch Eruchimovitch499ef322013-01-11 15:01:00 +0200109fi
110
111chown system /dev/usf1
Ravit Dennis59e450e2014-02-02 09:35:18 +0200112
113# Set enabled properties for daemon
114setprop ro.qc.sdk.us.digitalpen 1