8/15/2015

DM8127-IPNC 설정 과 SDBOOT 설정 및 IMAGE생성

1. DM8127-IPNC 구조 



1.1 DM8127-IPNC 기본 Camera 구조




1.2 DM8127-IPNC Sub Board 구조 


         

            처음  Connector를 삽입시 검정부분을 살짝 빼고 삽입하자.
     
현재설정

  • J3   : 20PIN JTAG 연결 - XDS510-USB
  • JP1 : CLOSE ,  
  • JP2 : CLOSE  ,SD BOOT
  • JP3 : CLOSE  ,UART IC ENABLE 
  • J4  :  UART Cable 연결 


1.3 UART 관련 설정 








2. SD BOOT 변경 및 Image 생성


2.1 SD-IMAGE 생성방법

아래와 같이 백업을 위해 DM8127와 동일한 TST0 생성하고 진행을 하고,
이곳에서 아래와 같이 script로 SD-IMAGE를 생성하자.

( */dev/sdd  SD-IMAGE 전용 VDI 새로 생성해서 mount되어있음, 실제 mmc가 아님)
*아래방법은 항상 조심해서 사용해야 하며, 본인인 경우, 여러개의 VDI를 사용하고 해서
  /dev/sdx가 이름이 수시로 변경이 되어, mount로 확인안하고 사용하여 VDI data를 지워버렸다.


  • Linux 에서 SD Image 생성 

$ cd  ~/dm8127/work/Binaries
$ ls 
DM385  DM8127  update.txt  
$ cp -a DM8127  DM8127-TST0

$ cp ../Utils/sd-script/mksd-ti814x.sh DM8127-TST0/sd/
$ cd DM8127-TST0/sd/
$ ls
MLO  filesys_full_feature.tar.gz  filesys_low_power.tar.gz  mksd-ti814x.sh  u-boot.bin  uImage

$ sudo ./mksd-ti814x.sh /dev/sdd MLO u-boot.bin uImage filesys_full_feature.tar.gz
or
$ sudo ./mksd-ti814x.sh /dev/sdd ./MLO ./u-boot.bin ./uImage ./filesys_full_feature.tar.gz


*SD-IMAGE 전용 빈 공간의 VDI를 생성해서  Virtual box 추가한 사항 (8G-Byte VDI)


  • VDI 관련 사항

위사항을 하기전에
우선적 SD IMAGE용 VDI 8G or 16G  고정크기만들어 연결해야한다.
  http://ahyuo.blogspot.kr/2013/12/virtual-box-ubuntu-1204.html

관련 Script:
  http://processors.wiki.ti.com/index.php/TI81XX_PSP_UBOOT_User_Guide#U-Boot_SD_.28Secured_Digital_card.29_Support


  http://elinux.org/Panda_How_to_MLO_%26_u-boot

  https://github.com/linux-sunxi/u-boot-sunxi/wiki

  • WINDOW에 복사 및 WRITE 

sdx 안에 새로 생성된 Image를 window으로 가져와 SD/MMC에 굽는다.
VDI를 새로 추가한 위치에 따라 sdx의 이름은 변경될 수 있으며, mount로 항상확인 하자.
  1. 아래와 같이 /dev/sdd 에서 Image를 dump를 생성 
  2. 새로 생성한 Image를  Window의 Win32DiskImager로 SD Card Image Write

  $ cd /media/sf_SHARED   
  $ sudo cat /dev/sdd > sdcard.img 
     or 
  $ sudo dd if=/dev/sdd of=./sdcard.img   // slow version 
     or
  $ sudo dd if=/dev/sdd of=./sdcard.img bs=64M  // fast version 
     or
  $ sudo dd if=/dev/sdd of=./sdcard.img bs=256M  // fast version 
     or
  $ sudo dd if=/dev/sdd of=./sdcard.img bs=512M  // fast version 



2.2 U-BOOT 환경설정

위 생성대로 boot 했을 경우, 문제사항이 UBOOT의 환경설정
bootcmd와 bootargs가 발생이 하며, 이를 해결하기 위해서 아래와 같이 설정을 해준다.

이를 쉽게 해결하기 위해서 SD 카드 boot 영역에 FAT에 boot.scr을 만들어주어
해결해줘도 되고 아래와 같이 UBOOT에서 아래와 같이 직접 설정해줘도 된다.

  • U-BOOT의 환경설정 

TI8148_IPNC#pri
...
loadbootscript=fatload mmc 0 ${script_addr} boot.scr
bootscript= echo Running bootscript from MMC/SD to set the ENV...; source ${script_addr}
.....
bootcmd=ipnc_ff_init 1; mmc rescan 0; fatload mmc 0 0x81000000 uImage; bootm 0x81000000
bootargs=console=ttyO0,115200n8 noinitrd mem=80M rootwait vram=4M notifyk.vpssm3_sva=0xBFD00000 root=/dev/mmcblk0p2 rw eth=00:0C:0C:02:30:FB ip=192.168.1.168 cmemk.phys_start=0x85000000 cmemk.phys_end=0x89000000 cmemk.allowOverlap=1 earlyprintk

  • boot.scr 만드는 방법

$ vi boot.txt
setenv bootcmd 'ipnc_ff_init 1; mmc rescan 0; fatload mmc 0 0x81000000 uImage; bootm 0x81000000'
setenv bootargs 'console=ttyO0,115200n8 noinitrd mem=80M rootwait vram=4M notifyk.vpssm3_sva=0xBFD00000 root=/dev/mmcblk0p2 rw eth=00:0C:0C:02:30:FB ip=192.168.1.168 cmemk.phys_start=0x85000000 cmemk.phys_end=0x89000000 cmemk.allowOverlap=1 earlyprintk'
boot

$ mkimage -A arm -O linux -T script -C none -n TI_script -d boot.txt boot.scr


  • SPL      : TI-MIN# 
  • U-BOOT: TI8148_IPNC#

A. SD BOOT 환경설정

  SDBOOT에는 IMAGE 저장장소는 FAT를 사용하고, FILESYS를 EXT3를 사용한다


  • bootcmd for full feature 
TI8148_IPNC# setenv bootcmd 'ipnc_ff_init 1; mmc rescan 0; fatload mmc 0 0x81000000 uImage; bootm 0x81000000';saveenv 

  • bootcmd for low power filesys 

TI8148_IPNC# setenv bootcmd 'ipnc_ff_init 0; mmc rescan 0; fatload mmc 0 0x81000000 uImage; bootm 0x81000000';saveenv 


  •    아래과 같이 bootargs 기본설정  (network 정보 및 memory )
    IP는 본인 설정대로, dhcp로 변경가능

TI8148_IPNC# setenv bootargs 'console=ttyO0,115200n8 noinitrd mem=80M rootwait vram=4M notifyk.vpssm3_sva=0xBFD00000 root=/dev/mmcblk0p2 rw eth=00:0C:0C:02:30:FB ip=172.24.191.14 cmemk.phys_start=0x85000000 cmemk.phys_end=0x89000000 cmemk.allowOverlap=1 earlyprintk';saveenv


B. NFS 환경설정

NFS BOOT는 현재 문제가 생긴것을 확인 원인 추후 파악


  • HOST 에서 해야할일 

uImage 복사

$ make -s lsp
$ cp ../ti_tools/ipnc_psp_04_04_00_01/kernel/arch/arm/boot/uImage /tftpboot/uImage-dm8127_rdk 

File System Mount TEST

$ cd ~/dm8127/work/Source/ipnc_rdk/target/filesys
$ ls  // host에서 filesystem 확인 
$ cd ..
$ mkdir test
$ sudo mount -t nfs 192.168.1.100:/home/jhlee/dm8127/work/Source/ipnc_rdk/target/filesys test
$ ll ./test
$ sudo umount ./test

  • Device 에서 설정 
TI8148_IPNC# 생략 save는 본인의 선택

set serverip '192.168.1.100';set ipaddr '192.168.1.39'; set gatewayip '192.168.1.1';set netmask '255.255.255.0'
set hostname "jhlee-VirtualBox"


setenv bootargs 'console=ttyO0,115200n8 root=/dev/nfs nfsrootdebug rw rootdelay=10 mem=80M vram=4M notifyk.vpssm3_sva=0xBFD00000 nfsroot=192.168.1.100:/home/jhlee/dm8127/work/Source/ipnc_rdk/target/filesys,nolock eth=32:30:3a:63:64:3a ip=192.168.1.168 cmemk.phys_start=0x85000000 cmemk.phys_end=0x89000000 cmemk.allowOverlap=1 earlyprintk'
setenv bootcmd tftp uImage-dm8127_rdk;bootm


RAM 512로 했을 경우, Memory Map , 문서 IPNC_RDK MemoryMap 참조

  - cmemk.phys_start="0x85000000"  cmemk.phys_end="0x89000000"
      CMEM 64M

  - notifyk.vpssm3_sva=0xBFD00000
             VPSS M3 Notify (For FB Dev) :2M


2.3 SD BOOT 후 확인사항

  • U-BOOT의 PROMPT  (TI8148_IPNC -> TI-MIN)
  • IPNC의 NETWORK 설정: STATIC IP : 192.168.1.68로 설정됨 - 이는 172.24.191.14 상관없음 
  • Web 접속 후 각 연결 사항 확인 및 동작확인 (확인)
  • Web - Histogram도 지원 및 각 GUI 지원 각 기능 확인 ( 확인결과 별 문제없음)
  • 2A기능 확인  (확인)
  • 렌즈 줌인 줌아웃 테스트 (확인)
  • VLC 동작확인 못함 (카메라 RTSP 동작확인) )
  • 기타 카메라 테스트 진행 


  • VLC 로 RTSP 동작 확인
  1. SD BOOT후 로그에서 아래와 같이 RTSP 주소 확인 
  2. 화면재생시 VLC 도구->코덱정보 해상도 정보확인 

..... 
Play this stream using the URL:
 rtsp://192.168.1.168:8553/PSIA/Streaming/channels/1?videoCodecType=MPEG4

Play this stream using the URL:
 rtsp://192.168.1.168:8554/PSIA/Streaming/channels/1?videoCodecType=MPEG4

Play this stream using the URL:  
        // 1600x900  60HZ   VLC 에서 확인
 rtsp://192.168.1.168:8557/PSIA/Streaming/channels/2?videoCodecType=H.264

Play this stream using the URL:
 rtsp://192.168.1.168:8555/PSIA/Streaming/channels/0?videoCodecType=MJPEG

Play this stream using the URL:
        // 720x482     30HZ  VLC에서 확인 
 rtsp://192.168.1.168:8556/PSIA/Streaming/channels/2?videoCodecType=H.264




댓글 없음 :