LS1028A 常见问题解决思路
发布时间:2022-6-29 15:05
发布者:阿里嘎多
本文硬件平台以凌OK1028A-C[color=inherit !important]开发板为基础进行示例,其他厂商开发平台,因各个厂家设置不同,可供参考使用。内容包含[color=inherit !important]LS1028A开发板设置默认CPU调频策略,[color=inherit !important]LA1028A开发板环境变量配置文件uEnv.txt使用方法,[color=inherit !important]LS1028A开发板开机自启动程序,[color=inherit !important]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”: 点击左下角的运行按钮: 将自动编译并运行。 注意:为了节约磁盘空间,[color=inherit !important]飞凌提供的文件系统中只提供了qtbase qtwayland等部分必要核心模块,如需其他模块,可以使用apt-get进行安装。 五、LS1028A开发板LVDS配置说明 OK1028A-C底板上默认焊接了DP转LVDS[color=inherit !important]芯片,如果您需要适配自己的LVDS屏幕,可以参考如下步骤进行适配。 1. 修改时序参数 时序参数需要修改:drivers/gpu/drm/bridge/cadence/cdns-dp-core.c 参数值的含义,可以参考DRM_MODE的[color=inherit !important]宏定义: 2. 修改DP[color=inherit !important]时钟 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 修改完成后使用如下[color=inherit !important]命令重新编译: 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 此时即可将新添加的自启动服务生效,重启开发板后,此程序即可自动运行,在默认端的音频即可听到音频输出。 https://www.forlinx.com/ |
网友评论