UEFI阶段uart通信

最近有几个类似的需求,修改过程遇到了一些问题,咨询了供应商搞好了学到了点东西记录一下。

需求主要是在abl阶段让模块和外设能通过uart通信,速度有快(一般2~3M)有慢(115200)。实现过程也不复杂,其实就和常用tlmm这些类似,主要是一些细节要注意下。

1、驱动

有些平台是已经集成了驱动,有些没集成,可以直接复制粘贴改点东西就行。路径在

boot_images/QcomPkg/Library/HSUartQupv3Lib/下面,有十几个文件主要注意俩就行,HSUartXBL.c和HSUartSettings.h,不同gpio和uart 速率控制基本就改这俩。

HSUartXBL.c先来,这个函数就是初始化uart的一些配置,包括波特率、停止位、回环测试等等,波特率的选择不能乱写,文件开头有给定义,不同平台我看给的可选项还有差异,根据给的选就行,其它项根据设计需求自己调整,回环测试前期测试方便可以打开,实际使用时候要关掉。

static const CLOCK_SETTINGS baud_table[] =
{
   // bit_rate, input_freq, divider
   {     115200,     7372800,      64 },
   {    3000000,   48000000,      16 },
   {0}
};
/*==================================================================================================

FUNCTION: hsuart_initialize

DESCRIPTION:

====
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值