linux怎样去除串口打印_Linux debug串口的释放

文档时间:2018-10-09

模块平台:EC25EFA

Linux的默认控制台是debug串口,想要改变控制台,首先需要释放debug串口。

释放debug串口的步骤主要分为三步:1.禁止aboot的log输出 2.禁止linux启动过程的log输出 3.取消linux console控制台。

1,Aboot启动过程中会默认向debug串口打印消息,想取消这些打印信息,需要进行修改并重新编译aboot。

1),添加打印关闭宏

vim apps_proc/bootable/bootloader/lk/project/mdm9607.mk

2),添加DEFINES += DEBUG_LOG_DISABLE=1宏

3),修改 uart_dm.c(位于xxx/apps_proc/bootable/bootloader/lk/platform/msm_shared/目录下)

#ifdef DEBUG_LOG_DISABLE

static unsigned int

msm_boot_uart_dm_write(uint32_t base, char *data, unsigned int num_of_chars)

{

return MSM_BOOT_UART_DM_E_SUCCESS;

}

#else

/** UART transmit operation*/

static unsigned intmsm_boot_uart_dm_write(uint32_tbase, char *data, unsigned intnum_of_chars)

{

。。。

}#endif

红色部分为新增代码

4),重新编译aboot

rebake virtual/bootloader

2,禁止linux启动过程的log输出

在linux启动过程中,会打印出一些信息,想去除这些消息,需要进行修改aboot传给linux kernel的启动参数

1),禁止linux启动过程输出log请在sdk目录执行以下命令($为命令行提示符)

$ sed -i 's/console=ttyHSL0,115200,n8/console=disable/g' ql-ol-extsdk/tools/quectel_mkboot/mkqcomboot

2),重新编译内核

$ make kernel

NOTE:

1),如果想恢复linux启动log:sed -i 's/console=disable/console=ttyHSL0,115200,n8/g' ql-ol-extsdk/tools/quectel_mkboot/mkqcomboot

2),禁止log不能使用make debug_kernel_menuconfig来配置内核,否则内核会崩溃

3,取消linux console控制台

Linux console控制台的指定在rootfs中的/etc/inittab文件中,修改此文件就可以取消linux console控制台。

首先打开inittab文件,例如:vim ql-ol-rootfs/etc/inittab

注释掉指定console控制台的语句

重新编译rootfs

make rootfs

4,验证

完成1,2,3步骤后,使用adb重新下载aboot,kernel和rootfs,开机后debug串口不在有任何输出,使用adb shell可以登录上去就说明释放debug串口成功

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值