cent OS 5.5에 시리얼카드 설치중 문의드립니다.
강원전자 NETMOS nm 9845cv 칩셋을 쓰는 시리얼카드를 설치하였습니다.
기본 2포트 확장 4포트 총 6포트 제품인데 4포트만 잡히네요 나머지 2포트를 살리려면 어떻게 해야 하는지 도무지 모르겠어서 문의 드립니다.
드라이버는 문서로
This installation guide describes the procedures to install NetMos Technology Nm9735CV, Nm9745CV, Nm9835CV, Nm9845CV PCI serial ports in Linux platform.
Linux Platform
l Operating System : RedHat, SuSe
l Terminal Emulation AP : minicom
l Internet Dialer : Kppp
Find the available serial ports
Since Linux only support 4 serial ports (ttyS0, ttyS1, ttyS2, ttyS3) under the default condition. Most likely, ttyS0 & ttyS1 are supported by mother board's built-in serial controllers and ttyS2 & ttyS3 are free for additional I/O card.
Serial ports could be checked by the following commands.
setserial /dev/ttyS0 -a (COM-1)
setserial /dev/ttyS1 -a (COM-2)
setserial /dev/ttyS2 -a (COM-3)
setserial /dev/ttyS3 -a (COM-4)
If COM-1 is used by mouse, the response is similar to
/dev/ttyS0 : Device or resource busy
If the COM-1 does not attach any device, the response is similar to
/dev/ttyS0, Line 0, UART: 16550A, Port: 0x3f8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
In case ttyS2 (COM-3) is free, the response for command setserial /dev/ttyS2 -a is shown below.
/dev/ttyS2, Line 2, UART: unknown, Port: 0x3e8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
Find the PCI card resource ( I/O port address & IRQ) for the serial ports
Enter the command more /proc/pci
The response is similar to the following
Bus 0, Device 11, function 0:
Serial controller : Unknown vendor Unknown device (rev 01).
Vendor id=9710, Device id=9735
Device id=9745
Device id=9820
Device id=9825
Device id=9835
Device id=9845
Medium devsel. Fast back-to-back capable. IRQ 11
Board with Nm9735CV part
I/O at 0xc000 [0xc001] serial port 1
0xc008 [0xc009] serial port 2
Board with Nm9745CV part
I/O at 0xc000 [0xc001] serial port 1
0xc008 [0xc009] serial port 2
0xc010 [0xc011] device 1
0xc018 [0xc019] device 2
0xc020 [0xc021] device 3
0xc028 [0xc029] device 4
Board with Nm9820CV part
I/O at 0xc000 [0xc001] serial port 1
I/O at 0xc400 [0xc401] not used
I/O at 0xc800 [0xc801] not used
I/O at 0xd000 [0xd001] not used
I/O at 0xd400 [0xd401] not used
I/O at 0xd800 [0xd801] not used
Board with Nm9825CV part
I/O at 0xc000 [0xc001] serial port 1
Board with Nm9835CV part
I/O at 0xc000 [0xc001] serial port 1
I/O at 0xc400 [0xc401] serial port 2
I/O at 0xc800 [0xc801] not used
I/O at 0xd000 [0xd001] not used
I/O at 0xd400 [0xd401] not used
I/O at 0xd800 [0xd801] not used
Board with Nm9845CV part
I/O at 0xc000 [0xc001] serial port 1
I/O at 0xc400 [0xc401] serial port 2
I/O at 0xc800 [0xc801] device 1
I/O at 0xd000 [0xd001] device 2
I/O at 0xd400 [0xd401] device 3
I/O at 0xd800 [0xd801] device 4
Board with Nm9755CV part
I/O at 0xc000 [0xc001] not used
I/O at 0xc400 [0xc401] not used
I/O at 0xc800 [0xc801] device 1
I/O at 0xd000 [0xd001] device 2
I/O at 0xd400 [0xd401] device 3
I/O at 0xd800 [0xd801] device 4
From the /proc/pci file, it is possible to find the PCI card's I/O port address and IRQ. Especially, the NetMos parts always shows
Vendor id=9710, Device id=9735
Device id=9745
Device id=9820
Device id=9825
Device id=9835
Device id=9845
Configure the parameters for ttyS2 or ttyS3
Enter (if ttyS2 or ttyS3 are free)
setserial /dev/ttyS2 port 0xc000 UART 16550A
irq 11 Baud_base 115200
setserial /dev/ttyS3 port 0xc008 UART 16550A
irq 11 Baud_base 115200
Check the setting for ttyS2 or ttyS3
Type setserial /dev/ttyS2 -a
/dev/ttyS2, Line 2, UART: 16550A, Port: 0xc000, irq: 11
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
The ttyS2 or ttyS3 are ready for application
이런식으로 되어 있어서 따라하기도 힘들고 오래된 버전이라 커널도 안맞고 해서 검색도 해보고 이것저것 해봤으나 안되네요...
/dev/ 경로에도 ttys0 ~3 까지만 나오구요 어떻게 해결해야 하는지 답변 부탁드립니다. ㅜㅜ
답변이 아닙니다. /dev/ttyS* 들이 정말로
답변이 아닙니다.
/dev/ttyS* 들이 정말로 사용하고 계신 그 카드의 포트들인지 확인하시고.
의 결과도 필요합니다.
제가 쓰는 9835 는
보시다시피 parallel 포트가 있는 것으로 되어있기 때문에 quirk_netmos() 에 의해 subclass other 로 조작당해서 결국엔 parport_serial 드라이버에 하드 코딩된 quirk와 match 됩니다.
결국엔 1 parallel, 1 serial 로 드라이버에서 인식되며,
mother board 에 내장된 serial 포트가 이미 하나(ttyS0) 있기 때문에 제 확장 카드의 시리얼 포트는 ttyS1 으로 잡힙니다.
실제로 이 확장 카드에 달려있는 것은 parallel 한 개, serial 한 개 뿐입니다.
메인 보드에 parallel 포트가 없어서 구매한 최소 사양의 카드거든요.
댓글 달기