概述
平台:mt6582 + android 4.4
mtk通过串口连接机器读取uart log信息,但是在系统启动完成之后在uart log中会出现这样的信息:
<< printk console disable >>
通过搜索在kernel/kernel/printk.c中的mt_disable_uart函数打印出来的。
#ifdef CONFIG_MT_PRINTK_UART_CONSOLE
extern int mt_need_uart_console;
inline void mt_disable_uart()
{
if(mt_need_uart_console == 0){
printk("<< printk console disable >>n");
printk_disable_uart = 1;
}else{
printk("<< printk console can't be disabled >>n");
}
}
inline void mt_enable_uart()
{
if(mt_need_uart_console == 1){
if(printk_disable_uart == 0)
return;
printk_disable_uart = 0;
printk("<< printk console enable >>n");
}else{
printk("<< printk console can't be enabled >>n");
}
}
#endif通过上面代码猜测如果要取消disable uart功能,即在系统启动完成之后也要能够看到uart log信息,需要取消CONFIG_MT_PRINTK_UART_CONSOLE配置,然后继续搜索,在mediatek/config/mt6582/autoconfig/kconfig/platform中找到了这个配置,但是这个文件在开始处就说明了是自动生成的,那么我们在修改这个文件时也最好自动生成它,而不是强制修改它。
根据以往的经验,platform这个文件应该是make menuconfig生成的.config文件,所以将这个文件放到kernel目录下,并重命名为.config,然后运行make menuconfig命令,但是会提示TARGET_PRODUCT/PROJECT is not set这样的错误,指定project,输入命令make TARGET_PRODUCT=hexing82_cwet_kk menuconfig,然后做如下的配置:
[*] MediaTek Properitary Configuration --->
Kernel Configurations --->
[ ] MTK printk UART controller
然后在编译的时候有可能会编译错误,会提示需要输入make mrproper命令,还是在kernel目录下输入命令make TARGET_PRODUCT=hexing82_cwet_kk mrproper,重新编译即可。
最后
以上就是专一小笼包为你收集整理的mtk android 串口读写,mtk 串口读取uart log的全部内容,希望文章能够帮你解决mtk android 串口读写,mtk 串口读取uart log所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复