1:PC端的ubuntu。
要求必須是正常系統,不可使用虛擬機。因爲燒寫過程採用刷機模式,虛擬機刷機易致使刷機問題。 linux
2:驅動包、文件系統和源碼下載ubuntu
一、Driver package(驅動包,至關於安裝程序)app
三、Kernel sourcesui
3:編譯源碼code
如下步驟在主機中完成,不在開發板
blog
//交叉編譯工具 cross-complier sudo apt-get install gcc-arm-linux-gnueabihf build-essential //<L4T_version>表明版本,本版本是R21.5,下同 sudo tar -xjf Tegra124_Linux_R<L4T_version>_armhf.tbz2 cd Linux_for_Tegra/rootfs sudo tar -xjpf <path_to>/Tegra_Linux_Sample-Root-Filesystem_R<L4T_version>_armhf.tbz2 cd .. export LDK_ROOTFS_DIR=<absolute path to Linux_for_Tegra>/rootfs sudo ./apply_binaries.sh tar -xjf <path_to>/kernel_src.tbz2 cd kernel/ //配置.config文件 ARCH=arm make tegra12_defconfig<br>//安裝ncurses-devel<br>sudo apt-get install ncurses-dev //交叉編譯,make menuconfig方式編譯linux內核 ARCH=arm make menuconfig //在菜單中找到所需的驅動,能夠已modules或者build-in方式編譯 //Device Drivers->Usb serials convertion->usbserials support && usbserials && //cp201x,ftdi,pl2303 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make modules ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make modules_install INSTALL_MOD_PATH=$LDK_ROOTFS_DIR cp arch/arm/boot/zImage $LDK_ROOTFS_DIR/boot cp arch/arm/boot/zImage <path_to>/Linux_for_Tegra/kernel/zImage //flash.sh 燒錄 sudo ./flash.sh jetson-tk1 mmcblk0p1
4:操做步驟開發
1.將鏡像提供板用micro USB線與PC相連,將板子調整爲recovery模式。鏈接後,在PC上終端中輸入「lsusb」,若查看到0955:7140 Nvidia Corp,即表示設備與PC鏈接成功。get
2.在終端中進入BootLoader所在路徑,即<文件夾路徑>/Linux_for_Tegra/bootloader/源碼
3.在該路徑下,執行如下指令
sudo ./nvflash --read APP clone.img --bl ardbeg/fastboot.bin --go
該指令爲讀取鏡像版的鏡像並保存爲一個名爲clone.img的鏡像文件。通常大小爲15G,在個人電腦上執行完該指令,大概須要耗費30分鐘。
4.修改clone.img的權限,執行如下指令
sudo chmod 744 clone.img
5.將存儲的clone.img覆蓋原有的鏡像,執行如下指令,該指令執行會耗費幾分鐘。
sudo cp clone.img system.img
6.給鏡像板斷電並斷開與PC的USB鏈接,而後將被燒寫的板子,像以前同樣,與PC進行USB鏈接並進入recovery模式。
7.確認鏈接後,在終端進入<文件夾路徑>/Linux_for_Tegra/路徑,執行如下指令
sudo ./flash.sh -r -S 14580MiB jetson-tk1 mmcblk0p1
即爲正常的刷機指令,會耗費大概20分鐘左右。刷機成功後,系統會自動重啓。