如今國產(chǎn)的工業(yè)級ARM平臺越來越多,部分客戶反饋國產(chǎn)系統(tǒng)和以前的其他平臺有些許差異,需要熟悉一段時間才能使用,對一些想快速熟悉平臺的客戶有一些門檻。為了便于大家的使用,今天小編先針對OKA40i-C開發(fā)板Linux平臺的LCD 屏幕參數(shù)的軟件修改做下解讀,整體分為四步:
首先從參數(shù)修改入手,假設(shè)bsp的源碼包根路徑在路徑/root/workspace/allwinner/A40i/bsp/project/,這個路徑是我的$HOME路徑. 源碼包的名字是lichee.tar.gz Step 1 :解壓縮 源碼包 tar xvf lichee.tar.gz Step 2:配置文件介紹 針對A40i配置 RGB24 1024x600屏幕配置文件: tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1024x600.fex LVDS 1280x800屏幕配置文件: tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1280x800.fex MIPI1024x600屏幕配置文件: tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1024x600mipi.fex RGB24 800x480屏幕配置文件: tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config800x480.fex hdmi獨立顯示 屏幕參數(shù): tools/pack/chips/sun8iw11p1/configs/OKA40i_C/sys_config1080p.fex
進入到配置文件所在路徑 cd lichee/tools/pack/chips/sun8iw11p1/configs/OKA40i_C
Step3: 打開sys_config1024x600.fex配置文件 vi sys_config1024x600.fex 內(nèi)容包括兩部分[disp]小結(jié),[lcd0]小結(jié). 下邊第一個截圖是[disp]小結(jié). 序號1是顯示模式選擇: ;disp_mode (0:screen0) 序號2是屏幕類型: ;screenx_output_type (0:none; 1:lcd; 3:hdmi;) 序號3是格式: ;fbx format(4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444) ;fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) Fb的寬度和高度: ;fbx_width,fbx_height (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0) 下邊截圖是[lcd0] 上圖中序號1,是接口類型;序號2屏幕的分辨率參數(shù),例如選擇1024x600。 序號3是 點像素時鐘可以是51Mhz,和背光頻率50khz;序號4是屏幕的時序參數(shù),這個要填寫正確,下邊是我們選的一個屏幕的顯示參數(shù)如下,僅供參考。 使用的是1024x600的lcd rgb24的屏幕,背光頻率設(shè)置的是50khz。 下圖是管腳復(fù)用: lcdd0 = portD00<2><0> 上述的解釋:lcdd0:配置的名稱舉例; port:PD00:是管腳名稱,全志系列的管腳命名規(guī)則是P字符數(shù)字; <2>:復(fù)用功能lcd數(shù)據(jù)線0,來自于參考手冊中; <0>: 驅(qū)動強度,最強到3; 上述配置完成后可以打包生成燒寫鏡像了。 Step 4:制作img燒寫鏡像 注意:boot內(nèi)核與文件系統(tǒng)一起編譯。 步驟1:配置
# cd /root/workspace/allwinner/A40i/bsp/project/lichee/ #./build.sh configWelcome to mkscript setup progressAll available chips: 0. sun8iw11p1Choice: 0All available platforms: 0. android 1. dragonboard 2. linux 3. camdroidChoice: 2All available kernel: 0. linux-3.10Choice: 0All available boards: 0. OKA40i_C 1. OKT3_C 2. a40i-p3Choice: 0All available buildroot: 0. buildroot 1. buildroot-201611Choice: 1select buildroot-201611All available float: 0. gnueabi 1. gnueabihfChoice: 1select gnueabihfAll available qt version: 0. 5.9.0Choice: 0select 5.9.0create misc_config gnueabihfAll available lcd resolutions: 0. 480x272 1. 800x480 2. 800x600 3. 1024x600 4. 1024x600mipi 5. 1280x800 6. 800x480_v1 7. 800x600_v1 8. 1024x600_v1 9. 1024x600mipi_v1 10. 1280x800_v1Choice: 3
注意: 當編譯A40i時,選擇OKA40i_C; 如使用為V1.2版本核心板,選擇3. 1024x600 步驟2:編譯
# cd /root/workspace/allwinner/A40i/bsp/project/lichee/#./build.sh
步驟 3:編譯Qt (可選) 釋放Qt OpenGLlib到交叉編譯器位置,文件存儲位置(編譯過程報找不到GLESv2)。 1 用戶資料\Linux\linux\工具\sysroot.tar.gz
# cd /root/workspace/allwinner/A40i/bsp/project/lichee/out/sun8iw11p1/linux/common/buildroot/host/usr/arm-buildroot-linux-gnueabihf# tar xvf sysroot.tar.gz
#最終生成sysroot替換沒有Mali庫的sysroot。 注意:如果出現(xiàn)路徑錯誤,請把/root/workspace/allwinner/A40i/bsp/lichee/buildroot-201611/dl/qt-everywhere-opensource-src-5.9.0 刪除,重新釋放壓縮包,并且復(fù)制/root/workspace/allwinner/A40i/bsp/lichee/buildroot-201611/dl/setenvs.sh到新釋放的qt-everywhere-opensource-src-5.9.0目錄中去。
# cd /root/workspace/allwinner/A40i/bsp/project /lichee/# tar xvf qt-everywhere-opensource-src-5.9.0.tgz # cd /root/workspace/allwinner/A40i/bsp/project/lichee/buildroot-201611/dl/qt-everywhere-opensource-src-5.9.0# cp ../setenvs.sh ./# source setenvs.sh #虛擬機編譯的話setenv.sh 97行修改成 -j 1 表示并行編譯的現(xiàn)成數(shù)量,否則死機# makeconfig# makeall# makeinstall# cd /root/workspace/allwinner/A40i/bsp/project /lichee/# rm -fr `find ./linux-3.10 -name “*.o” ` #編譯前要刪除linux-3.10/*.o# ./build.sh
注意:編譯過程內(nèi)核報錯,有兩種解決辦法: 方法1: cd /root/workspace/allwinner/A40i/bsp/project/lichee/rm -fr `find ./ linux-3.10 -name “*.o” `
方法2: cd /root/workspace/allwinner/A40i/bsp/project/lichee/cd linux-3.10 make distclean
步驟 4:打包
# cd /root/workspace/allwinner/A40i/bsp/project/lichee/#./build.sh pack/root/workspace/allwinner/A40i/bsp/lichee/tools/pack/sun8iw11p1_linux_OKA40i_C_uart0-1024x600.img
生成的燒寫鏡像 打包配置文件到燒寫鏡像; cd /root/workspace/allwinner/A40i/bsp/project/lichee ./build.sh pack _ _ _
好了,現(xiàn)在鏡像已經(jīng)打包完成,可以燒寫到開發(fā)板了。其實全志平臺更換LCD屏難度系數(shù)并不大,小伙伴們可以參照上面的方式去試試哦。
更多詳情請到飛凌嵌入式官網(wǎng)https://www.forlinx.com/
|