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 를 받기위해 아래 내용을 참고하자.
- EEBU_FW_V14_REL_33X : sd8887 firmware
- EEBU_FW_V14_REL_9X : sd8787 firmware
- EEBU_FW_V15_REL_4X : sd8887 firmware
- 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 파일을 사용하면 된다.