diff --git a/recipes-bsp/fng-install/files/mx6/fng-install.sh b/recipes-bsp/fng-install/files/mx6/fng-install.sh
index f26f1586bca0b9b1b80e458fbeb4fb753b0014f9..e1eded007462359bb9348002f858fabaa94a6641 100644
--- a/recipes-bsp/fng-install/files/mx6/fng-install.sh
+++ b/recipes-bsp/fng-install/files/mx6/fng-install.sh
@@ -1285,8 +1285,20 @@ load_and_untar()
         milestone "Writing rootfs (${FILE})"
         echo
 
+		# The tar of fng-system is not yet able to detect compression method
+		if [ -z "${ROOTFS/*.tar/}" ]; then
+			COMPRESSION=""
+		elif [ -z "${ROOTFS/*.tar.gz/}" ]; then
+			COMPRESSION="z"
+		elif [ -z "${ROOTFS/*.tar.bz2/}" ]; then
+			COMPRESSION="j"
+		else
+            error_msg "Unknown filetype of rootfs ${ROOTFS} failed, giving up."
+            return 1
+		fi
+
         set +e
-		( curl ${CURL_PREFIX}/${FILE} | tar -C ${TARGET} -xz ) 2>&1 | tee /dev/fd/5
+		( curl ${CURL_PREFIX}/${FILE} | tar -C ${TARGET} -x"$COMPRESSION"  ) 2>&1 | tee /dev/fd/5
 
         ret=$?
         set -e
@@ -1325,7 +1337,7 @@ load_and_write_files()
 	fi
 	mount /dev/mmcblk0p2 ${TMP_MOUNT_POINT}/boot
 
-        load_and_untar ${ROOTFS} ${TMP_MOUNT_POINT}
+	load_and_untar ${ROOTFS} ${TMP_MOUNT_POINT}
 	for dtb in ${TMP_MOUNT_POINT}/boot/*.dtb ; do
 		case $(basename $dtb) in
 			*${PLATFORM}.dtb)
@@ -1337,8 +1349,8 @@ load_and_write_files()
 		exit 1
 	fi
 	cp "${DTB}" ${TMP_MOUNT_POINT}/boot/devicetree.dtb
-        cat ${TMP_MOUNT_POINT}/boot/uImage* ${TMP_MOUNT_POINT}/boot/devicetree.dtb > ${TMP_MOUNT_POINT}/boot/linuximage
-	
+	cat ${TMP_MOUNT_POINT}/boot/uImage* ${TMP_MOUNT_POINT}/boot/devicetree.dtb > ${TMP_MOUNT_POINT}/boot/linuximage
+
 	umount ${TMP_MOUNT_POINT}/boot
 	umount ${TMP_MOUNT_POINT}