diff --git a/README.md b/README.md
index 41c9050..b79e1ec 100755
--- a/README.md
+++ b/README.md
@@ -165,13 +165,12 @@
 ## [파티션]
 ---------------------------
 
-		start		size		desc
-        ----------  ----------  ------------------
-		 00-MB		 64-MB		reserved area
-		 64-MB		 64-MB		partition#0, FAT32 : BOOT0
-		128-MB		 64-MB		partition#1, FAT32 : BOOT1
-		192-MB		128-MB		partition#2, ext4  : APP
-		320-MB		all		    partition#3, ext4  : DATA
+		  start		 size		desc
+        ----------   ----------  ------------------
+		  00-MB		  64-MB		reserved area
+		  64-MB		 192-MB		partition#0, ext4  : BOOT0
+		 256-MB	    2048-MB		partition#1, ext4  : APP
+		2304-MB		    all	    partition#2, ext4  : DATA
 
         ------------------------------------------
 		00-MB		 64-MB		reserved area
diff --git a/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.falinux/mk-mmc-part.sh b/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.falinux/mk-mmc-part.sh
index 9fa56d4..88c1d17 100755
--- a/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.falinux/mk-mmc-part.sh
+++ b/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.falinux/mk-mmc-part.sh
@@ -5,34 +5,35 @@ BDEV=/dev/mmcblk0
 PART1=p1
 PART2=p2
 PART3=p3
-PART4=p4
 
 umount ${BDEV}${PART1}
 umount ${BDEV}${PART2}
 umount ${BDEV}${PART3}
-umount ${BDEV}${PART4}
 
 echo "==== make partitions ==============================="
-fdisk -S1 -H1 ${BDEV} << EOF
+##    start        stop        desc
+##  ----------   ----------  ------------------
+##    00-MB       64-MB     reserved area
+##    64-MB      192-MB     partition#0, ext4  : BOOT0
+##   256-MB     2048-MB     partition#1, ext4  : APP
+##  2304-MB         all     partition#2, ext4  : DATA
+##
+fdisk ${BDEV} << EOF
 o
 n
 p
 1
-131072
-196607
+2048
+8191
 n
 p
 2
-196608
-262143
+8192
+73727
 n
 p
 3
-262144
-524287
-n
-p
-524288
+73728
 
 t
 1
@@ -46,8 +47,7 @@ EOF
 ## format partitions
 echo "==== format partitions ============================="
 
-mkfs.fat ${BDEV}${PART1} -n BOOT0
-mkfs.fat ${BDEV}${PART2} -n BOOT1
-mkfs.ext4 -F ${BDEV}${PART3} -L APP
-mkfs.ext4 -F ${BDEV}${PART4} -L DATA
+mkfs.ext4 -F ${BDEV}${PART1} -L BOOT0
+mkfs.ext4 -F ${BDEV}${PART2} -L APP
+mkfs.ext4 -F ${BDEV}${PART3} -L DATA
 
diff --git a/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.prime_oven/.buildroot_version b/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.prime_oven/.buildroot_version
index f4bcf42..c9e866e 100644
--- a/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.prime_oven/.buildroot_version
+++ b/buildroot/buildroot-2016.08.1/board/falinux/prime_oven/rootfs_overlay/root/.prime_oven/.buildroot_version
@@ -1 +1 @@
-2017. 02. 23. (목) 20:51:04 KST
+2017. 03. 06. (월) 14:01:13 KST
diff --git a/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotate.patch b/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotate.patch
deleted file mode 100644
index 260769a..0000000
--- a/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotate.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-diff --git a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp
---- a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp	2017-03-06 15:43:16.205457343 +0900
-+++ b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp	2017-03-06 13:38:20.857076470 +0900
-@@ -280,7 +280,7 @@
- }
- 
- QLinuxFbScreen::QLinuxFbScreen(const QStringList &args)
--    : mArgs(args), mFbFd(-1), mTtyFd(-1), mBlitter(0)
-+    : mArgs(args), mFbFd(-1), mTtyFd(-1), mBlitter(0), mRotation(0)
- {
-     mMmap.data = 0;
- }
-@@ -306,6 +306,7 @@
-     QRegularExpression mmSizeRx(QLatin1String("mmsize=(\\d+)x(\\d+)"));
-     QRegularExpression sizeRx(QLatin1String("size=(\\d+)x(\\d+)"));
-     QRegularExpression offsetRx(QLatin1String("offset=(\\d+)x(\\d+)"));
-+    QRegularExpression rotationRx(QLatin1String("rotation=(0|90|180|270)"));
- 
-     QString fbDevice, ttyDevice;
-     QSize userMmSize;
-@@ -327,6 +328,8 @@
-             ttyDevice = match.captured(1);
-         else if (arg.contains(fbRx, &match))
-             fbDevice = match.captured(1);
-+        else if (arg.contains(rotationRx, &match))
-+            mRotation = match.captured(1).toInt();
-     }
- 
-     if (fbDevice.isEmpty()) {
-@@ -365,9 +368,17 @@
-     mDepth = determineDepth(vinfo);
-     mBytesPerLine = finfo.line_length;
-     QRect geometry = determineGeometry(vinfo, userGeometry);
-+    QRect originalGeometry = geometry;
-+    if( mRotation == 90 || mRotation == 270 )
-+    {
-+        int tmp = geometry.width();
-+        geometry.setWidth(geometry.height());
-+        geometry.setHeight(tmp);
-+    }
-+
-     mGeometry = QRect(QPoint(0, 0), geometry.size());
-     mFormat = determineFormat(vinfo, mDepth);
--    mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, geometry.size());
-+    mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, originalGeometry.size());
- 
-     // mmap the framebuffer
-     mMmap.size = finfo.smem_len;
-@@ -377,11 +388,11 @@
-         return false;
-     }
- 
--    mMmap.offset = geometry.y() * mBytesPerLine + geometry.x() * mDepth / 8;
-+    mMmap.offset = originalGeometry.y() * mBytesPerLine + originalGeometry.x() * mDepth / 8;
-     mMmap.data = data + mMmap.offset;
- 
-     QFbScreen::initializeCompositor();
--    mFbScreenImage = QImage(mMmap.data, geometry.width(), geometry.height(), mBytesPerLine, mFormat);
-+    mFbScreenImage = QImage(mMmap.data, originalGeometry.width(), originalGeometry.height(), mBytesPerLine, mFormat);
- 
-     mCursor = new QFbCursor(this);
- 
-@@ -409,8 +420,27 @@
-     mBlitter->setCompositionMode(QPainter::CompositionMode_Source);
- 
-     for (int i = 0; i < rects.size(); ++i)
-+    {
-+        if( mRotation == 90 || mRotation == 270 )
-+        {
-+            mBlitter->translate(mGeometry.height()/2, mGeometry.width()/2);
-+        }
-+        else if( mRotation == 180 )
-+        {
-+            mBlitter->translate(mGeometry.width()/2, mGeometry.height()/2);
-+        }
-+
-+        if( mRotation != 0 )
-+        {
-+            mBlitter->rotate(mRotation);
-+            mBlitter->translate(-mGeometry.width()/2, -mGeometry.height()/2);
-+        }
-+
-         mBlitter->drawImage(rects[i], *mScreenImage, rects[i]);
- 
-+        mBlitter->resetTransform();
-+    }
-+
-     return touched;
- }
- 
-diff --git a/src/plugins/platforms/linuxfb/qlinuxfbscreen.h b/src/plugins/platforms/linuxfb/qlinuxfbscreen.h
---- a/src/plugins/platforms/linuxfb/qlinuxfbscreen.h      2016-05-26 00:46:17.000000000 +0900
-+++ b/src/plugins/platforms/linuxfb/qlinuxfbscreen.h      2017-03-06 13:38:20.857076470 +0900
-@@ -58,6 +58,7 @@
-     QStringList mArgs;
-     int mFbFd;
-     int mTtyFd;
-+    int mRotation;
-
-     QImage mFbScreenImage;
-     int mBytesPerLine;
-
diff --git a/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotation.patch b/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotation.patch
new file mode 100644
index 0000000..260769a
--- /dev/null
+++ b/buildroot/buildroot-2016.08.1/package/qt5/qt5base/0008-linuxfb-rotation.patch
@@ -0,0 +1,102 @@
+diff --git a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp
+--- a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp	2017-03-06 15:43:16.205457343 +0900
++++ b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp	2017-03-06 13:38:20.857076470 +0900
+@@ -280,7 +280,7 @@
+ }
+ 
+ QLinuxFbScreen::QLinuxFbScreen(const QStringList &args)
+-    : mArgs(args), mFbFd(-1), mTtyFd(-1), mBlitter(0)
++    : mArgs(args), mFbFd(-1), mTtyFd(-1), mBlitter(0), mRotation(0)
+ {
+     mMmap.data = 0;
+ }
+@@ -306,6 +306,7 @@
+     QRegularExpression mmSizeRx(QLatin1String("mmsize=(\\d+)x(\\d+)"));
+     QRegularExpression sizeRx(QLatin1String("size=(\\d+)x(\\d+)"));
+     QRegularExpression offsetRx(QLatin1String("offset=(\\d+)x(\\d+)"));
++    QRegularExpression rotationRx(QLatin1String("rotation=(0|90|180|270)"));
+ 
+     QString fbDevice, ttyDevice;
+     QSize userMmSize;
+@@ -327,6 +328,8 @@
+             ttyDevice = match.captured(1);
+         else if (arg.contains(fbRx, &match))
+             fbDevice = match.captured(1);
++        else if (arg.contains(rotationRx, &match))
++            mRotation = match.captured(1).toInt();
+     }
+ 
+     if (fbDevice.isEmpty()) {
+@@ -365,9 +368,17 @@
+     mDepth = determineDepth(vinfo);
+     mBytesPerLine = finfo.line_length;
+     QRect geometry = determineGeometry(vinfo, userGeometry);
++    QRect originalGeometry = geometry;
++    if( mRotation == 90 || mRotation == 270 )
++    {
++        int tmp = geometry.width();
++        geometry.setWidth(geometry.height());
++        geometry.setHeight(tmp);
++    }
++
+     mGeometry = QRect(QPoint(0, 0), geometry.size());
+     mFormat = determineFormat(vinfo, mDepth);
+-    mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, geometry.size());
++    mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, originalGeometry.size());
+ 
+     // mmap the framebuffer
+     mMmap.size = finfo.smem_len;
+@@ -377,11 +388,11 @@
+         return false;
+     }
+ 
+-    mMmap.offset = geometry.y() * mBytesPerLine + geometry.x() * mDepth / 8;
++    mMmap.offset = originalGeometry.y() * mBytesPerLine + originalGeometry.x() * mDepth / 8;
+     mMmap.data = data + mMmap.offset;
+ 
+     QFbScreen::initializeCompositor();
+-    mFbScreenImage = QImage(mMmap.data, geometry.width(), geometry.height(), mBytesPerLine, mFormat);
++    mFbScreenImage = QImage(mMmap.data, originalGeometry.width(), originalGeometry.height(), mBytesPerLine, mFormat);
+ 
+     mCursor = new QFbCursor(this);
+ 
+@@ -409,8 +420,27 @@
+     mBlitter->setCompositionMode(QPainter::CompositionMode_Source);
+ 
+     for (int i = 0; i < rects.size(); ++i)
++    {
++        if( mRotation == 90 || mRotation == 270 )
++        {
++            mBlitter->translate(mGeometry.height()/2, mGeometry.width()/2);
++        }
++        else if( mRotation == 180 )
++        {
++            mBlitter->translate(mGeometry.width()/2, mGeometry.height()/2);
++        }
++
++        if( mRotation != 0 )
++        {
++            mBlitter->rotate(mRotation);
++            mBlitter->translate(-mGeometry.width()/2, -mGeometry.height()/2);
++        }
++
+         mBlitter->drawImage(rects[i], *mScreenImage, rects[i]);
+ 
++        mBlitter->resetTransform();
++    }
++
+     return touched;
+ }
+ 
+diff --git a/src/plugins/platforms/linuxfb/qlinuxfbscreen.h b/src/plugins/platforms/linuxfb/qlinuxfbscreen.h
+--- a/src/plugins/platforms/linuxfb/qlinuxfbscreen.h      2016-05-26 00:46:17.000000000 +0900
++++ b/src/plugins/platforms/linuxfb/qlinuxfbscreen.h      2017-03-06 13:38:20.857076470 +0900
+@@ -58,6 +58,7 @@
+     QStringList mArgs;
+     int mFbFd;
+     int mTtyFd;
++    int mRotation;
+
+     QImage mFbScreenImage;
+     int mBytesPerLine;
+