embeded/ARM2015. 4. 9. 10:00

전반적으로...

SD card에 JFFS를 쓰는건 듣도 보도 못한 이야기다! 라는 느낌 -_-

아.. 앙대 ㅠㅠ


일부 SD 메모리에는 자체적으로 wear leveling을 지원한다고 하니..

그런걸 쓰고 noatime 정도가 한계이려나?


[링크 : http://lists.rocketboards.org/pipermail/rfi/2014-October/002413.html]

[링크 : http://superuser.com/questions/248078/choice-of-filesystem-for-gnu-linux-on-an-sd-card]

[링크 : http://wiki.openmoko.org/wiki/FileSystem_microSD_cards]

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

Jazelle 관련 검색  (0) 2015.04.28
ltib 패키지 요구사항  (0) 2015.04.13
sd 메모리 카드 블럭 사이즈  (0) 2015.04.09
mkfs.jffs2 압축없이 사용하기  (0) 2015.04.08
bogoMIPS가 너무 낮게 나오네  (0) 2015.03.03
Posted by 구차니
embeded/ARM2015. 4. 9. 09:16


sd 메모리를 jffs2용으로 포맷하려다 보니

eraseblock 이라는 옵션에 넣을 블럭 사이즈를 검색..

일단 샌디스크에서는 512 바이트 인 것 같은데..


예제로 나온게 128KB(0x2000) 인 것 봐서는 Flash에서만 가능한듯 하다.



[링크 : http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Components/General/SDSpec.pdf]

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

ltib 패키지 요구사항  (0) 2015.04.13
jffs2 on sd card  (0) 2015.04.09
mkfs.jffs2 압축없이 사용하기  (0) 2015.04.08
bogoMIPS가 너무 낮게 나오네  (0) 2015.03.03
arm7l softfp hardfp fmac  (0) 2015.02.28
Posted by 구차니
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 구차니