커널컴파일이후 usb장치에 문제가 생겼습니다.

intelwoo의 이미지

어제 처음 커널 컴파일을 해본 초보 입니다.
레드햇 8.0을 크루소 칩셋을 쓰는 노트북에 설치하고 쓰는데 이 노트북의
usb가 ohci(윈도상에서 장치관리자로 보면
open host controller 이렇게 나옵니다.그리고 usb2.0을 지원합니다.)
같은데 평소에 마우스를 잘 못잡습니다.
그래서 새로 커널을 업데이트 하려고 난생처음 2.6버전을 받아서 해봤는데
모듈에러만 계속나서 (QM_MODULES 이렇게 시작하는 오류인데 해결을 못했
습니다.) 2.4.27버전의 커널을 새로 받았습니다
커널 옵션에서

input core support 에서 마우스랑 키보드 지원을 *(built-in)를 선택하고

usb support 에서 ohci 에 *를 하고 hid full support에도 *을 하고 컴파일
했습니다.

그리고 재부팅하면

initializing USB HID interface: modprobe: Can't locate module hid

initializing USB keyboard: modprobe: Can't locate module keydev

initializing USB mouse: modprobe: Can't locate mousedev

이렇게 뜹니다.어디에서 어떻게 잘못된 건지 알수가 없습니다.어제 2.6커널
을 포함하면 지금 컴파일만 7~8번을 한거 같습니다.도움좀 주시기 바랍니다.
감사합니다.

Stand Alone Complex의 이미지

*표를 하지마시고 M으로 해보세요..

구지 모듈을 로딩안해도 될듯한데..

RET ;My life :P

intelwoo의 이미지

우선 말씀하신대로 모듈로 잡고 해봤는데 역시나 같은 증상을 보입니다.
그런데 제가 커널 컴파일을 처음 책을 보고 따라한건데 그럽을 이용해서 부팅을 하는지라 /etc/lilo.conf라는 파일이 없어서 그부분은 그냥 건너뛰고 /boot/grub/grub.conf라는 곳에 그냥 부팅이미지 위치만 지정시켜주고 부팅을 시켜서 모듈들이 제대로 올라가는지 모르겠습니다.그 부분이 어디가 문제인거 같은데 ...조언좀 부탁드립니다.

영원한 내 애증의 존재 리눅이
더 나은 삽질을 위한 최신 삽을 위해 삽질중 ....

Prentice의 이미지

http://wiki.kldp.org/wiki.php/USBMouseConfigTips

위 링크를 참고해주세요.

정말 USB 2.0이라면 OHCI 말고 EHCI로 하셔야 할 것 같은데요. "lspci -v | grep HCI" 해보시면 뭐라고 나오나요?

intelwoo의 이미지

안그래도 어제 검은해님이 올려주신 usb설정팁을 보고 한번 따라해 봤는데 잘 안되네요.그래서 리눅스를 지우고 현재 리로로 다시 깔았습니다.이제부터 다시 차근차근 해봐야 할거 같습니다.

우선 lspci -v |grep HCI
를 했을경우
Acer Laboratories Inc [ALi] USB 1.1 Controller (rev03)
(prog-if 10 [OHCI])
00:09.0 USB Controller: NEC Corporation USB (rev 41) (prog-if 10 [OHCI])

00:09.1 USB Controller: NEC Corporation USB (rev 41) (prog-if 10 [OHCI])

00:09.2 USB Controller: NEC Corporation USB 2.0 (rev 41) (prog-if 20 [EHCI])

00:13.0 FireWire (IEEE 1394); Texas Instruments TSB43AB21 IEEE-1394a-2000-Controller (PHY/Link) (prog-if 10 [OHCI]

이렇게 나옵니다.이중에서 파이어 와이어는 제가 사용을 안하는지라 꺼도 상관이 없는데 이럴경우 어떻게 해야 할지 모르겠습니다....도움이 절실합니다.ㅜ.ㅜ

영원한 내 애증의 존재 리눅이
더 나은 삽질을 위한 최신 삽을 위해 삽질중 ....

Prentice의 이미지

제가 노트북 사용 경험이 없고, USB 호스트콘트롤러가 두 종류가 뜨는 경우를 본 적이 없어서 확실히는 모르겠지만, 한번 EHCI로도 해보실래요..?

부팅이 끝난 후 모듈을 수동으로 로드하시면 어떻게 되나요..?

intelwoo의 이미지

우선 수동으로 modprobe 로 로딩을 하고 lsmod를 실행시키면 로딩은 되었는데 사용되지 않는다고 나와있습니다.

그런데 몇번 컴파일을 하면서 /boot/module-info라는 파일을 건드려 보았는데 이놈이 모듈이 올라가는데 영향을 미치는거 같습니다.그래서 컴파일 할때 이놈을 새로운 걸로 교체를 해줬으면 하는데 이걸 따로 만드는 방법은 없는지 궁금합니다.커널 2.4.18이 기본으로 깔리고 거기다가 2.4.27을 컴파일 해서 넣었는데 module-info는 2.4.18만 생깁니다.이놈을 해결보면 일단 어떻게 될듯 하네요.

영원한 내 애증의 존재 리눅이
더 나은 삽질을 위한 최신 삽을 위해 삽질중 ....

Prentice의 이미지

http://wiki.kldp.org/wiki.php/USBMouseConfigTips#s-3

위 글의 커널 2.4 모듈 예제를 보시면 아시겠지만, unused라고 나오는 모듈이 있어도 문제 없어요. 어떤 모듈이 unused라고 나오는지 좀 더 자세한 정보 부탁드립니다.

USB 마우스 모듈이 제대로 올라갔는지, 모듈이 잘 작동하는지 시험해보시려면 cat /dev/input/mice 등을 해보시는 것이 정석(?)일 것입니다.

참고로 저는 /boot/module-info 없이도 정상적으로 모듈을 올리고 있습니다.

그리고.. EHCI로는 해보셨나요..?

intelwoo의 이미지

커널을 컴파일할때 ehci를 같이 넣은 이후 간헐적으로 마우스가 잡힙니다.아마도 ehci문제인거 같습니다.지금은 다시 잡히질 않는데 현재 lsmod결과는
module size used by not tainted
mousedev 5300 0 (unused)
keybdev 2816 0 (unused)
hid 24484 0 (unused)
input 5792 0 [mousedev keybdev hid]
usbcore 77024 1 [hid]
usb-ohci 0 (unused)

이렇게 나타나고 있습니다.

그런데 검은해 님 몇가지 더 궁금한게 있는데

1.
usb HIDBP라는 건 뭐하는 건지 궁금합니다.제가 집에 엔포스 보드를 쓰는데
작년에 리눅스를 깔때 usb광마우스에 불이 안들어와서 cmos를 뒤져보니 usb컨트롤러 설정에 os/bios 를 설정할수 있는 옵션이 보이길래 os->bios라고 고쳐주니 광마우스가 작동한 적이 있습니다.아직까지 집에서는 그렇게 쓰고 있습니다.혹시 이 HIDBP라는 옵션이 그거랑 상관있는지 궁금합니다.
아 그리고 마우스는 그냥 마이크로 소프트 광마우스로 윈도 장치관리자에서는 그냥 표준 HID장치라고 나와있습니다.

2.현재 쓰는 커널(2.4.27)에서 ehci는 아직 실험중이라는 표시가 있어서
그게 문제인가 싶어서 2.6커널을 이용해보고 싶은데 2.4에서 2.6으로 넘어갈때 일종의 문제가 생깁니다.그래서 찾아본 결과
http://jachebug.org/userman/kernel/qmmodules.php
위와 같은 해결책은 있는데 해결을 해도
http://jachebug.org/userman/kernel/qmmodules2.php
이런 문제가 있다고 합니다.커널 2.4에서 2.6으로 업데이트는 정상적으로 할
방법이 없는지 궁금합니다.

너무 물어서 죄송합니다.나름대로 찾아볼려고 하는데 너무 모르는게 많아서 많이 힘이 드네요.

영원한 내 애증의 존재 리눅이
더 나은 삽질을 위한 최신 삽을 위해 삽질중 ....

Prentice의 이미지

0. usb-ohci말고 usb-ehci만 올려보고 시험을 해보세요.. 모듈 내리기는 rmmod로 하시면 됩니다. (ohci 관련 모듈을 아예 지우시고, ohci는 컴파일되지 않게 하시는 것도 괜찮겠네요.) 그런데 혹시.. 둘다 동시에는 올라가던가요?

1. 잘은 모르겠습니다. HIDBP는 입력장치의 간단한 지원, full HID는 입력장치의 제대로 된(?) 지원이라는 정도는 압니다. 저라면 바이오스에서 OS가 USB를 전담하게 설정시키고 full HID를 쓰겠습니다.

2. 첫째 문제는 별 문제가 아닌 것 같습니다. 2.6을 쓰면 원래 해야 하는 작업이니까요.

둘째 문제에 대해서는 위 글을 쓰신 분께서 좀 성급하게 글을 쓰신 것 같습니다.

newmania의 이미지

00:09.0 USB Controller: NEC Corporation USB (rev 41) (prog-if 10 [OHCI])
00:09.1 USB Controller: NEC Corporation USB (rev 41) (prog-if 10 [OHCI])
00:09.2 USB Controller: NEC Corporation USB 2.0 (rev 41) (prog-if 20 [EHCI])
NEC의 경우 위 세가지로 인식되는 것이 맞습니다.

마우스나 키보드는 USB 1.1 로 충분하기 때문에
EHCI 를 필요로 하지 않습니다. USB storage 를
사용하기 위해서라면 그냥 두셔도 좋을 것 같습니다.

application 에서 인식 못하고 있는 상황이라면
/dev/input/mice 등을 읽어보시기 바랍니다.
mouse 를 움직일 때마다 데이터가 나온다면
드라이버는 정상적이라고 보셔도 좋습니다.

이상 허접 답변이었습니다. 도움되셨길 바랍니다.

intelwoo의 이미지

우선 처음에 드러난
initializing USB HID interface: modprobe: Can't locate module hid

initializing USB keyboard: modprobe: Can't locate module keydev

initializing USB mouse: modprobe: Can't locate mousedev
라는 오류는 아무런 상관이없는 것 같습니다.이문제는
/etc/rc.sysinit을 수정함으로서 출력되지 않습니다.

문제는 2.6이상의 커널에서 module-init-tools를 사용하면서 모듈이 생성되지 않거나 생성되어도 로딩되지 않아서 발생한 문제 같습니다.

그래서 일일이 모듈로 해서 직접 modprobe 를 이용해 usbcore,usbhid,ohci-hcd,ehci-hcd를 직접 올리니 작동을 합니다.그래서
전부 커널에 넣고 하니 잘돌아 갑니다

우선 검은해님의 usb마우스 설정팁과 이 게시판에서 발견한
http://thomer.com/linux/migrate-to-2.6.html 덕에 잘 배울수 있었습니다.감사합니다.

ps..한놈이 가니 한놈이 오네요.이제는 ALSA가 괴롭힙니다.
OSS로는 소리가 잘 나오는데 ALSA에서는 소리가 안납니다.그것도 XMMS나 뭐나 다 잘돌아 가는데 소리만 안납니다.ㅜ.ㅜ

영원한 내 애증의 존재 리눅이
더 나은 삽질을 위한 최신 삽을 위해 삽질중 ....

codebank의 이미지

intelwoo wrote:
ps..한놈이 가니 한놈이 오네요.이제는 ALSA가 괴롭힙니다.
OSS로는 소리가 잘 나오는데 ALSA에서는 소리가 안납니다.그것도 XMMS나 뭐나 다 잘돌아 가는데 소리만 안납니다.ㅜ.ㅜ

혹시 커널 ALSA설정시에
OSS Mixer API
OSS PCM (digital audio) API
OSS Sequencer API
를 포함시키셨나요?
보통 프로그램들이 OSS API를 지원하고 있기때문에 이 항목을 포함 시켜야만
편리하게 이용할 수 있습니다.
그렇지 않고 ALSA현재 상태를 이용하려면 xmms의 경우 [Ctrl]+[P]를 눌러
설정창을 띄우고 출력 플러그인을 ALSA드라이브(libALSA.so)를 지정해 보시기
바랍니다.

------------------------------
좋은 하루 되세요.

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.