embeded/raspberry pi2015. 4. 9. 08:12

크게 어려운 건 없고..(?)

kernel 에서 jffs2를 지원하고

(cat /proc/filesystem 으로 확인)


mkfs.jffs2를 통해 생성

단, 몇가지 옵션을 주지 않으면 생성이 되지 않는 것으로 보인다.



+ flash 메모리에서나 쓸수 있지 sd는 못쓰는 듯?


[링크 : http://www.stlinux.com/howto/Flash/booting-example]

[링크 : https://forum.openwrt.org/viewtopic.php?id=52133] 라즈베리 파이에 JFFS2 하기

Posted by 구차니
embeded/ARM2015. 4. 8. 17:06

mkfs.jffs2 옵션에 -x를 주면 압축을 안하는 듯?

jffs2를 압축하면 실시간으로 계속 압축 / 해제 하니까 저사양 cpu에서는 무리가 올테니..

나중에 한번 부팅속도 라던가 벤치마크 해보거나

벤치마크 결과를 찾아봐야겠다.


       -m, --compression-mode=MODE

              Set  the  default compression mode. The default mode is priority

              which tries the compressors in a predefinied order  and  chooses

              the  first successful one. The alternatives are: none (mkfs will

              not compress) and size (mkfs will try all compressor and chooses

              the one which have the smallest result).


       -x, --disable-compressor=NAME

              Disable  a  compressor.  Use  -L to see the list of the avaiable

              compressors and their default states.


       -X, --enable-compressor=NAME

              Enable a compressor. Use -L to see  the  list  of  the  avaiable

              compressors and their default states.


       -y, --compressor-priority=PRIORITY:NAME

              Set  the priority of a compressor. Use -L to see the list of the

              avaiable compressors and their default priority.  Priorities are

              used by priority compression mode.


       -L, --list-compressors

              Show the list of the avaiable compressors and their states.


       -t, --test-compression

              Call  decompress  after  every compress - and compare the result

              with the original data -, and some other check.

[링크 : http://manpages.ubuntu.com/manpages/saucy/man1/mkfs.jffs2.1.html] 


[링크 : http://en.wikipedia.org/wiki/JFFS2]


[링크 : http://elinux.org/images/9/9a/CELFJamboree29-FlashFS-Toshiba.pdf] jffs2 / yaffs / ubifs 벤치마크

[링크 : http://www.denx.de/wiki/view/DULG/RootFileSystemOnAJFFS2FileSystem] 만드는 법

'embeded > ARM' 카테고리의 다른 글

jffs2 on sd card  (0) 2015.04.09
sd 메모리 카드 블럭 사이즈  (0) 2015.04.09
bogoMIPS가 너무 낮게 나오네  (0) 2015.03.03
arm7l softfp hardfp fmac  (0) 2015.02.28
밑바닥에서 rootfs 생성하기  (0) 2015.02.26
Posted by 구차니
embeded/raspberry pi2015. 4. 7. 22:58

댓글제보로 인해서 이제 다시 확인!


Last login: Thu Jan  1 00:01:16 1970

ubuntu@localhost:~$ sudo snappy update

date

Traceback (most recent call last):

  File "/usr/bin/snappy", line 25, in <module>

    status = Main().__main__()

  File "/usr/lib/python3/dist-packages/snappy/main.py", line 195, in __main__

    return callback(args)

  File "/usr/lib/python3/dist-packages/snappy/main.py", line 511, in _do_update

    for pkg in ClickDataSource().upgradable_apps]

  File "/usr/lib/python3/dist-packages/snappy/click.py", line 180, in upgradable_apps

    all_updates_list = repo.get_upgradable()

  File "/usr/lib/python3/dist-packages/click/repository.py", line 183, in get_upgradable

    headers={"content-type": "application/json"})

  File "/usr/lib/python3/dist-packages/click/network.py", line 70, in http_request

    curl.perform()

pycurl.error: (60, 'server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none')


에러를 다시보니 로그인 시간이 1970년! epoch로 되어있고

아마도.. openelec 처럼 기본적으로 타임서버를 통해 받아오지 않아 시간이 제대로 설정되지 않았던 것으로 보인다.

라즈베리 파이는 RTC가 없어서 매번 네트워크나 수동으로 잡아줘야 하는데..

snappy 버전에서는 일부러 빼놓은건가?


date 명령을 통해서 시간을 업데이트 하고

$ sudo date 0407225715

Tue Apr  7 22:57:00 UTC 2015

[링크 : https://www.linux.co.kr/home/lecture/index.php?cateNo=&secNo=&theNo=&leccode=244]


업데이트 하니 오홍!! 된다!

$ sudo snappy update

ubuntu-core    124 MB     [==========================================]    OK 

Applying [|]


헐.. 리부팅을 시키네 ㅋㅋ

Applying: Done

Reboot to use the new ubuntu-core. 



2015/03/01 - [개소리 왈왈/라즈베리 파이 2] - 라즈베리 파이 2 ubuntu / snappy




Posted by 구차니
embeded2015. 4. 2. 22:04

PowerQUICC는 Freescale 사의 Power 아키텍쳐기반의 마이크로 프로세서이다.



[링크 : http://en.wikipedia.org/wiki/PowerQUICC

[링크 : http://en.wikipedia.org/wiki/QUICC]

[링크 : http://en.wikipedia.org/wiki/Power_Architecture]


[링크 : http://www.freescale.com/webapp/sps/site/homepage.jsp?code=POWERQUICC_HOME] 프리스케일

[링크 : http://cache.freescale.com/files/32bit/doc/fact_sheet/QP1022FS.pdfPowerQUICC P1022 프로세서

'embeded' 카테고리의 다른 글

microchip PIC  (0) 2015.09.08
9$ computer C.H.I.P?  (0) 2015.05.27
S29AL016J 플래시 메모리 BYTE/WORD MODE  (0) 2014.12.23
mmu와 rtos  (0) 2014.12.10
ltib / rc.conf  (0) 2014.11.24
Posted by 구차니
embeded/raspberry pi2015. 3. 31. 18:05

어떤 수광부를 사야할지 몰라서

IrDA USB 동글부터 해서 이것저것 검색중..


[링크 : http://www.rasplay.org/?p=3518] 확장모듈

[링크 : http://www.rasplay.org/?p=997] 리모컨 DIY

[링크 : http://cafe.naver.com/pipc/1125]

[링크 : http://xbmc-korea.com/xe/tips/100217]

[링크 : http://xbmc-korea.com/xe/tips/98703]

Posted by 구차니
embeded/raspberry pi2015. 3. 24. 22:26

심심하니 일단 armv7-a / cortex-a7 용으로 설정하고 궈궈

qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/devices/linux-rasp-pi2-g++$ cat qmake.conf 

#

# qmake configuration for Broadcom's Raspberry PI

# http://wiki.qt-project.org/Devices/RaspberryPi


include(../common/linux_device_pre.conf)


QT_QPA_DEFAULT_PLATFORM = wayland


QMAKE_LFLAGS           += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib


QMAKE_LIBDIR_OPENGL_ES2 = $$[QT_SYSROOT]/opt/vc/lib

QMAKE_LIBDIR_EGL        = $$QMAKE_LIBDIR_OPENGL_ES2


QMAKE_INCDIR_EGL        = $$[QT_SYSROOT]/opt/vc/include \

                          $$[QT_SYSROOT]/opt/vc/include/interface/vcos/pthreads \

                          $$[QT_SYSROOT]/opt/vc/include/interface/vmcs_host/linux

QMAKE_INCDIR_OPENGL_ES2 = $${QMAKE_INCDIR_EGL}


QMAKE_LIBS_EGL          = -lEGL -lGLESv2


contains(DISTRO, squeeze) {

    #Debian Squeeze: Legacy everything

    QMAKE_LIBS_OPENGL_ES2   = -lGLESv2 -lEGL

    QT_QPA_DEFAULT_PLATFORM = eglfs

} else:contains(DISTRO, arch) {

    #On principle: no wizardry required

} else {

    #This is not strictly necessary

    DISTRO_OPTS += deb-multi-arch

    DISTRO_OPTS += hard-float

}


QMAKE_CFLAGS           += \

                          -marm \

                          -mfpu=neon \

                          -mtune=cortex-a7 \

                          -march=armv7-a \

                          -mabi=aapcs-linux


QMAKE_CXXFLAGS          = $$QMAKE_CFLAGS


EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_pi.cpp

EGLFS_PLATFORM_HOOKS_LIBS = -lbcm_host


include(../common/linux_arm_device_post.conf)


load(qt_config) 


$ ./configure -opensource -confirm-license -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=arm-linux-gnueabihf-

   Configure summary


Building on:   linux-g++ (i386, CPU features:)

Building for:  devices/linux-rasp-pi2-g++ (arm, CPU features: neon)

Platform notes:


            - Also available for Linux: linux-kcc linux-icc linux-cxx

        

Build options:

  Configuration .......... accessibility audio-backend c++11 clock-gettime clock-monotonic compile_examples concurrent cross_compile evdev eventfd freetype full-config getaddrinfo getifaddrs iconv inotify ipv6ifname large-config largefile linuxfb medium-config minimal-config mremap nis no-harfbuzz no-pkg-config pcre png posix_fallocate precompile_header qpa qpa reduce_exports release rpath shared small-config zlib 

  Build parts ............ libs examples

  Mode ................... release

  Using C++11 ............ yes

  Using PCH .............. yes

  Target compiler supports:

    iWMMXt/Neon .......... no/auto


Qt modules and options:

  Qt D-Bus ............... no

  Qt Concurrent .......... yes

  Qt GUI ................. yes

  Qt Widgets ............. yes

  Large File ............. yes

  QML debugging .......... yes

  Use system proxies ..... no


Support enabled for:

  Accessibility .......... yes

  ALSA ................... no

  CUPS ................... no

  Evdev .................. yes

  FontConfig ............. no

  FreeType ............... yes (bundled copy)

  Glib ................... no

  GTK theme .............. no

  HarfBuzz ............... no

  Iconv .................. yes

  ICU .................... no

  Image formats: 

    GIF .................. yes (plugin, using bundled copy)

    JPEG ................. yes (plugin, using bundled copy)

    PNG .................. yes (in QtGui, using bundled copy)

  journald ............... no

  mtdev .................. no

  Networking: 

    getaddrinfo .......... yes

    getifaddrs ........... yes

    IPv6 ifname .......... yes

    OpenSSL .............. no

  NIS .................... yes

  OpenGL / OpenVG: 

    EGL .................. no

    OpenGL ............... no

    OpenVG ............... no

  PCRE ................... yes (bundled copy)

  pkg-config ............. no 

  PulseAudio ............. no

  QPA backends: 

    DirectFB ............. no

    EGLFS ................ no

    KMS .................. no

    LinuxFB .............. yes

    XCB .................. no

  Session management ..... yes

  SQL drivers: 

    DB2 .................. no

    InterBase ............ no

    MySQL ................ no

    OCI .................. no

    ODBC ................. no

    PostgreSQL ........... no

    SQLite 2 ............. no

    SQLite ............... yes (plugin, using bundled copy)

    TDS .................. no

  udev ................... no

  xkbcommon .............. no

  zlib ................... yes (bundled copy)


NOTE: Qt is using double for qreal on this system. This is binary incompatible against Qt 5.1.

Configure with '-qreal float' to create a build that is binary compatible with 5.1.

Info: creating super cache file /home/minimonk/src/qt-everywhere-opensource-src-5.3.2/.qmake.super


Qt is now configured for building. Just run 'make'.

Once everything is built, you must run 'make install'.

Qt will be installed into /usr/local/Qt-5.3.2


Prior to reconfiguration, make sure you remove any leftovers from

the previous build. 



또 얼마나 걸리려나 ㅋㅋ

오전 10:17 2015-03-25


make clean 하고 컴파일 해서 그런가

14:03:18

4시간 걸림 ㅋ

Posted by 구차니
embeded/raspberry pi2015. 3. 24. 17:19

일단은.. Qt 5.3 에서 기본적으로 설정되어있는 내용으로

Raspberry pi는 1, ARM11 용으로 설정되어 있다.


qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/devices/linux-rasp-pi-g++$ cat qmake.conf

#

# qmake configuration for Broadcom's Raspberry PI

# http://wiki.qt-project.org/Devices/RaspberryPi


include(../common/linux_device_pre.conf)


QT_QPA_DEFAULT_PLATFORM = wayland


QMAKE_LFLAGS           += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib


QMAKE_LIBDIR_OPENGL_ES2 = $$[QT_SYSROOT]/opt/vc/lib

QMAKE_LIBDIR_EGL        = $$QMAKE_LIBDIR_OPENGL_ES2


QMAKE_INCDIR_EGL        = $$[QT_SYSROOT]/opt/vc/include \

                          $$[QT_SYSROOT]/opt/vc/include/interface/vcos/pthreads \

                          $$[QT_SYSROOT]/opt/vc/include/interface/vmcs_host/linux

QMAKE_INCDIR_OPENGL_ES2 = $${QMAKE_INCDIR_EGL}


QMAKE_LIBS_EGL          = -lEGL -lGLESv2


contains(DISTRO, squeeze) {

    #Debian Squeeze: Legacy everything

    QMAKE_LIBS_OPENGL_ES2   = -lGLESv2 -lEGL

    QT_QPA_DEFAULT_PLATFORM = eglfs

} else:contains(DISTRO, arch) {

    #On principle: no wizardry required

} else {

    #This is not strictly necessary

    DISTRO_OPTS += deb-multi-arch

    DISTRO_OPTS += hard-float

}


QMAKE_CFLAGS           += \

                          -marm \

                          -mfpu=vfp \

                          -mtune=arm1176jzf-s \

                          -march=armv6zk \

                          -mabi=aapcs-linux


QMAKE_CXXFLAGS          = $$QMAKE_CFLAGS


EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_pi.cpp

EGLFS_PLATFORM_HOOKS_LIBS = -lbcm_host


include(../common/linux_arm_device_post.conf)


load(qt_config) 


$ ./configure -opensource -confirm-license -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=arm-linux-gnueabihf-


   Configure summary


Building on:   linux-g++ (i386, CPU features:)

Building for:  devices/linux-rasp-pi-g++ (arm, CPU features:)

Platform notes:


            - Also available for Linux: linux-kcc linux-icc linux-cxx


Build options:

  Configuration .......... accessibility audio-backend c++11 clock-gettime clock-monotonic compile_examples concurrent cross_compile evdev eventfd freetype full-config getaddrinfo getifaddrs iconv inotify ipv6ifname large-config largefile linuxfb medium-config minimal-config mremap nis no-harfbuzz no-pkg-config pcre png posix_fallocate precompile_header qpa qpa reduce_exports release rpath shared small-config zlib

  Build parts ............ libs examples

  Mode ................... release

  Using C++11 ............ yes

  Using PCH .............. yes

  Target compiler supports:

    iWMMXt/Neon .......... no/auto


Qt modules and options:

  Qt D-Bus ............... no

  Qt Concurrent .......... yes

  Qt GUI ................. yes

  Qt Widgets ............. yes

  Large File ............. yes

  QML debugging .......... yes

  Use system proxies ..... no


Support enabled for:

  Accessibility .......... yes

  ALSA ................... no

  CUPS ................... no

  Evdev .................. yes

  FontConfig ............. no

  FreeType ............... yes (bundled copy)

  Glib ................... no

  GTK theme .............. no

  HarfBuzz ............... no

  Iconv .................. yes

  ICU .................... no

  Image formats:

    GIF .................. yes (plugin, using bundled copy)

    JPEG ................. yes (plugin, using bundled copy)

    PNG .................. yes (in QtGui, using bundled copy)

  journald ............... no

  mtdev .................. no

  Networking:

    getaddrinfo .......... yes

    getifaddrs ........... yes

    IPv6 ifname .......... yes

    OpenSSL .............. no

  NIS .................... yes

  OpenGL / OpenVG:

    EGL .................. no

    OpenGL ............... no

    OpenVG ............... no

  PCRE ................... yes (bundled copy)

  pkg-config ............. no

  PulseAudio ............. no

  QPA backends:

    DirectFB ............. no

    EGLFS ................ no

    KMS .................. no

    LinuxFB .............. yes

    XCB .................. no

  Session management ..... yes

  SQL drivers:

    DB2 .................. no

    InterBase ............ no

    MySQL ................ no

    OCI .................. no

    ODBC ................. no

    PostgreSQL ........... no

    SQLite 2 ............. no

    SQLite ............... yes (plugin, using bundled copy)

    TDS .................. no

  udev ................... no

  xkbcommon .............. no

  zlib ................... yes (bundled copy)


NOTE: Qt is using double for qreal on this system. This is binary incompatible against Qt 5.1.

Configure with '-qreal float' to create a build that is binary compatible with 5.1.

Info: creating super cache file /home/minimonk/src/qt-everywhere-opensource-src-5.3.2/.qmake.super


Qt is now configured for building. Just run 'make'.

Once everything is built, you must run 'make install'.

Qt will be installed into /usr/local/Qt-5.3.2


Prior to reconfiguration, make sure you remove any leftovers from

the previous build. 


커널이 i7에서 3분 걸리던게.. 1시간 20분 걸렸으니

i7에서 30분 넘게 걸리던 qt 컴파일은... 10시간 이려나?! -_-a


+

그냥 걸어놓고 내려놨는데

다시 확인하니 20:54:36 컴파일 완료

거의 3시간 반 정도 걸린듯?

Posted by 구차니
embeded/raspberry pi2015. 3. 24. 08:55

라즈베리 파이 홈페이지에서 보이는 것 이상의 것들이 많이 있다?


[링크 : http://downloads.raspberrypi.org/]

    [링크 : http://qt-project.org/wiki/RaspberryPi_Beginners_guide]

Posted by 구차니
embeded/raspberry pi2015. 3. 23. 22:03

ATOM 330 + ION 보다 동영상 재생 성능이 낫네 ㄷㄷ


라즈베리 파이 2

openELEC

600MHz / NEON


H.264 high profile 1080p 30fps 재생 문제 없음

H.264 high profile 1080p 60fps 프레임 드랍 있음 (kodi/xbmc 환경설정에서 44fps 로 출력됨 / 1600x900 해상도)

Posted by 구차니
embeded/raspberry pi2015. 3. 23. 20:35

심심해서 일단 받아봄

리눅스 커널은 대략 빌드 중이라 늘어난 것일수도 있으니 크게 의미는 없으나 대략 840MB 정도 예상되고

크로스 컴파일러가 무려 945MB ㄷㄷㄷ

rootfs는 11M로 저렴하다 -ㅁ-!


~/rasp$ du -h -d 1

851M    ./linux

945M    ./tools

11M     ./target_fs

1.8G    . 


$ sudo apt-get install libncurses5-dev 

[링크 : http://askubuntu.com/questions/78749/what-provides-curses-headers-named-curses-h]


$ mkdir rasp

$ cd rasp

$ git clone --depth=1 https://github.com/raspberrypi/tools

$ git clone --depth=1 https://github.com/raspberrypi/linux

$ git clone --depth=1 https://github.com/raspberrypi/target_fs

$ export PATH=$PATH:~/rasp/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin

$ cd linux

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2709_defconfig menuconfig

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j 4 

[링크 : http://www.raspberrypi.org/documentation/linux/kernel/building.md]


커널 menuconfig 에서 보니

일단.. BCM2709로 설정되고


NEON은 켜져있도록 되어있다.



+

그나저나.. ATOM 330 / 1.6GHz 로 어느 세월에 컴파일 하지? ㅋㅋㅋ


+

오후 8:40 2015-03-23

오후 10:02 2015-03-23

무려 1시간 20분 만에 컴파일 완료 -_ㅠ


~/rasp/linux$ file vmlinux

vmlinux: ELF 32-bit LSB  executable, ARM, EABI5 version 1 (SYSV), statically linked, BuildID[sha1]=44adda67f6686154f7eb71069c144f84d4ee6c20, not stripped



린필드 i7 으로는 3분만에 컴파일 끝나던데 흑흑
역시 듀얼 코어 + HT ATOM으로는 무리였어 ㅠㅠ


+ 2015.04.09 추가
시작 오후 10:16 2015-04-09
끝 2015. 04. 09. (목) 22:47:18 KST
AMD 4850e / 2.5GHz 듀얼 코어로 30분 걸림 -_ㅠ -j4 인데도 불구하고!!! ㅠㅠ




+ 2015.05.31 추가

2015년 05월 31일 (일) 오후 07시 55분 25초 

2015. 05. 31. (일) 20:05:59 KST

AMD 945 / 3.0GHz 드코어로 10분..  클럭빨로 4850e보다는 줄지만

역시나.. i7이 짱짱이구나 싶은 결과랄까 ㅜㅜ

Posted by 구차니