embeded/ARM2015. 2. 2. 17:31

$ tar -xvf u-boot-v2009.08.tar.bz2

$ tar -xvf u-boot-v2009.08-imx_10.12.01.tar.bz2

$ mv patches u-boot-2009.08

$ mv u-boot-2009.08/pathces/patch-uboot.sh ./u-boot-2009.08

$ cd u-boot-2009.08

$ chmod 777 patch-uboot.sh

$ ./patch-uboot.sh


make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi- mx51_bbg_config

make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi- -j8 


u-boot-2009.08/board/freescale$ ls

common     m5329evb     mpc8323erdb  mpc8548cds   mx31ads

m5208evbe  m5373evb     mpc832xemds  mpc8555cds   mx31pdk

m52277evb  m54451evb    mpc8349emds  mpc8560ads   mx35_3stack

m5235evb   m54455evb    mpc8349itx   mpc8568mds   mx50_rdp

m5249evb   m547xevb     mpc8360emds  mpc8569mds   mx51_3stack

m5253demo  m548xevb     mpc8360erdk  mpc8572ds    mx51_bbg

m5253evbe  mpc5121ads   mpc837xemds  mpc8610hpcd  mx53_rd

m5271evb   mpc7448hpc2  mpc837xerdb  mpc8641hpcn  p2020ds

m5272c3    mpc8260ads   mpc8536ds    mx23_evk

m5275evb   mpc8266ads   mpc8540ads   mx25_3stack

m5282evb   mpc8313erdb  mpc8541cds   mx28_evk

m53017evb  mpc8315erdb  mpc8544ds    mx31_3stack 


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

freescale imx515 neon  (0) 2015.02.02
ARM cortex-a8 neon 활성화 체크  (0) 2015.02.02
i.mx515 kernel cross compile  (0) 2015.02.02
i.mx515 SDMA  (0) 2015.02.02
armv7 errata / kernel  (0) 2015.01.28
Posted by 구차니
embeded/ARM2015. 2. 2. 14:53

별거 없네 -_-a

라고 하지만 일단 칩 벤더 패치 먹이는 것 부터가 일단 난관? ㅋㅋㅋ


$ make distclean

$ make -j8 ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- defconfig imx5_defconfig

$ make -j8 ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- 



distclean 하면 .config 까지 날아가서 완전 새로 설정해야 한다.
그리고 help는 해당 아키텍쳐에 대해서만 나오니

$ make help

Cleaning targets:

  clean   - Remove most generated files but keep the config and

                    enough build support to build external modules

  mrproper   - Remove all generated files + config + various backup files

  distclean   - mrproper + remove editor backup and patch files


Configuration targets:

  config   - Update current config utilising a line-oriented program

  nconfig         - Update current config utilising a ncurses menu based program

  menuconfig   - Update current config utilising a menu based program

  xconfig   - Update current config utilising a QT based front-end

  gconfig   - Update current config utilising a GTK based front-end

  oldconfig   - Update current config utilising a provided .config as base

  localmodconfig  - Update current config disabling modules not loaded

  localyesconfig  - Update current config converting local mods to core

  silentoldconfig - Same as oldconfig, but quietly, additionally update deps

  randconfig   - New config with random answer to all options

  defconfig   - New config with default answer to all options

  allmodconfig   - New config selecting modules when possible

  allyesconfig   - New config where all options are accepted with yes

  allnoconfig   - New config where all options are answered with no


Other generic targets:

  all   - Build all targets marked with [*]

* vmlinux   - Build the bare kernel

* modules   - Build all modules

  modules_install - Install all modules to INSTALL_MOD_PATH (default: /)

  firmware_install- Install all firmware to INSTALL_FW_PATH

                    (default: $(INSTALL_MOD_PATH)/lib/firmware)

  dir/            - Build all files in dir and below

  dir/file.[oisS] - Build specified target only

  dir/file.lst    - Build specified mixed source/assembly target only

                    (requires a recent binutils and recent build (System.map))

  dir/file.ko     - Build module including final link

  modules_prepare - Set up for building external modules

  tags/TAGS   - Generate tags file for editors

  cscope   - Generate cscope index

  kernelrelease   - Output the release version string

  kernelversion   - Output the version stored in Makefile

  headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH

                    (default: /home/interm/Downloads/linux/linux-2.6.35.3/usr)


Static analysers

  checkstack      - Generate a list of stack hogs

  namespacecheck  - Name space analysis on compiled kernel

  versioncheck    - Sanity check on version.h usage

  includecheck    - Check for duplicate included header files

  export_report   - List the usages of all exported symbols

  headers_check   - Sanity check on exported headers

  headerdep       - Detect inclusion cycles in headers


Kernel packaging:

  rpm-pkg         - Build both source and binary RPM kernel packages

  binrpm-pkg      - Build only the binary kernel package

  deb-pkg         - Build the kernel as an deb package

  tar-pkg         - Build the kernel as an uncompressed tarball

  targz-pkg       - Build the kernel as a gzip compressed tarball

  tarbz2-pkg      - Build the kernel as a bzip2 compressed tarball


Documentation targets:

 Linux kernel internal documentation in different formats:

  htmldocs        - HTML

  pdfdocs         - PDF

  psdocs          - Postscript

  xmldocs         - XML DocBook

  mandocs         - man pages

  installmandocs  - install man pages generated by mandocs

  cleandocs       - clean all generated DocBook files


Architecture specific targets (x86):

* bzImage      - Compressed kernel image (arch/x86/boot/bzImage)

  install      - Install kernel using

                  (your) ~/bin/installkernel or

                  (distribution) /sbin/installkernel or

                  install to $(INSTALL_PATH) and run lilo

  fdimage      - Create 1.4MB boot floppy image (arch/x86/boot/fdimage)

  fdimage144   - Create 1.4MB boot floppy image (arch/x86/boot/fdimage)

  fdimage288   - Create 2.8MB boot floppy image (arch/x86/boot/fdimage)

  isoimage     - Create a boot CD-ROM image (arch/x86/boot/image.iso)

                  bzdisk/fdimage*/isoimage also accept:

                  FDARGS="..."  arguments for the booted kernel

                  FDINITRD=file initrd for the booted kernel


  i386_defconfig           - Build for i386

  x86_64_defconfig         - Build for x86_64


  make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build

  make V=2   [targets] 2 => give reason for rebuild of target

  make O=dir [targets] Locate all output files in "dir", including .config

  make C=1   [targets] Check all c source with $CHECK (sparse by default)

  make C=2   [targets] Force check of all c source with $CHECK


Execute "make" or "make all" to build all targets marked with [*] 

For further info see the ./README file 


아키텍쳐를 정해주면 해당 아키텍쳐에 대한 설정이 쭈욱 나온다.

imx5_defconfig 외에는 되는게 없네 -_-

$ make help ARCH=arm

Cleaning targets:

  clean  - Remove most generated files but keep the config and

                    enough build support to build external modules

  mrproper  - Remove all generated files + config + various backup files

  distclean  - mrproper + remove editor backup and patch files


Configuration targets:

  config  - Update current config utilising a line-oriented program

  nconfig         - Update current config utilising a ncurses menu based program

  menuconfig  - Update current config utilising a menu based program

  xconfig  - Update current config utilising a QT based front-end

  gconfig  - Update current config utilising a GTK based front-end

  oldconfig  - Update current config utilising a provided .config as base

  localmodconfig  - Update current config disabling modules not loaded

  localyesconfig  - Update current config converting local mods to core

  silentoldconfig - Same as oldconfig, but quietly, additionally update deps

  randconfig  - New config with random answer to all options

  defconfig  - New config with default answer to all options

  allmodconfig  - New config selecting modules when possible

  allyesconfig  - New config where all options are accepted with yes

  allnoconfig  - New config where all options are answered with no


Other generic targets:

  all  - Build all targets marked with [*]

* vmlinux  - Build the bare kernel

* modules  - Build all modules

  modules_install - Install all modules to INSTALL_MOD_PATH (default: /)

  firmware_install- Install all firmware to INSTALL_FW_PATH

                    (default: $(INSTALL_MOD_PATH)/lib/firmware)

  dir/            - Build all files in dir and below

  dir/file.[oisS] - Build specified target only

  dir/file.lst    - Build specified mixed source/assembly target only

                    (requires a recent binutils and recent build (System.map))

  dir/file.ko     - Build module including final link

  modules_prepare - Set up for building external modules

  tags/TAGS  - Generate tags file for editors

  cscope  - Generate cscope index

  kernelrelease  - Output the release version string

  kernelversion  - Output the version stored in Makefile

  headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH

                    (default: /home/interm/Downloads/linux/linux-2.6.35.3/usr)


Static analysers

  checkstack      - Generate a list of stack hogs

  namespacecheck  - Name space analysis on compiled kernel

  versioncheck    - Sanity check on version.h usage

  includecheck    - Check for duplicate included header files

  export_report   - List the usages of all exported symbols

  headers_check   - Sanity check on exported headers

  headerdep       - Detect inclusion cycles in headers


Kernel packaging:

  rpm-pkg         - Build both source and binary RPM kernel packages

  binrpm-pkg      - Build only the binary kernel package

  deb-pkg         - Build the kernel as an deb package

  tar-pkg         - Build the kernel as an uncompressed tarball

  targz-pkg       - Build the kernel as a gzip compressed tarball

  tarbz2-pkg      - Build the kernel as a bzip2 compressed tarball


Documentation targets:

 Linux kernel internal documentation in different formats:

  htmldocs        - HTML

  pdfdocs         - PDF

  psdocs          - Postscript

  xmldocs         - XML DocBook

  mandocs         - man pages

  installmandocs  - install man pages generated by mandocs

  cleandocs       - clean all generated DocBook files


Architecture specific targets (arm):

* zImage        - Compressed kernel image (arch/arm/boot/zImage)

  Image         - Uncompressed kernel image (arch/arm/boot/Image)

* xipImage      - XIP kernel image, if configured (arch/arm/boot/xipImage)

  uImage        - U-Boot wrapped zImage

  bootpImage    - Combined zImage and initial RAM disk

                  (supply initrd image via make variable INITRD=<path>)

  install       - Install uncompressed kernel

  zinstall      - Install compressed kernel

                  Install using (your) ~/bin/installkernel or

                  (distribution) /sbin/installkernel or

                  install to $(INSTALL_PATH) and run lilo


  acs5k_defconfig          - Build for acs5k

  acs5k_tiny_defconfig     - Build for acs5k_tiny

  afeb9260_defconfig       - Build for afeb9260

  am200epdkit_defconfig    - Build for am200epdkit

  am3517_evm_defconfig     - Build for am3517_evm

  ams_delta_defconfig      - Build for ams_delta

  ap4evb_defconfig         - Build for ap4evb

  assabet_defconfig        - Build for assabet

  at572d940hfek_defconfig  - Build for at572d940hfek

  at91cap9adk_defconfig    - Build for at91cap9adk

  at91rm9200dk_defconfig   - Build for at91rm9200dk

  at91rm9200ek_defconfig   - Build for at91rm9200ek

  at91sam9260ek_defconfig  - Build for at91sam9260ek

  at91sam9261ek_defconfig  - Build for at91sam9261ek

  at91sam9263ek_defconfig  - Build for at91sam9263ek

  at91sam9g20ek_defconfig  - Build for at91sam9g20ek

  at91sam9rlek_defconfig   - Build for at91sam9rlek

  ateb9200_defconfig       - Build for ateb9200

  badge4_defconfig         - Build for badge4

  bcmring_defconfig        - Build for bcmring

  cam60_defconfig          - Build for cam60

  carmeva_defconfig        - Build for carmeva

  cerfcube_defconfig       - Build for cerfcube

  cm_t35_defconfig         - Build for cm_t35

  cm_x2xx_defconfig        - Build for cm_x2xx

  cm_x300_defconfig        - Build for cm_x300

  cns3420vb_defconfig      - Build for cns3420vb

  colibri_pxa270_defconfig - Build for colibri_pxa270

  colibri_pxa300_defconfig - Build for colibri_pxa300

  collie_defconfig         - Build for collie

  corgi_defconfig          - Build for corgi

  cpu9260_defconfig        - Build for cpu9260

  cpu9g20_defconfig        - Build for cpu9g20

  cpuat91_defconfig        - Build for cpuat91

  csb337_defconfig         - Build for csb337

  csb637_defconfig         - Build for csb637

  da8xx_omapl_defconfig    - Build for da8xx_omapl

  davinci_all_defconfig    - Build for davinci_all

  devkit8000_defconfig     - Build for devkit8000

  dove_defconfig           - Build for dove

  ebsa110_defconfig        - Build for ebsa110

  ecbat91_defconfig        - Build for ecbat91

  edb7211_defconfig        - Build for edb7211

  em_x270_defconfig        - Build for em_x270

  ep93xx_defconfig         - Build for ep93xx

  eseries_pxa_defconfig    - Build for eseries_pxa

  ezx_defconfig            - Build for ezx

  footbridge_defconfig     - Build for footbridge

  fortunet_defconfig       - Build for fortunet

  g3evm_defconfig          - Build for g3evm

  g4evm_defconfig          - Build for g4evm

  h3600_defconfig          - Build for h3600

  h5000_defconfig          - Build for h5000

  h7201_defconfig          - Build for h7201

  h7202_defconfig          - Build for h7202

  hackkit_defconfig        - Build for hackkit

  htcherald_defconfig      - Build for htcherald

  igep0020_defconfig       - Build for igep0020

  imote2_defconfig         - Build for imote2

  imx23evk_defconfig       - Build for imx23evk

  imx23evk_updater_defconfig - Build for imx23evk_updater

  imx25_3stack_defconfig   - Build for imx25_3stack

  imx25_updater_defconfig  - Build for imx25_updater

  imx28evk_defconfig       - Build for imx28evk

  imx28evk_updater_defconfig - Build for imx28evk_updater

  imx5_defconfig           - Build for imx5

  imx5_updater_defconfig   - Build for imx5_updater

  integrator_defconfig     - Build for integrator

  iop13xx_defconfig        - Build for iop13xx

  iop32x_defconfig         - Build for iop32x

  iop33x_defconfig         - Build for iop33x

  ixp2000_defconfig        - Build for ixp2000

  ixp23xx_defconfig        - Build for ixp23xx

  ixp4xx_defconfig         - Build for ixp4xx

  jornada720_defconfig     - Build for jornada720

  kafa_defconfig           - Build for kafa

  kb9202_defconfig         - Build for kb9202

  kirkwood_defconfig       - Build for kirkwood

  ks8695_defconfig         - Build for ks8695

  lart_defconfig           - Build for lart

  loki_defconfig           - Build for loki

  lpd270_defconfig         - Build for lpd270

  lpd7a400_defconfig       - Build for lpd7a400

  lpd7a404_defconfig       - Build for lpd7a404

  lubbock_defconfig        - Build for lubbock

  lusl7200_defconfig       - Build for lusl7200

  magician_defconfig       - Build for magician

  mainstone_defconfig      - Build for mainstone

  mini2440_defconfig       - Build for mini2440

  mmp2_defconfig           - Build for mmp2

  msm_defconfig            - Build for msm

  mv78xx0_defconfig        - Build for mv78xx0

  mx1_defconfig            - Build for mx1

  mx21_defconfig           - Build for mx21

  mx27_defconfig           - Build for mx27

  mx31pdk_defconfig        - Build for mx31pdk

  mx3_defconfig            - Build for mx3

  mx3_updater_defconfig    - Build for mx3_updater

  mx51_defconfig           - Build for mx51

  n770_defconfig           - Build for n770

  n8x0_defconfig           - Build for n8x0

  neocore926_defconfig     - Build for neocore926

  neponset_defconfig       - Build for neponset

  netwinder_defconfig      - Build for netwinder

  netx_defconfig           - Build for netx

  nhk8815_defconfig        - Build for nhk8815

  ns9xxx_defconfig         - Build for ns9xxx

  nuc910_defconfig         - Build for nuc910

  nuc950_defconfig         - Build for nuc950

  nuc960_defconfig         - Build for nuc960

  omap_2430sdp_defconfig   - Build for omap_2430sdp

  omap_3430sdp_defconfig   - Build for omap_3430sdp

  omap_3630sdp_defconfig   - Build for omap_3630sdp

  omap3_beagle_defconfig   - Build for omap3_beagle

  omap3_defconfig          - Build for omap3

  omap3_evm_defconfig      - Build for omap3_evm

  omap3_pandora_defconfig  - Build for omap3_pandora

  omap3_stalker_lks_defconfig - Build for omap3_stalker_lks

  omap3_touchbook_defconfig - Build for omap3_touchbook

  omap_4430sdp_defconfig   - Build for omap_4430sdp

  omap_apollon_2420_defconfig - Build for omap_apollon_2420

  omap_generic_1510_defconfig - Build for omap_generic_1510

  omap_generic_1610_defconfig - Build for omap_generic_1610

  omap_generic_1710_defconfig - Build for omap_generic_1710

  omap_generic_2420_defconfig - Build for omap_generic_2420

  omap_h2_1610_defconfig   - Build for omap_h2_1610

  omap_h4_2420_defconfig   - Build for omap_h4_2420

  omap_innovator_1510_defconfig - Build for omap_innovator_1510

  omap_innovator_1610_defconfig - Build for omap_innovator_1610

  omap_ldp_defconfig       - Build for omap_ldp

  omap_osk_5912_defconfig  - Build for omap_osk_5912

  omap_perseus2_730_defconfig - Build for omap_perseus2_730

  omap_zoom2_defconfig     - Build for omap_zoom2

  omap_zoom3_defconfig     - Build for omap_zoom3

  onearm_defconfig         - Build for onearm

  orion5x_defconfig        - Build for orion5x

  overo_defconfig          - Build for overo

  palmte_defconfig         - Build for palmte

  palmtt_defconfig         - Build for palmtt

  palmz71_defconfig        - Build for palmz71

  palmz72_defconfig        - Build for palmz72

  pcm027_defconfig         - Build for pcm027

  picotux200_defconfig     - Build for picotux200

  pleb_defconfig           - Build for pleb

  pnx4008_defconfig        - Build for pnx4008

  pxa168_defconfig         - Build for pxa168

  pxa255-idp_defconfig     - Build for pxa255-idp

  pxa3xx_defconfig         - Build for pxa3xx

  pxa910_defconfig         - Build for pxa910

  qil-a9260_defconfig      - Build for qil-a9260

  raumfeld_defconfig       - Build for raumfeld

  realview_defconfig       - Build for realview

  realview-smp_defconfig   - Build for realview-smp

  rpc_defconfig            - Build for rpc

  rx51_defconfig           - Build for rx51

  s3c2410_defconfig        - Build for s3c2410

  s3c6400_defconfig        - Build for s3c6400

  s5p6440_defconfig        - Build for s5p6440

  s5p6442_defconfig        - Build for s5p6442

  s5pc100_defconfig        - Build for s5pc100

  s5pc110_defconfig        - Build for s5pc110

  s5pv210_defconfig        - Build for s5pv210

  sam9_l9260_defconfig     - Build for sam9_l9260

  shannon_defconfig        - Build for shannon

  shark_defconfig          - Build for shark

  simpad_defconfig         - Build for simpad

  spear300_defconfig       - Build for spear300

  spear310_defconfig       - Build for spear310

  spear320_defconfig       - Build for spear320

  spear600_defconfig       - Build for spear600

  spitz_defconfig          - Build for spitz

  stamp9g20_defconfig      - Build for stamp9g20

  stmp378x_defconfig       - Build for stmp378x

  stmp37xx_defconfig       - Build for stmp37xx

  sx1_defconfig            - Build for sx1

  tct_hammer_defconfig     - Build for tct_hammer

  trizeps4_defconfig       - Build for trizeps4

  u300_defconfig           - Build for u300

  u8500_defconfig          - Build for u8500

  usb-a9260_defconfig      - Build for usb-a9260

  usb-a9263_defconfig      - Build for usb-a9263

  versatile_defconfig      - Build for versatile

  viper_defconfig          - Build for viper

  xcep_defconfig           - Build for xcep

  yl9200_defconfig         - Build for yl9200

  zeus_defconfig           - Build for zeus


  make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build

  make V=2   [targets] 2 => give reason for rebuild of target

  make O=dir [targets] Locate all output files in "dir", including .config

  make C=1   [targets] Check all c source with $CHECK (sparse by default)

  make C=2   [targets] Force check of all c source with $CHECK


Execute "make" or "make all" to build all targets marked with [*] 

For further info see the ./README file


$ make -j8 ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

  CHK     include/linux/version.h

  CHK     include/generated/utsrelease.h

make[1]: `include/generated/mach-types.h' is up to date.

  CALL    scripts/checksyscalls.sh

  CHK     include/generated/compile.h

  Kernel: arch/arm/boot/Image is ready

  SHIPPED arch/arm/boot/compressed/lib1funcs.S

  AS      arch/arm/boot/compressed/lib1funcs.o

  LD      arch/arm/boot/compressed/vmlinux

  OBJCOPY arch/arm/boot/zImage

  Kernel: arch/arm/boot/zImage is ready

  UIMAGE  arch/arm/boot/uImage

"mkimage" command not found - U-Boot images will not be built

  Image arch/arm/boot/uImage is ready 


$ mkimage

The program 'mkimage' is currently not installed. You can install it by typing:

sudo apt-get install u-boot-tools


$ sudo apt-get install u-boot-tools


기본으로는 zImage와 Image가 생성되며

uImage는 커널 컴파일시에 uImage로 해야 생성이 된다.



linux-2.6.35.3/arch/arm/boot$ file *Image

Image:  data

uImage: u-boot legacy uImage, Linux-2.6.35.3, Linux/ARM, OS Kernel Image (Not compressed), 2985820 bytes, Sun Feb  1 22:33:13 2015, Load Address: 0x70008000, Entry Point: 0x70008000, Header CRC: 0x0A03D97E, Data CRC: 0x99B88B34

zImage: Linux kernel ARM boot executable zImage (little-endian)


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

ARM cortex-a8 neon 활성화 체크  (0) 2015.02.02
i.mx515 uboot cross compile  (0) 2015.02.02
i.mx515 SDMA  (0) 2015.02.02
armv7 errata / kernel  (0) 2015.01.28
NEON enabled?  (0) 2015.01.28
Posted by 구차니
embeded/ARM2015. 2. 2. 14:48

SD + MA인가 했는데

S + DMA



programmable smart DMA


[링크 : http://cache.freescale.com/files/32bit/doc/data_sheet/IMX53IEC.pdf]

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

i.mx515 uboot cross compile  (0) 2015.02.02
i.mx515 kernel cross compile  (0) 2015.02.02
armv7 errata / kernel  (0) 2015.01.28
NEON enabled?  (0) 2015.01.28
armel / armhf  (0) 2015.01.26
Posted by 구차니
Programming/php2015. 2. 2. 11:59


IE는 잘되는데 크롬은 안되서 이래저래 검색중




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

[링크 : http://coffeenix.net/board_view.php?bd_code=1280]

[링크 : https://www.fir3net.com/Networking/Protocols/http-what-does-transfer-encoding-chunked-mean.html]

'Programming > php' 카테고리의 다른 글

php 구버전 post 변수.  (0) 2016.10.10
php hiphop  (0) 2016.07.14
PHP 웹 다국어 지원 트릭  (0) 2015.02.02
php 콘솔 디버깅  (0) 2015.01.13
php simpleXML saveXML 정렬하기 (well-formed XML)  (0) 2014.12.23
Posted by 구차니
Programming/php2015. 2. 2. 10:51

define으로 변수를 지정해서 include 하는건 지금사용하는 방법과 같지만

lang[] 이라는 어레이를 이용하니

이게 변수인지 문자열인지 조금은 더 잘 구분이 되니 쓸만해 보이는 방법




'Programming > php' 카테고리의 다른 글

php hiphop  (0) 2016.07.14
php chunked encdoing  (0) 2015.02.02
php 콘솔 디버깅  (0) 2015.01.13
php simpleXML saveXML 정렬하기 (well-formed XML)  (0) 2014.12.23
php simpleXML  (0) 2014.12.22
Posted by 구차니

이렇다할 이메일 공지도 없다가

2월 1일 위키에 접속하니 안되서

혹시나 하는 마음에 호스팅 업체 접속을 해보니..


머시라?

-_-



정말 무료라는 이유로

열정페이 짓을 당했구나 싶다.

이런저런 문제점과 몇번이나 데이터 날아가면서 버텼는데..

이렇게 소리소문 없이 유료 전환일줄이야...


굿바이 인트로솔루션




아오... 닝기리 닝기리 -_-

호스팅어 밖에 안남은건가!?



Posted by 구차니

아이패드 2 잘가..

그래도 여자친구에서 아내로 업그레이드 할 동안

19만원 주고 쓴거 치고는 오래 버텨 주었구나 ㅠㅠ

'개소리 왈왈 > 모바일 생활' 카테고리의 다른 글

드디어!! 약정 할부 끝? ㅋㅋ  (0) 2015.03.16
안드로이드 asec / apk  (0) 2015.02.15
MVNO 첫달 성적표?  (0) 2015.01.16
올레 에그.. 아오 레알?!?!?!  (0) 2015.01.15
KT MVNO / 프리텔레콤 FreeC  (2) 2015.01.11
Posted by 구차니

콘솔에서 보려니 까매서.. 눈에 안보이는 까막눈...



$ svn diff | view -

빔: 표준입력에서 읽는 중...


$ whereis view

view: /usr/bin/view /usr/share/man/man1/view.1.gz

$ ll /usr/bin/view

lrwxrwxrwx 1 root root 22 2014-08-25 16:42 /usr/bin/view -> /etc/alternatives/view*

$ ll /etc/alternatives/view

lrwxrwxrwx 1 root root 18 2014-08-25 16:42 /etc/alternatives/view -> /usr/bin/vim.gnome*


[링크 : http://www.commandlinefu.com/commands/view/2420/colored-svn-diff]

Posted by 구차니

MPEG4 오디오는 크게 AAC-LC와 HE-AAC로 나누어 진다.

확장자나 상품명 content type으로 치면

AAC-LC는 aac로

HE-AAC v1은 aacplus / aacp / aac+

HE-AAC v2는 eAAC+ / enhanced aacPlus / aacPlus v2

이런식으로 갈리는 것으로 보여진다.


VLC에서 확인하면

HE-AAC는 

AAC 확장: SBR 이라는 항목이 추가되어 출력된다.


Low Complexity AAC (AAC LC)

High-Efficiency Advanced Audio Coding (HE-AAC)

    HE-AAC v1 - SBR = aacplus / AAC+ / aacp(?)

    HE-AAC v2 - SBR + PS = Enhanced aacPlus


VersionCommon trade namesCodec featureStandards
HE-AAC v1aacPlus v1, eAAC, AAC+, CT-aacPlusAAC LC + SBRISO/IEC 14496-3:2001/Amd 1:2003
HE-AAC v2aacPlus v2, eAAC+, AAC++, Enhanced AAC+AAC LC + SBR + PSISO/IEC 14496-3:2005/Amd 2:2006


[링크 : http://en.wikipedia.org/wiki/High-Efficiency_Advanced_Audio_Coding]



nero 인코더/디코더를 보면

기본적으로 quality로 설정해서 압축하면 VBR 이며

0.25 quality 정도면(25%) 66kbps 에서

VBR로 대략 40kbps~56kbps 사이에서 데이터가 실제 전송양이 측정될 것으로 예상된다.



[링크 : http://www.nero.com/enu/company/about-nero/nero-aac-codec.php] nero non-commercial

[링크 : http://wiki.multimedia.cx/index.php?title=AAC_Reference_Software#mp4mcDec] official codec

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

wear leveling dynamic static(global)  (0) 2015.04.09
IrDA  (0) 2015.04.01
SBR - Spectral band replication  (0) 2015.01.23
ntp / ptp  (0) 2014.11.26
네트워크 지연시간 설정 및 측정  (0) 2014.11.26
Posted by 구차니
embeded/ARM2015. 1. 28. 16:41

cortex-A8 / i.MX515 개발환경에서 커널 빌드하려고 패치하고 설정을 보니

CPU 설정에서 다음과 같은 ARM errata 관련 설정이 보인다.


  │ │        [*] ARM errata: Stale prediction on replaced interworking branch               │ │   

  │ │        [*] ARM errata: Processor deadlock when a false hazard is created              │ │  

  │ │        [*] ARM errata: Data written to the L2 cache can be overwritten with stale data│ │  


음.. 이건 ARM/Thumb 섞어서 쓸때 분기문에서 주소 충돌이 나는 버그 같은데..

Thumb를 활성화 안해준다면 크게 걱정안해도 될 버그 같고

  ┌ ARM errata: Stale prediction on replaced interworking branch ───────────────┐

  │ CONFIG_ARM_ERRATA_430973:                                                                 │  

  │                                                                                           │  

  │ This option enables the workaround for the 430973 Cortex-A8                               │  

  │ (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb                          │  

  │ interworking branch is replaced with another code sequence at the                         │  

  │ same virtual address, whether due to self-modifying code or virtual                       │  

  │ to physical address re-mapping, Cortex-A8 does not recover from the                       │  

  │ stale interworking branch prediction. This results in Cortex-A8                           │  

  │ executing the new code sequence in the incorrect ARM or Thumb state.                      │  

  │ The workaround enables the BTB/BTAC operations by setting ACTLR.IBE                       │  

  │ and also flushes the branch target cache at every context switch.                         │  

  │ Note that setting specific bits in the ACTLR register may not be                          │  

  │ available in non-secure mode.                                                             │  

  │                                                                                           │  

  │ Symbol: ARM_ERRATA_430973 [=y]                                                            │  

  │ Prompt: ARM errata: Stale prediction on replaced interworking branch                      │  

  │   Defined at arch/arm/Kconfig:1004                                                        │  

  │   Depends on: CPU_V7 [=y]                                                                 │  

  │   Location:                                                                               │  

  │     -> System Type                                                                        │  

[링크 : http://cateee.net/lkddb/web-lkddb/ARM_ERRATA_430973.html]


매우 특정한 순서의 메모리 연산을 할 경우 캐시 라인이 엉겨서 cpu가 데드락에 빠질수 있다는데.

드물게 죽는(?) 이유가 이 녀석 이었으려나?

  ┌ ARM errata: Processor deadlock when a false hazard is created ──────────────┐

  │ CONFIG_ARM_ERRATA_458693:                                                                 │  

  │                                                                                           │  

  │ This option enables the workaround for the 458693 Cortex-A8 (r2p0)                        │  

  │ erratum. For very specific sequences of memory operations, it is                          │  

  │ possible for a hazard condition intended for a cache line to instead                      │  

  │ be incorrectly associated with a different cache line. This false                         │  

  │ hazard might then cause a processor deadlock. The workaround enables                      │  

  │ the L1 caching of the NEON accesses and disables the PLD instruction                      │  

  │ in the ACTLR register. Note that setting specific bits in the ACTLR                       │  

  │ register may not be available in non-secure mode.                                         │  

  │                                                                                           │  

  │ Symbol: ARM_ERRATA_458693 [=y]                                                            │  

  │ Prompt: ARM errata: Processor deadlock when a false hazard is created                     │  

  │   Defined at arch/arm/Kconfig:1020                                                        │  

  │   Depends on: CPU_V7 [=y]                                                                 │  

  │   Location:                                                                               │  

  │     -> System Type                                                                        │  

[링크 : http://cateee.net/lkddb/web-lkddb/ARM_ERRATA_458693.html]


L2 캐시에 신선한 데이터가 상한 데이터로 바꿔치기 되는 버그.

죽는다고는 안하지만.. 캐시 히트를 못하는 걸까.. 히트했는데 이상한 데이터를 주는 걸까?

  ┌ ARM errata: Data written to the L2 cache can be overwritten with stale data ───────┐

  │ CONFIG_ARM_ERRATA_460075:                                                                 │  

  │                                                                                           │  

  │ This option enables the workaround for the 460075 Cortex-A8 (r2p0)                        │  

  │ erratum. Any asynchronous access to the L2 cache may encounter a                          │  

  │ situation in which recent store transactions to the L2 cache are lost                     │  

  │ and overwritten with stale memory contents from external memory. The                      │  

  │ workaround disables the write-allocate mode for the L2 cache via the                      │  

  │ ACTLR register. Note that setting specific bits in the ACTLR register                     │  

  │ may not be available in non-secure mode.                                                  │  

  │                                                                                           │  

  │ Symbol: ARM_ERRATA_460075 [=y]                                                            │  

  │ Prompt: ARM errata: Data written to the L2 cache can be overwritten with stale data       │  

  │   Defined at arch/arm/Kconfig:1033                                                        │  

  │   Depends on: CPU_V7 [=y]                                                                 │  

  │   Location:                                                                               │  

  │     -> System Type                                                                        │  

[링크 : http://cateee.net/lkddb/web-lkddb/ARM_ERRATA_460075.html]


음.. 요약하면

ACTLR의 특정 레지스터 값은 non-secure mode에서 사용이 불가능해지고

반대로 말하면.. secure mode 라면 발생하지 않을 버그라는 걸까나?

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

i.mx515 kernel cross compile  (0) 2015.02.02
i.mx515 SDMA  (0) 2015.02.02
NEON enabled?  (0) 2015.01.28
armel / armhf  (0) 2015.01.26
ltib on ubuntu  (0) 2015.01.12
Posted by 구차니