研發干貨 | LS1028A 常見問題解決思路
本文硬件平臺以凌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等產品,以及工業互聯、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網 等應用領域。 了解詳情 -
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等產品,以及工業互聯網、智慧工廠、工業安全、信息安全、智慧交通、能源物聯網等應用領域。 了解詳情