linux 串口serial1和serial2不能用?

meiky 2010-12-03 03:35:48
我的内核启动只显示
s3c2410-uart.0:s3c2410 serial0 at MMIO 0x50000000 (irq = 70) is a S3C2410
serial1 和 serial0 都没打印出来,在/dev里按serial0 的设备号照推下去新建了serial1 和 serial2 ,但程序打不开结点,发现内核/arch/arm/mach-s3c2410/mach-smdk2440.c 里

static struct s3c2410_uartcfg smdk2410_uartcfgs[] = {
[0] = {
.hwport = 0,
.flags = 0,
.ucon = UCON,
.ulcon = ULCON,
.ufcon = UFCON,
},
/* [1] = {
.hwport = 1,
.flags = 0,
.ucon = UCON,
.ulcon = ULCON,
.ufcon = UFCON,
},
[2] = {
.hwport = 2,
.flags = 0,
.ucon = UCON,
.ulcon = ULCON,
.ufcon = UFCON,
}*/
};

后两个串口关掉了,于是就把它打开来,编译可以通过,但写进去卡在done, booting the kernel.不知怎么回事,以为是串口没打印出数据而已,但发现其实是内核没加载,我的应用程序是跑不起来的.还需要改哪里吗????大家帮帮忙!弄了一天了
...全文
397 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lingbin2083 2011-07-13
  • 打赏
  • 举报
回复
您说的“原来在arch/arm/mach-s3c2410/s3c2410.c里有部分关于串口1 和 2的内容打开就行了”是那部分啊?我现在急需解决此问题请帮帮忙吧
meiky 2010-12-06
  • 打赏
  • 举报
回复
原来在arch/arm/mach-s3c2410/s3c2410.c里有部分关于串口1 和 2的内容打开就行了,在内核启动就打印出三个串口的信息,现在serial0 和1都能正常使用,但serial2还是用不了,open设备没提示错误,但没输出数据,什么问题??
meiky 2010-12-04
  • 打赏
  • 举报
回复
哦,不是UARTS_NR,我的里面是#define NR_PORT (3) 没错吧
meiky 2010-12-03
  • 打赏
  • 举报
回复
谢谢楼上,我看过串口驱动里那个s3c2410.c里的 UARTS_NR 设置是3没错,make menuconfig 里有可以设置CONFIG_SERIAL_SAMSUNG_UARTS的吗,我看到设置串口的好像只有两项用来打开串口的
dfysy 2010-12-03
  • 打赏
  • 举报
回复
既然原来那个人已经把后两个串口屏蔽了,估计他在驱动里面也把这两个屏蔽了,你搜索一下CONFIG_SERIAL_SAMSUNG_UARTS的值是多少,估计被配置成1了,你需要通过make menuconfig 配成3,表示使用三个串口。
三个串口肯定可以同时用的,我以前的2410板子总共有七个串口,3个自带的加一片16554

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧