研發干貨 | LS1028A 常見問題解決思路

原創 2020-12-07 17:13:00 ls1028 LA1028A

本文硬件平臺以凌OK1028A-C開發板為基礎進行示例,其他廠商開發平臺,因各個廠家設置不同,可供參考使用。內容包含LS1028A開發板設置默認CPU調頻策略,LA1028A開發板環境變量配置文件uEnv.txt使用方法,LS1028A開發板開機自啟動程序,LS1028A開發板LVDS配置說明,LS1028A開發板旋轉屏幕說明,LS1028A開發板Qtcreator安裝使用說明

一、LS1028A開發板設置默認CPU調頻策略

默認情況下OK1028A-C啟動后CPU調頻策略為ondemand

root@forlinx:/# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

ondemand

如果想使用其它策略,以高性能模式為例,可以進行如下設置

root@forlinx:/# systemctl disable ondemand.service

root@forlinx:/# apt-get install cpufrequtils

修改

root@forlinx:/# vi /etc/default/cpufrequtils

添加

GOVERNOR="performance"

重啟測試

root@forlinx:/# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

performance

注意:這里以操作cpu0為例,實際過程cpu1、cpu2、cpu3會同時改變。


二、LA1028A開發板環境變量配置文件uEnv.txt使用方法

OK1028A-C平臺支持啟動過程中通過文件導入部分環境變量,例如可以將默認的網卡MAC地址寫在uEnv.txt文件中設置固定的網卡MAC地址。

啟動時系統會讀取eMMC第二個分區boot目錄中的內核以及設備樹文件,如果存在uEnv.txt則將其中的環境變量導入到系統中。以修改網卡MAC為例進行測試。

創建uEnv.txt文件

root@forlinx:~# vi /boot/uEnv.txt

 

添加如上環境變量,重啟系統。

 

啟動過程中可以看到log信息Importing environment from uEnv.txt ...

 

可以看出,我們添加的環境變量已經生效。在批量生產時,您可以將uEnv.txt放入燒寫U盤的boot目錄,燒寫時將自動將uEnv.txt燒入eMMC中。


三、LS1028A開發板開機Logo制作方法

OK1028A-C平臺支持開機Logo,支持8bit索引bmp圖片。下面簡單介紹使用photopshop制作開機logo的步驟。

首先使用photoshop打開一張普通的圖片

 

點擊“圖像”-》“模式”,將RGB顏色修改為索引顏色

 

在彈出的“索引顏色”對話框中直接點擊確定。

 

完成后在文件菜單中選擇存儲為,保存為logo.bmp即可。

 

燒寫時,將logo.bmp放入燒寫TF卡的boot目錄即可。


四、LS1028A開發板Qtcreator安裝使用說明

OK1028-C平臺目前沒有qt的交叉編譯環境,如果需要進行qt應用程序的開發,建議直接在開發板上安裝qtcreator。下面簡單介紹qtcreator在OK1028-C平臺上的安裝及使用。

root@forlinx:/# apt-get install qtcreator

root@forlinx:/# qtcreator

 

點擊“New Project”創建新工程:

 

點擊“Qt Widgets Application”:

 

輸入項目名稱,以“hello”為例:

 

點擊“Next”:

 

點擊“Next”:

 

點擊“Finish”:

 

點擊左下角的運行按鈕:

 

將自動編譯并運行。

注意:為了節約磁盤空間,飛凌提供的文件系統中只提供了qtbase qtwayland等部分必要核心模塊,如需其他模塊,可以使用apt-get進行安裝。


五、LS1028A開發板LVDS配置說明

OK1028A-C底板上默認焊接了DP轉LVDS芯片,如果您需要適配自己的LVDS屏幕,可以參考如下步驟進行適配。

1. 修改時序參數

時序參數需要修改:drivers/gpu/drm/bridge/cadence/cdns-dp-core.c

 

參數值的含義,可以參考DRM_MODE的宏定義

 

2. 修改DP時鐘

LS1028A DP時鐘計算方法如下:

 

DP像素時鐘=fpll_phi=fpll_VCO/PLLDV[RFDHI]

fpll_VCO需要在設備數中指定,系統啟動后無法修改,位于600M-1300M之間。

 

PLLDV[RFDHI]的范圍為1-64,只需要保證VCO可以整除lvds的像素時鐘,且位于1-64之間即可。

例如飛凌默認的屏幕時鐘為71100khz,這里指定的vco-frequency=1066500000,PLLDV[RFDHI]=15

更詳細的說明可以參考:LSDKUG_rev20.04.pdf 459頁,及內核驅動:drivers/clk/clk-plldig.c

3. 修改啟動參數

configs/board/ls1028ardb/manifest

 

修改完成后使用如下命令重新編譯:

flex-builder -i mkdistroscr

 


六、LS1028A開發板旋轉屏幕說明

weston支持0、90、180、270度屏幕旋轉功能,可修改配置文件/etc/xdg/weston/weston.ini進行設置,例如旋轉90度,可將transform選項設置為90。

[output]

name=DP-1

mode=1280x800@60

force-on=true

transform=90

七、LS1028A開發板開機自啟動程序

在此介紹一種使用systemd方式來配置任意開機自啟動程序的方法。

執行如下命令創建一個腳本文件,并修改權限:

root@forlinx:/# echo '#!/bin/sh'  >>  /helloworld.sh

root@forlinx:/# echo 'gst-play-1.0 /forlinx/media/test.mp3'  >>  /helloworld.sh

root@forlinx:/# chmod  777  /helloworld.sh

進入到“/lib/systemd/system/”目錄下,并新建一個helloworld.service文件,命令如下:

root@forlinx:/# cd  /lib/systemd/system

root@forlinx:/# vi  helloworld.service

文件的內容如下:

[Unit]

Description=helloworld

After=basic.service X.service thermal-zone-init.service

[Service]

ExecStart=/helloworld.sh

[Install]

WantedBy=multi-user.target

其中Description一行需寫入服務名,ExecStart需要寫入可執行文件的絕對路徑。

保存退出后,在終端上執行如下命令:

root@forlinx:/# systemctl  -f  enable  /lib/systemd/system/helloworld.service

此時即可將新添加的自啟動服務生效,重啟開發板后,此程序即可自動運行,在默認端的音頻即可聽到音頻輸出。

 

相關產品 >

  • OK1028A-C開發板

    LS028A 系列-LS1028開發板 雙核Cortex-A72 設計 TSN網絡支持 ,工業級 LS1028A開發板 提供了一個用于設計和評估LS1028A處理器設計核心板的平臺。支持TSN的以太網交換機和以太網控制器,可支持融合的IT和OT網絡;支持CANFD、UART 、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI 等常用總線接口,并支持一個最大分辨率4K的DP接口。ls1028a 適用于工業路由器、TSN、SD-WAN、 5G CPE 、邊緣計算網關 、IP-PBX等產品,以及工業互聯、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網 等應用領域。 了解詳情
    OK1028A-C開發板
  • FET1028A-C核心板

    LS1028A-C核心板基于NXP LS1028A處理器設計,雙核ARM Cortex - A72,主頻最高1.6GHz,板載2GB DDR4 RAM,8GB ROM;原生支持6個Gbit Ethernet,支持TSN的以太網交換機和以太網控制器,可支持融合的IT和OT網絡;支持CAN FD、UART、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI等常用總線接口,并支持一個最大分辨率4K的DP接口。適用于工業路由器、TSN、SD-WAN、5G CPE、邊緣計算網關、IP-PBX等產品,以及工業互聯網、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網等應用領域。 了解詳情
    FET1028A-C核心板

推薦閱讀 換一批 換一批