Winmodem 모듈 등록시 궁금한 것이 있습니다.

bff38auxo의 이미지

이전에 http://kldp.org/node/83291 와 같은 글타래를 올린 적 있습니다.

드라이버를 찾아서 컴파일 시도를 하였지만 알 수 없는 버그가 나오더군요:(

그래서 검색을 해 보니 우분투 포럼에서는 이미 사용자 수준의 패치가 나와있었습니다.

동일한 범위의 Device ID를 사용하고, 메인테이너도 같아서

패치가 적용된 파일을 받아 컴파일하여 등록까지 무사히 마쳤습니다.

패치 내용

patchltmodem
 
diff -Nru ltmodem-2.6-alk-8.orig/lt_modem.c ltmodem-2.6-alk-8/lt_modem.c
 
--- ltmodem-2.6-alk-8.orig/lt_modem.c	2005-12-12 03:18:55.000000000 +0200
 
+++ ltmodem-2.6-alk-8/lt_modem.c	2006-04-19 21:43:32.142640500 +0300
 
@@ -120,14 +120,14 @@
 
 static int vendor_id = 0;
 
 static int device_id = 0;
 
 
 
-MODULE_PARM(vendor_id, "i");
 
+module_param(vendor_id, int, 0);
 
 MODULE_PARM_DESC(vendor_id, "Vendor ID of the Lucent Modem e.g. vendor_id=0x11c1");
 
-MODULE_PARM(device_id, "i");
 
+module_param(device_id, int, 0);
 
 MODULE_PARM_DESC(device_id, "Device ID of the Lucent Modem e.g. device_id=0x0440");
 
 
 
 static int Forced[4] = {-1,-1,-1,0};
 
 
 
-MODULE_PARM(Forced, "4i");
 
+module_param_array(Forced, int, NULL, 0);
 
 MODULE_PARM_DESC(Forced, "Forced Irq,BaseAddress,ComAddress[,NoDetect] of the Lucent Modem e.g. Forced=3,0x130,0x2f8");
 
 
 
 static
 
diff -Nru ltmodem-2.6-alk-8.orig/serial.c ltmodem-2.6-alk-8/serial.c
 
--- ltmodem-2.6-alk-8.orig/serial.c	2005-12-12 03:07:17.000000000 +0200
 
+++ ltmodem-2.6-alk-8/serial.c	2006-09-21 21:53:08.055717500 +0300
 
@@ -732,7 +732,9 @@
 
 	.devfs_name		= "tts/LT",
 
 	.dev_name		= "ttyLT",
 
 #else
 
+#	if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18))
 
 	.devfs_name		= "tts/LTM",
 
+#	endif
 
 	.dev_name		= "ttyLTM",
 
 #endif
 
 	.major			= 62,

그런데 minicom에서 장치 설정 후 들어가게 되면 시스템이 먹통이 되네요:(

바로 < minicom > 으로 실행해도 그렇고, < minicom -s > 로 설정 후 를 해도 마찬가지입니다.ㅜㅜ

minicom 설정 (다른 부분은 변경하지 않았습니다.)

Serial port setup
 
A - Serial Device           : /dev/modem
B - Lockfile Location      : /var/lock
C - Callin Program          
D - Callout Program
E - Bps/Par/Bits            : 1200 8N1
F - Hardware Flow Control : Yes
G - Software Flow Control : No

사용한 환경은 다음과 같습니다.
Kernel ver: 2.6.20-1.2952.fc6

모듈 등록 절차

mknod --mode=0660 /dev/ttyLTM0 c 62 64
change owner and group owner to match /dev/ttyS0
ln -s /dev/ttyLTM0 /dev/modem
make
cp *.ko /lib/modules/`uname -r`/serial
depmod -a

modprobe.conf 에 추가한 내용

alias /dev/modem ltserial
alias char-major-62 ltserial
alias /dev/ttyLTM0 ltserial

lsmod 결과

ltserial   15024    0
ltmodem    560720   1    ltserial

bff38auxo의 이미지

커널 2.6.12 이후 버전용 드라이버는

http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/martian

여기에 올라와있더군요...:)

그중 최신 버전인 martian-full-20061203.tar.gz 로 하니 잘되었습니다.

참고로,

kmodule디렉토리로 가서

make modules
make install

해주셔야 모듈이 설치됩니다.

부팅시마다 자동으로 모듈을 등록하려면

scripts디렉토리에서 'automate.sh를 실행해 주시면' 됩니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.