diff --git a/meta-centriq2400-rep/conf/machine/centriq2400-rep.conf b/meta-centriq2400-rep/conf/machine/centriq2400-rep.conf
index 9ad9714..3bbff9a 100644
--- a/meta-centriq2400-rep/conf/machine/centriq2400-rep.conf
+++ b/meta-centriq2400-rep/conf/machine/centriq2400-rep.conf
@@ -13,4 +13,5 @@
 
 IMAGE_INSTALL_append = " ir38163-workaround \
                          centriq-2400rep-console-client \
+                         socupdate \
 "
diff --git a/meta-centriq2400-rep/recipes-phosphor/socupdate/files/socupdate.sh b/meta-centriq2400-rep/recipes-phosphor/socupdate/files/socupdate.sh
new file mode 100644
index 0000000..67d7063
--- /dev/null
+++ b/meta-centriq2400-rep/recipes-phosphor/socupdate/files/socupdate.sh
@@ -0,0 +1,129 @@
+#!/bin/sh -e
+# SOC update tool, need two parameter(soc update file name and TFTP ip)
+
+if [ ! -n "$1" -o ! -n "$2" ] ;then
+    echo "Please enter SOC-ImageName and TFTP-IP."
+    echo "Format: socupdate.sh FileName IP"
+    echo "Example: socupdate.sh 0ACJAXXX.ROM 192.168.1.1"
+    exit
+fi
+
+echo "SOC update start."
+
+echo "Check BMC status."
+checkbmc='gpioutil -p Q4'
+if $checkbmc = "1"; then
+    echo "BMC is ready."
+else
+    echo "BMC isn't ready."
+    exit
+fi
+
+echo "Check SOC image does it exist."
+cd /tmp/
+FILEEXIST=0
+if [ -f "/tmp/$1" ]; then
+    GETFILE=`du -k $1 | awk '{print $1}'`
+    if [ "$GETFILE" -eq "65536" ]; then
+        FILEEXIST=1
+        echo "SOC image is exist."
+    else
+        FILEEXIST=0
+    fi
+fi
+
+if [ $FILEEXIST -eq 0 ]; then
+    echo "Get SOC image from TFTP server."
+    echo "Please wait a few minutes."
+    tftp -g -r $1 $2 &
+    sleep 2
+    LENGTH=0
+    ERRCOUNT=0
+    while true
+    do
+        echo -ne "\r["
+        usleep 500000
+        while [ $LENGTH -le 30 ]
+        do
+                usleep 500000
+                echo -n ">"
+                LENGTH=$(($LENGTH+1))
+                if [ -f "/tmp/$1" ]; then
+                    GETFILE=`du -k $1 | awk '{print $1}'`
+                    if [ $GETFILE -eq 65536 ]; then
+                        echo -en "\r"
+                        echo -en "--- Image download completed --- \n"
+                        usleep 1000000
+                        break 2
+                    fi
+                else
+                    ERRCOUNT=$(($ERRCOUNT+1))
+                    if [ $ERRCOUNT -le 10 ]; then
+                        echo -en "\r"
+                        echo -en "SOC-ImageName or TFTP-IP is ERROR. \n"
+                        usleep 500000
+                        exit
+                    fi
+                fi
+        done
+        echo -n "]"
+        LENGTH=0
+        usleep 500000
+        echo -en "\r                                "
+    done
+fi
+sleep 3
+
+echo "Switch the host SPI bus to BMC."
+cmd='gpioutil -p C7 -v 1'
+if $cmd 1>/dev/null 2>&1; then
+    echo "Switch completed."
+else
+    echo "Switch failed."
+fi
+echo "Load the ASpeed SMC driver"
+echo 1e630000.flash-controller > /sys/bus/platform/drivers/aspeed-smc/bind
+sleep 2
+chassisstate=$(obmcutil chassisstate | awk -F. '{print $NF}')
+echo "---Current Chassisstate $chassisstate---"
+if [ "$chassisstate" == 'On' ];
+then
+    echo "---Chassis on turning it off---"
+    obmcutil chassisoff
+    sleep 10
+fi
+
+echo "Flashcp to update SOC."
+echo "Please wait a few minutes."
+flashcp -v /tmp/$1 /dev/mtd6
+sleep 3
+
+echo "Switch the host SPI bus to HOST."
+cmd1='gpioutil -p C7 -v 0'
+if $cmd1 1>/dev/null 2>&1; then
+    echo "Switch completed."
+else
+    echo "Switch failed."
+fi
+echo "unLoad the ASpeed SMC driver"
+echo 1e630000.flash-controller > /sys/bus/platform/drivers/aspeed-smc/unbind
+echo -ne "SOC update steps is complete.\n"
+if [ "$chassisstate" == 'On' ];
+then
+	echo "5 sec later will be power-on."
+	echo "If wantn't power-on, please CTRL + C leave script."
+	WAITSEC=5
+	while [ $WAITSEC -ge 0 ]
+	do
+        echo -n "Countdown seconds:$WAITSEC"
+        sleep 1
+        echo -en "\r"
+        WAITSEC=$(($WAITSEC-1))
+        if [ $WAITSEC -eq 0 ]; then
+            echo -en "\r"
+            echo -en "--- Power-on ---       \n"
+            obmcutil chassison
+            break 1
+        fi
+	done
+fi
diff --git a/meta-centriq2400-rep/recipes-phosphor/socupdate/socupdate.bb b/meta-centriq2400-rep/recipes-phosphor/socupdate/socupdate.bb
new file mode 100644
index 0000000..45f69d3
--- /dev/null
+++ b/meta-centriq2400-rep/recipes-phosphor/socupdate/socupdate.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Qualcomm SOC update"
+DESCRIPTION = ""
+HOMEPAGE = ""
+PR = "r1"
+
+inherit obmc-phosphor-license
+
+SRC_URI += "file://socupdate.sh"
+
+do_install() {
+        install -d ${D}${bindir}
+        install -m 0755 ${WORKDIR}/socupdate.sh ${D}${bindir}/socupdate.sh
+}
