Firmware 를 다운로드 받고, 빌드하는 방법을 설명한다.

Firmware 다운로드 받기

먼저 Perforce 라는 프로그램을 설치해야 한다. 설치 파일은 '\\swrel\swrel\' 에서 'p4vinst64.exe' 파일을 받아 설치하면 된다.
이 프로그램을 사용하여 특정 서버에 접속할 수 있고, 이때 권한을 받은 계정과 비밀번호를 입력해야 한다.

설치 과정에서 이에 대한 정보를 요구하는데, 나의 경우 아래와 같이 입력했다.

Server perforce.marvell.com:1666
User wjkim
Password marvell1234
Workspace wjkim_perforce.marvell.com_1666( 기본적으로 로컬 하드디스크)

설치가 완료되면, 시작버튼의 프로그램 목록에서 'Perforce → P4V' 를 선택하면 실행된다. 앞서 입력한 정보를 사용하여 자동으로 서버에 접속이 된다.

접속된 이후 Depot 목록들이 보이고, 각각의 디렉토리가 보일 것이다. 해당 Chip 의 firmware 를 받기위해 아래 내용을 참고하자.

  1. EEBU_FW_V14_REL_33X : sd8887 firmware
  2. EEBU_FW_V14_REL_9X : sd8787 firmware
  3. EEBU_FW_V15_REL_4X : sd8887 firmware
  4. main : driver for m and c driver

여기서는 sd8887 의 firmware 를 받을 것이다. Depot 목록에서 'EEBU_FW_V15_REL_4X' 를 마우스로 선택 후 오른쪽 메뉴에서 'Label' 을 선택한다. Files 창에서 '//depot/MRVL/EEBU_FW_V15_REL_4X' 를 텍스트 복사(Ctrl + C)하고, 화면 오른쪽 Label 창의 Folder/file 입력창에 '//depot/MRVL/EEBU_FW_V15_REL_4X/...' 를 입력하고, Filter 버튼을 누른다.
각 label 들이 검색되어 출력되는데, 여기서 다운 받으려는 firmware version 을 찾는다. 참고로 여기서 찾으려는 version 이 없을 수 있는데, 이곳은 정식 릴리즈된 branch 만 등록되어 있기 때문에 private firmware 는 이곳에서 받을 수 없다.

검색된 label 중, V15_xx_4_112 를 다운받자. 마우스로 선택한 후, 오른쪽 메뉴에서 'Get Revision' 을 선택한다.
출력된 창에서 Add 버튼을 눌러 탐색기에서 다운받을 branch 를 선택한다.

여기서는 '//depot/MRVL/EEBU_FW_V15_REL_4X' 를 선택하고, 'Get Revision' 을 누른다. 앞서 설치시 지정한 저장 경로(C:\Users\wjkim\Perforce\wjkim_perforce.marvell.com_1666)로 파일을 다운 받는다. 완료 후, 여기서 확인이 가능하다.

Firmware 빌드하기

Firmware 빌드는 환경이 설치된 특정 빌드서버에 접속하여야 한다. 현재 MKR 에서는 하나의 계정(ewanlee)만 접근 가능하다. 따라서 비번을 알려달라고 부탁해야 한다.

이 서버에 앞서 받은 코드들을 다운로드 해야 한다. 여기서는 FTP 를 사용했다. 파일을 모두 옮겼다면, 아래와 같이 명령어를 사용하여 빌드하자.

$cd /home/ewanlee/Jeremy/EEBU_FW_V15_REL_4X/src/build
$./w8887.sh

w8887.sh 내용은 아래와 같다.

###############################################################
# Script to generate Combo images for 8887
 
#make cleanmake TARGET=w8887d WLAN_RF=RF8XXX MAC_REV=A0 FP=FP29 BT_IF=SDIO FM_IF=BT  NOISY=y FWVERSION=FF0F1D04
make cleanmake TARGET=w8887o WLAN_RF=RF8XXX MAC_REV=A0 FP=FP68 WLAN_IF=SDIO NOISY=y FWVERSION=FF0F4404
 
echo "Copy the two FWs to w8887 directory"
rm -rf w8887/
mkdir w8887
cp -f w8887o/w8887o.bin w8887/
cp -f w8887d/w8887d.bin w8887/
 
cd w8887
 
# Concatanate the two FWs
echo "Concatanate the two FWs"
cat w8887d.bin w8887o.bin > w8887.bin
 
cd -

에러없이 빌드되었다면, w8887 디렉토리 아래에 2개의 binary file(w8887d.bin, w8887o.bin)이 생성되었을 것이다. 이 2개의 파일을 하나로 합쳐 사용해야 한다. w8887.bin 파일을 사용하면 된다.

  • computer/marvell/firmware_빌드하기.txt
  • Last modified: 3 years ago
  • by likewind