#!/bin/sh /etc/rc.common

START=49

boot()
{
    uptime=$(cat /proc/uptime | cut -d'.' -f 1)

    MEMINFO=$(busybox free | grep "Mem:")
	switch_model=$(sbin/mtd fw_printenv 1|grep switch_model|awk -F = '{print $2}')
    set -- $MEMINFO
    TOTAL_MEM=$2
    FREE_MEM=$4

    if [ ! -e /var/isFormal ]; then
        mtd_debug read /dev/mtdblock4 6 1 /var/isFormal > /dev/null
    fi
    isFormal=`cat /var/isFormal`
    
    version=$(cat /etc/version)
    set -- $version
    model=$1
    if [ "$isFormal" = "1" ]; then
        firmware=`echo $2 | cut -d'_' -f 1`
    elif [ "$isFormal" = "2" ]; then
		if [ ! -e /var/new_Fw_label ] ;then
			mtd_debug read /dev/mtdblock4 32 16 /var/new_Fw_label > /dev/null
			firmware=`cat /var/new_Fw_label`
		fi
	else
		firmware=$2
    fi
	if [ "$switch_model" -eq "1" ]; then
	   hardware=2
	else
       hardware=$3
	fi
   
    build_date=$4
    build_time=$5
    revision=$6
    
    SYS_Rate="5"
    MEM_Usage=$(expr $TOTAL_MEM - $FREE_MEM)
    MEM_Usage=$(expr $MEM_Usage \* 100 / $TOTAL_MEM)
    CACHED_MEM_Usage="0"

    json -f /var/status_system_interface set system \
        model=$model hardware="$hardware" firmware="$firmware" revision="$revision" \
        uptime="$uptime" date="$(date | sed -e 's/CST //')"\
        cpuusage="$SYS_Rate" build_date="$build_date" build_time="$build_time"\
        memsize="$TOTAL_MEM" memusage=$MEM_Usage memcached=$CACHED_MEM_Usage
		
	mtd fw_setenv fw_version $firmware
}


