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; +