[问题]急!如何更改硬件的默认端口配置

笔记本/便携移动设备,手机平板等软硬件
回复
r_adium
帖子: 17
注册时间: 2007-04-22 0:14

[问题]急!如何更改硬件的默认端口配置

#1

帖子 r_adium » 2008-08-19 21:49

我的笔记本是IBM X41,使用的是Ubuntu8。04系统。
CDMA上网卡无法使用(PCMCIA),按照论坛和网络上的帖子搜索了,改波特率什么的都不行,还是modem无响应。
偶然想起我的CDMA卡插上的时候,系统给分配的端口是ttyS0,也就是COM1。
但是我的笔记本有红外,XP上默认红外要占用一个COM口。
是不是有冲突,因为我看到其他成功的兄弟一般分配的都是ttyS2或ttyS4之类的。
请兄弟们不吝赐教。
头像
leftsoft
帖子: 25
注册时间: 2008-07-28 15:32
来自: http://www.leftsoft.cn
联系:

#2

帖子 leftsoft » 2008-08-21 13:51

我的是T42 也经过了曲折才拨上去的 把你的相关配置文件内容都贴出来我帮你看看
1

代码: 全选

 dmesg |grep tty
2

代码: 全选

ls -al /dev/modem 
3

代码: 全选

tail /dev/modem
4

代码: 全选

vim /etc/wvdial.conf
5

代码: 全选

sudo wvdialconf
6再执行下1

代码: 全选

 dmesg |grep tty
7

代码: 全选

pccardctl status
下面是我的桌面 你看下
附件
Screenshot-1.png
r_adium
帖子: 17
注册时间: 2007-04-22 0:14

#3

帖子 r_adium » 2008-08-21 21:40

先谢谢楼上的兄弟,就麻烦你了。是不是我的CDMA芯片不被支持。我已经在BIOS里面关闭了红外设备,还是不行。

1
代码:
dmesg |grep tty

#我的终端显示:
[ 1.121902] console [tty0] enabled
[ 30.298226] ttyS0: LSR safety check engaged!
[ 30.298698] ttyS0: LSR safety check engaged!
[ 83.602503] audit(1219222947.754:2): type=1503 operation="inode_permission" requested_mask="a::" denied_mask="a::" name="/dev/tty" pid=5343 profile="/usr/sbin/cupsd" namespace="default"
[ 87.073217] ttyS0: LSR safety check engaged!

2
代码:
ls -al /dev/modem

ls: 无法访问/dev/modem: 没有该文件或目录

3
代码:
tail /dev/modem

tail: 无法打开 “/dev/modem” 读取数据: 没有该文件或目录

4
代码:
vim /etc/wvdial.conf

[Modem0]
Modem = /dev/modem
Baud = 57600
SetVolume = 0
Dial Command = ATDT
Init1 = ATZ
FlowControl = Hardware (CRTSCTS)

[Dialer Defaults]
Username = CARD
Password = CARD
Phone = #777
Stupid Mode = 1
Inherits = Modem0


5
代码:
sudo wvdialconf

If you still have problems, send mail to <wvdial-list@lists.nit.ca>.
blueanimachan@IBM-X41:~$ wvdialconf
Editing `/etc/wvdial.conf'.

Scanning your serial ports for a modem.

Modem Port Scan<*1>: S0 S1 S2 S3


Sorry, no modem was detected! Is it in use by another program?
Did you configure it properly with setserial?

Please read the FAQ at http://open.nit.ca/wiki/?WvDial

If you still have problems, send mail to <wvdial-list@lists.nit.ca>.

6再执行下1
代码:
dmesg |grep tty

[ 1.121902] console [tty0] enabled
[ 30.298226] ttyS0: LSR safety check engaged!
[ 30.298698] ttyS0: LSR safety check engaged!
[ 83.602503] audit(1219222947.754:2): type=1503 operation="inode_permission" requested_mask="a::" denied_mask="a::" name="/dev/tty" pid=5343 profile="/usr/sbin/cupsd" namespace="default"
[ 87.073217] ttyS0: LSR safety check engaged!
[ 400.208068] ttyS0: LSR safety check engaged!
[ 428.401199] ttyS0: LSR safety check engaged!
[ 430.523702] ttyS0: LSR safety check engaged!

7
代码:
pccardctl status

Socket 0:
3.3V 16-bit PC Card
Subdevice 0 (function 0) bound to driver "serial_cs"
头像
leftsoft
帖子: 25
注册时间: 2008-07-28 15:32
来自: http://www.leftsoft.cn
联系:

#4

帖子 leftsoft » 2008-08-22 10:53

7 说明你的PCMCIA的卡已经认出来了
我估计你的BIOS里COM1是DISABLED 要先打开
1和6的显示 ttyS0: LSR safety check engaged! 说明 ttyS0 冲突
这步一定要多调BIOS,保证你的pc卡要用的这个端口不冲突,看我的 :
[ 3.403292] console [tty0] enabled
[ 5.111305] serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a NS16550A
[ 5.112334] 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a NS16550A
[ 25.054883] ttyS2: detected caps 00000700 should be 00000100
[ 25.054901] 0.0: ttyS2 at I/O 0x3e8 (irq = 3) is a 16C950/954
[ 33.094878] ttyS1: LSR safety check engaged!
我的ttyS1也冲突,但我的pc卡用ttyS2,一定要保证 0.0: ttyS2 at I/O 0x3e8 (irq = 3) is a 16C950/954 并且这里面的
ttyS2不能 LSR safety check engaged!

4里的 Modem = /dev/modem 但3里你没有这个文件,两个解决方案(?用你的替换):
a 修改为:Modem = /dev/ttyS?
b sudo ln -sf /dev/ttyS? /dev/modem
祝你好运!
直面问题,忠于真相,承担责任,不逞一时之快!
左软中国 自由软件爱好者的乐园
r_adium
帖子: 17
注册时间: 2007-04-22 0:14

#5

帖子 r_adium » 2008-08-23 23:19

楼上的兄弟,你好,谢谢你的指导。我按照你的提示修改了BIOS。现在是这样的提示了
#1、dmesg |grep tty
[ 1.122950] console [tty0] enabled
[ 3.442061] hash matches device ttyd8
[ 3.442066] hash matches device ttyab
[ 28.196085] ttyS0: detected caps 00000700 should be 00000100
[ 28.196105] 0.0: ttyS0 at I/O 0x3f8 (irq = 3) is a 16C950/954
[ 83.729477] audit(1219424312.716:2): type=1503 operation="inode_permission" requested_mask="a::" denied_mask="a::" name="/dev/tty" pid=5466 profile="/usr/sbin/cupsd" namespace="default"

#2、 pccardctl info
PRODID_1="DGtelecom"
PRODID_2="CDMA2000_1X_PCMCIA_Card_Rev1.0"
PRODID_3=""
PRODID_4=""
MANFID=0104,0199
FUNCID=2

但是依然还是不能拨号,显示

--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0
--> Re-Sending: ATZ
[11]1[11]1
--> Modem not responding.
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#6

帖子 eexpress » 2008-08-23 23:44

系统给分配的端口是ttyS0,也就是COM1。
:?:

驱动没好吧。
● 鸣学
头像
leftsoft
帖子: 25
注册时间: 2008-07-28 15:32
来自: http://www.leftsoft.cn
联系:

#7

帖子 leftsoft » 2008-08-24 10:53

r_adium 写了:楼上的兄弟,你好,谢谢你的指导。我按照你的提示修改了BIOS。现在是这样的提示了
#1、dmesg |grep tty
[ 1.122950] console [tty0] enabled
[ 3.442061] hash matches device ttyd8
[ 3.442066] hash matches device ttyab
[ 28.196085] ttyS0: detected caps 00000700 should be 00000100
[ 28.196105] 0.0: ttyS0 at I/O 0x3f8 (irq = 3) is a 16C950/954
[ 83.729477] audit(1219424312.716:2): type=1503 operation="inode_permission" requested_mask="a::" denied_mask="a::" name="/dev/tty" pid=5466 profile="/usr/sbin/cupsd" namespace="default"

#2、 pccardctl info
PRODID_1="DGtelecom"
PRODID_2="CDMA2000_1X_PCMCIA_Card_Rev1.0"
PRODID_3=""
PRODID_4=""
MANFID=0104,0199
FUNCID=2

但是依然还是不能拨号,显示

--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0
--> Re-Sending: ATZ
[11]1[11]1
--> Modem not responding.
首先恭喜你,根据你的描述,离拨号上线已经很近了,接下来:
1 改文件 /etc/wvdial.con为:
[Modem0]
Modem = /dev/ttyS0
Init1 = ATZ
Baud = 57600
SetVolume = 2
Dial Command = ATDT
FlowControl = Hardware (CRTSCTS)

[Dialer Defaults]
Inherits = Modem0
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
Phone = #777
Username = CARD
Password = CARD


2 sudo setserial /dev/ttySn baud_base 230400 加入到 /var/lib/setserial/autoserial.conf 里
3 保证查看ttyS0的详细信息为(sudo setserial -a /dev/ttyS0):

/dev/ttyS0, Line 2, UART: 16950/954, Port: 0x03e8, IRQ: 3
Baud_base: 230400, close_delay: 50, divisor: 0
closing_wait: 3000
Flags: spd_normal skip_test
即可,如果不一致,使用sudo setserial 命令修改,然后第一次拨号可能不很顺利,特别是信号不好的情况下,多拨几次,我有的时候一次就拨上去了,但也有时候拨5次以上。
直面问题,忠于真相,承担责任,不逞一时之快!
左软中国 自由软件爱好者的乐园
r_adium
帖子: 17
注册时间: 2007-04-22 0:14

#8

帖子 r_adium » 2008-08-25 0:10

leftsoft兄弟,真的非常的感谢你给予我的无私的帮助
我现在的显示如下;
blueanimachan@IBM-X41:~$ sudo wvdial
--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0
--> Re-Sending: ATZ
--> Modem not responding.
blueanimachan@IBM-X41:~$ sudo setserial -a /dev/ttyS0
/dev/ttyS0, Line 0, UART: 16950/954, Port: 0x03f8, IRQ: 3
Baud_base: 230400, close_delay: 50, divisor: 0
closing_wait: 3000
Flags: spd_normal skip_test

还是未能拨号成功,兄弟再帮我看看。
头像
leftsoft
帖子: 25
注册时间: 2008-07-28 15:32
来自: http://www.leftsoft.cn
联系:

#9

帖子 leftsoft » 2008-08-26 14:09

1 建议贴出我最初的要求信息
2 检查BIOS COM1是否打开
直面问题,忠于真相,承担责任,不逞一时之快!
左软中国 自由软件爱好者的乐园
回复