乾貨分享| LS1028A 系統固化 操作說明

ningmengzier發表於2020-12-24

文章講述使用硬體平臺為 飛凌OK1028 開發板NXP公司Layerscape系列  LS1028A  晶片),本文主要講述 LS1028A系統固化使用說明,說明包括如何製作燒寫TF卡,如何USB燒寫,如何透過TFTP燒寫Q SPI

 

一、 製作燒寫TF卡

OK1028A- C平臺含有一個TF卡介面並且支援TF卡啟動,因此可以藉助TF卡將映象燒寫到EMMC中,下面是製作燒寫TF卡的過程。

將TF卡插入主機,並將其連線到虛擬機器Ubuntu中

檢視裝置節點

如果您只插入了一個TF卡裝置預設情況下裝置節點為/dev/sdb具體以實際情況為準

燒寫firmware到TF卡

將使用者資料工具目錄的mksdcard.sh及映象目錄的firmware_ls1028ardb_ uboot_sdboot.img複製到虛擬機器的/home/forlinx/work目錄

執行做卡指令碼:

sudo ./mksdcard.sh

根據提示選擇裝置節點,這裡只插入了一個TF卡,輸入1

輸入“y”進行確認

這樣燒寫TF卡就製作完成了,下面我們還需要將映象檔案複製到TF卡中,首先將TF卡插入Windows主機中,然後將網盤資料 Linux/映象目錄中的檔案複製到TF卡中。

Scripts

ls1028ardb_update.scr

Tools

usb_update.itb

Rootfs

ubuntu.img

Firmware

firmware_ls1028ardb_uboot_emmcboot.imgfirmware_ls1028ardb_uboot_xspiboot.img

DP2LVDS

dp2lvds_firmware.bin

Config

config.ini

Boot

核心及裝置樹、開機logo等

TF卡FA T32分割槽存放以下檔案:

配置檔案config.ini內容如下:

注意:預設配置檔案不燒寫QSPI,如果需要燒寫QSPI請將qspiflash選項改為true。

將燒寫TF卡插入TF卡座,啟動開發板,將撥碼開關撥至TF卡啟動,上電自動進入燒寫流程。

注意:燒寫成功後 核心板心跳燈將熄滅,燒寫異常則常亮。

二、 隨身碟燒寫

OK1028A-C支援隨身碟燒寫,前提是QSPI flash中的u-boot可以正常啟動,使用QSPI啟動來配合隨身碟燒寫。隨身碟容量需要大於8G,分割槽格式為FAT32,同時隨身碟只能包含一個分割槽,有些客戶的隨身碟做過系統啟動盤,會包含隱藏分割槽,請避免使用。

將網盤資料images目錄的檔案複製到隨身碟中,並將隨身碟插入OK1028A-C的USB3.0中。將撥碼開關撥至QSPI啟動,上電啟動開發板(請勿插TF卡)。

三、 TFTP燒寫QSPI

OK1028A-C支援網路燒寫QSPI,前提是flash中的u-boot可以正常啟動。

1、 TFTP環境搭建

Tftp是用來遠端下載檔案的常用網路協議,基於udp實現,在 嵌入式除錯開發過程中經常用來從Host主機下載檔案到開發板,避免繁瑣的隨身碟複製過程。本節主要講解Host端的tftp server的環境搭建,飛凌提供的ubuntu18.04中預設已經安裝好了tftp server您可以略過此節。

安裝前請確保您的虛擬機器可以訪問網路,首先安裝tftp-hpa和tftpd-hpa(前者是客戶端,後者是服務程式)以及xinetd。

root@forlinx:~$ sudo apt-get install tftp-hpa tftpd-hpa xinetd

重新啟動tftp服務:

root@forlinx:~$ sudo service tftpd-hpa restart

檢視tftp配置檔案:

root@forlinx:~$ cat /etc/default/tftpd-hpa

預設的tftp目錄為/var/lib/tftpboot保持預設即可,下面進行本地tftp測試:

root@forlinx:~$ sudo chmod 777 -R /var/lib/tftpboot

root@forlinx:~$ echo " > /var/lib/tftpboot/test

root@forlinx:~$ tftp forlinx

get test

q

root@forlinx:~$ ls test

測試成功。

2、 TFTP燒寫QSPI

OK1028A-C平臺的uboot階段可以使用乙太網,並且uboot中支援tftp協議,因此我們只需要稍加配置開發板的網路,便可以透過tftp將檔案從Host主機下載到開發板的記憶體,然後燒寫到qspi nor中。下面演示網路配置以及燒寫過程。注意,使用者的網路環境各不相同,配置網路時,具體的IP資訊等請以實際為準。

本節以燒寫韌體firmware_ls1028ardb_uboot_xspiboot.img為例:

檢視虛擬機器IP:

root@forlinx:~$ ifconfig

複製Firmware檔案到TFTP目錄:

root@forlinx:~$ cp firmware_ls1028ardb_uboot_xspiboot.img /var/lib/tftpboot/

將網線插入 SGMII網口,開發板上電,連續敲擊空格鍵,使開發板停留在uboot 命令行。

配置開發板IP:

=> setenv ipaddr 192.168.1.200

配置Server IP:

=> setenv serverip 192.168.1.100

Ping測試:

=> ping 192.168.1.100

Host is alive表示 網路通訊正常,下載檔案到記憶體:

=> tftp 0x90000000 firmware_ls1028ardb_uboot_xspiboot.img

燒寫QSPI:

=> sf probe 0:0

=> sf erase 0 0x1000000

=> sf write 0x90000000 0 0x1000000

reset

調整撥碼開關,測試QSPI啟動。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69989353/viewspace-2744926/,如需轉載,請註明出處,否則將追究法律責任。

相關文章