/*********************************************************************
* am335x 更改调试串口
*
* am335x的调试串口是uart0,uart硬件连接上与其他功能出现了冲突。
* 打算将其更改为uart1。本文并没有全部更改成功。
* 记录其过程,方便以后继续尝试。
*
* Tony Liu, 2016-4-47, Shenzhen
*********************************************************************/
本文主要内容:
. kernel调试串口更改
. rootfs调试串口更改
. uboot调试串口更改
参考链接:
http://bbs.ednchina.com/BLOG_ARTICLE_3003157.HTM
http://www.cnblogs.com/zym0805/archive/2011/07/17/2108573.html . kernel
1.1 更改kernel调试串口
通过uboot传参数,更改内核的uart端口,默认是ttyO0,更改为ttyO1
uboot/include/configs/ok335x.h
#define CON \
"console=ttyO1,115200n8\0" \
"optargs=\0" \
"mmcroot=/dev/mmcblk0p2 ro\0" \
"mmcrootfstype=ext3 rootwait\0" \
"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \
"nandrootfstype=ubifs rootwait=1\0"
#endif
1.2 关闭kernel的调试串口
include/configs/ok335x.h
通过uboot传参数,更改内核的uart端口,默认是ttyO0,更改为ttynull
#define CON \
"console=ttynull,115200n8\0" \
"optargs=\0" \
"mmcroot=/dev/mmcblk0p2 ro\0" \
"mmcrootfstype=ext3 rootwait\0" \
"nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \
"nandrootfstype=ubifs rootwait=1\0"
#endif . rootfs
2.1 更改文件系统的调试端口
更改为ttyO1, getty命令用于设置uart的参数
/etc/inittab
::respawn:/sbin/getty ttyO1 2.2 关闭rootfs调试串口
将对应的行注释即可
/etc/inittab
#::respawn:/sbin/getty ttyO0 . uboot
uboot中更改没有成功,但也把过程记录,方便之后查看。
uboot/include/configs/ok335x.h 更改下面的宏,注释的时候使用"/* */"进行注释,用“//”注释,编译会出现问题。
/* tony */
/*#define CONFIG_SERIAL2 1
#define CONFIG_CONS_INDEX 2
*/
#define CONFIG_SERIAL1 1
#define CONFIG_CONS_INDEX 1 //并添加下面两个宏, 定义UART1,UART2的寄存器地址
/* tony */
#define CONFIG_SYS_NS16550_COM2 0x48022000 /* UART1 */
#define CONFIG_SYS_NS16550_COM3 0x48024000 /* UART2 */
/*******/ board/forlinx/ok335x/pll.c
添加使能uart1
static void per_clocks_enable(void)
{
......
/* UART0 */
__raw_writel(PRCM_MOD_EN, CM_WKUP_UART0_CLKCTRL);
while (__raw_readl(CM_WKUP_UART0_CLKCTRL) != PRCM_MOD_EN); /* UART1, add by Tony */
__raw_writel(PRCM_MOD_EN, CM_PER_UART1_CLKCTRL);
while (__raw_readl(CM_PER_UART1_CLKCTRL) != PRCM_MOD_EN); /* UART3 */
__raw_writel(PRCM_MOD_EN, CM_PER_UART3_CLKCTRL);
while (__raw_readl(CM_PER_UART3_CLKCTRL) != PRCM_MOD_EN);
......
} //添加uart1的时能
board/forlinx/ok335x/mux.c
void enable_uart1_pin_mux(void)
{
configure_module_pin_mux(uart1_pin_mux);
} 添加调用
board/forlinx/ok335x/evm.c
void s_init(void)
{
......
enable_uart0_pin_mux();
enable_uart1_pin_mux();
......
}

am335x 更改调试串口的更多相关文章

  1. DM8127 更改调试串口为UART2

    1.uboot修改 1)修改宏定义 /*include/config/ti8148_evm.h*/ #define CONFIG_SYS_NS16550_COM2 0x48024000 #define ...

  2. 新唐NDA102EC1中更改UUART1作为调试串口打印输出调试信息

    新唐NDA102EC1中更改UUART1作为调试串口打印输出调试信息 参考网上STM32修改fputc(int ch, FILE *f),把串口打印函数printf()重定向到UUART1模块的端口输 ...

  3. imx6 关闭调试串口

    需要关闭imx6调试串口,用作普通的串口使用. 参考链接 http://blog.csdn.net/neiloid/article/details/7585876 http://www.cnblogs ...

  4. 将JZ2440的调试串口换成com2

    众所周知JZ2440 V3很小巧,精致.今天单就JZ2440的串口来讨论一些问题.我们在用串口进行调试的时候,需要用JZ2440自带的一根USB线连接电脑USB口和开发板的USB-com1口.先来看一 ...

  5. deepin下codeblocks更改调试终端

    codeblocks建立控制台程序生成完毕后,发现自带的调试终端xterm不能进行复制粘贴操作参考了Ubuntu的更换调试终端的方法,就是把deepin下的deepin-terminal 用作调试终端 ...

  6. Ubuntu下CodeBlocks更改调试终端

    Ubuntu下CodeBlocks更改调试终端   Ubuntu下的CodeBlocks自带的调试终端xterm不能进行复制粘贴操作,更换调试终端就可以解决了,就是把ubuntu下的gnome-ter ...

  7. [RK3399] 调试串口ttyS2改为普通串口

    CPU:RK3399 系统:Android 7.1 串口需求量大时,会选择使用 spi 转串口,但是数据量大或者波特率较高时,传输会丢包. 调试串口 ttyS2 也可以让出来,供上层使用,下面是将 t ...

  8. 使用python来调试串口

    串口模块的波特率比较特别,找了几个串口工具都不支持...所以,干脆用python自己来写了,其实已经好奇好久了,别人的工具各种不顺手. 需要pyserial的支持,兼容各种平台,不需要新编译二进制文件 ...

  9. STM8S和STM8L调试串口中断的注意点

    1. STM8L串口中断注意点 在调试PM2.5传感器GP2Y1051的时候,发现在仿真的时候开始能够进行数据的接受,但是如果暂停之后就不能接受数据,其实只是接收了一次完整的数据. 问题程序 解决方法 ...

随机推荐

  1. 期待中冷静前行,专家预测2017年VR产业5大发展趋势

    VR在90年代火过一阵后,在2016年迎来了爆发.今年的VR领域,除了Oculus.HTC.索尼等发布的各家硬件,还有许多VR内容争奇斗艳的迸发,但是VR会一直保存热度吗? 事实上,对于科技圈巨头而言 ...

  2. 使用HTML 5捕捉音频与视频信息

    长期以来,音频与视频信息的捕捉一直是Web开发中的一个难点.许多年来,我们一直依赖浏览器插件来实现这个需求. 在HTML 5中,出现了许多可以访问硬件设备的API,例如访问GPS设备的Geolocat ...

  3. 【wikioi】1017 乘积最大

    题目链接 算法:划分型DP 非常典型的一道题目,划分型DP 题目描述: 设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大.同时,为了 ...

  4. [BZOJ2795][Poi2012]A Horrible Poem

    2795: [Poi2012]A Horrible Poem Time Limit: 50 Sec  Memory Limit: 128 MBSubmit: 261  Solved: 150[Subm ...

  5. Android -- 通知栏的使用

    1. 效果图

  6. 【bzoj1367】[Baltic2004]sequence

    2016-05-31 17:31:26 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1367 题解:http://www.cnblogs.co ...

  7. 如何处理json字符转换为字典

    NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@?userName=%@&userPwd=%@& ...

  8. win7 64位DCOM配置(关于导出excel 配置计算机组件服务)(转)

    http://blog.sina.com.cn/s/blog_9323b3a50101qrxm.html [解决方案1] 1:在服务器上安装office的Excel软件. 2:在"开始&qu ...

  9. Net-SNMP是线程安全的吗

    原文地址 : http://www.net-snmp.org/wiki/index.php/FAQ:General_19 Net-SNMP是线程安全的吗? 确切的说,不是.不过呢,在多线程管理的应用进 ...

  10. 使用cjson进行对象的嵌套封装

    共分两个部分,1)创建json.2)解析json 1)创建嵌套json的代码 char * makeJson() { cJSON * pRoot = NULL; cJSON * pSub_1 = NU ...