#!/bin/sh
#blctl="/usr/bin/blctl"
blctl="/usr/bin/platform/platform_blctl"

# A.CHEHAB 2011/05/25 CRMS00310244
# M.SULYAN 2011/08/09 CRMS00310244 (after reject)
# J.ZHOU   2011/11/23 PRID261789
# J.ZHOU   2011/12/20 CRMS00352179

# PRID261789 
BL_ID0="2584"
BL_ID1="2539"
BL_ID2="TPS61165"

BL_MAX_I2C=31

BL_CHIP=`CLISettings get CURRENT FAB_HW_BACKLIGHT 2>/dev/null`
BL_MAX=`CLISettings get CURRENT ADMCFG_BACKLIGHT_LEVEL_MAX`

set_level()
{
    case "$BL_CHIP" in
      $BL_IDO | $BL_ID1 | '' ) BL_MAX=$BL_MAX_I2C
                               ;;
      $BL_ID2 | *)             ;;
    esac
}
# PRID261789 END

usage()
{
        echo "Backlight Utility: manage backlight brightness";
        echo "  Usage: backlight [level [<value>] | help]"
        echo "             level value is in [0..$BL_MAX]"
        echo "  ex:"
        echo "         backlight level      (get backlight value)"
        echo "         backlight level 15   (set backlight value to 15)"
}
exit_ko()
{
        echo "backlight KO"
        exit 1
}

exit_ok()
{
        echo "backlight OK"
        exit 0
}

# PRID261789
set_level
# PRID261789 END

[ -x $blctl ] || { echo "Cannot run $blctl"; exit_ko;}
[ $# -lt 3 ] || {  usage ; exit_ko;}

########################
# no parameter
########################
if [ $# -eq 0 ]
then
#       [ $2 == "1" ] || [ $2 == "0" ] || { echo "Allowed Values are 1/0"; exit_ko;}
#       inpower=`expr 1 - $2`
#       $blctl power $inpower
#       [ $inpower == "1" ] && $blctl brightness 1
        $blctl level
        exit_ok
########################
# at least one parameter
########################
# param1 is level
elif [ "$1" == "level" ]
then
        if [ $# -eq 1 ]
        then
               $blctl level
        else
               level=`expr $2`
               [ $level -ge 0 -a $level -le $BL_MAX ] || { echo "Allowed Values are [0..$BL_MAX]"; exit_ko;}
#              $blctl power 1
               $blctl brightness $2
        fi
        exit_ok
# param1 is help
elif [ "$1" == "help" ]
then
        usage
        exit_ok
else
# param1 is unknowm
        usage
        exit_ko
fi
