#!/bin/sh

source /usr/bin/jshn.sh

FACTORY_INFO_PATH=/tmp/factory_info_partition
FACTORY_INFO_FILE=$FACTORY_INFO_PATH/factory_info
FACTORY_INFO_JSON_FILE=$FACTORY_INFO_PATH/factory_info_json

FWGETENV=/sbin/fw_printenv
FWSETENV=/sbin/fw_setenv

bootenv_get_value() {
  CURRENT_BOOTVER=`$FWGETENV $1 2>/dev/null | sed "s/\$1=//g"`
}

echo "Setting up factory info ..."

if [ ! -d /barix/info ]; then
  mkdir /barix/info
fi

if [ ! -f /barix/info/VERSION ]; then
  QIBA_VERSION=`cat /etc/qiba-version |tail -c 15`
  echo ${QIBA_VERSION} > /barix/info/VERSION
fi

if [ ! -f /barix/info/DATE ]; then
  BUILD_DATE=`cat /etc/qiba-version |tail -c 15`
  echo ${BUILD_DATE} > /barix/info/DATE
fi

bootenv_get_value ver
if [ -f "/barix/info/BOOTVERSION" ]; then
  BOOTVER=$(cat /barix/info/BOOTVERSION 2>/dev/null)
else
  BOOTVER=""
fi
if [  "$CURRENT_BOOTVER" != "$BOOTVER" ]; then
  echo ${CURRENT_BOOTVER} > /barix/info/BOOTVERSION
fi

mkdir -p /tmp/factory_info_partition

qiba-spi-get-info > $FACTORY_INFO_JSON_FILE
HW_INFO=`cat $FACTORY_INFO_JSON_FILE`

json_load "$HW_INFO"
json_select HW_DEVICE

json_get_var LEGACY_HW_TYPE "Legacy_HW_Type"
json_get_var LEGACY_IPAM_TYPE "Legacy_IPAM_Type"

echo "uLEGACYDEVICETYPE=$LEGACY_HW_TYPE" > "$FACTORY_INFO_FILE"
echo "uIPAMTYPE=$LEGACY_IPAM_TYPE" >> "$FACTORY_INFO_FILE"

echo "Factory info setup done"

exit 0
