2012-01-12 1 views
6

PCI Express 카드를 통해 랩탑에 연결된 병렬 포트의 기본 (메모리) 주소를 찾으려고합니다. lspci -v을 실행하면 컴퓨터가 병렬 포트를 인식하고 메모리 주소가 아닌 I/O 포트 (1000 및 1008)를 표시합니다 (다른 항목은 포트와 메모리 위치를 모두 가지고 있습니다 ...이 카드는 메모리 주소가없는 유일한 항목입니다). 또한, 내가 /proc/ioports에서 볼 때 lspci에서 주어진 동일한 포트를 얻습니다. 그러나, 내가 실행중인 프로그램 (스테퍼 모터를 제어하는 ​​EMC2)에서 이러한 주소 중 하나를 사용하려고 시도하면 해당 주소에서 병렬 포트를 찾지 못합니다.Linux에서 병렬 포트의 메모리 주소 찾기

Windows 장치 관리자 -> 포트 -> 리소스와 유사한 것이 있다면 정말 좋습니다. 우분투에서이 작업을 수행 할 수있는 방법이 있습니까? PCIe 장치의 표준 메모리 위치가 있습니까?

편집 : 메모리 위치 표시 다른 항목 lspci -v

04:00.0 Parallel controller: Oxford Semiconductor Ltd Device c110 (prog-if 02) 
Subsystem: Oxford Semiconductor Ltd Device c110 
Flags: bus master, fast devsel, latency 0, IRQ 18 
I/O ports at 1000 [size=8] 
I/O ports at 1008 [size=4] 
Capabilities: [40] Power Management version 3 
Capabilities: [50] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable- 
Capabilities: [70] Express Legacy Endpoint, MSI 00 
Capabilities: [100] Device Serial Number 10-01-00-11-11-e0-30-00 
Capabilities: [110] Power Budgeting <?> 
Kernel driver in use: parport_pc 
Kernel modules: parport_pc 

로부터 참조 출력 :

0c:03.0 FireWire (IEEE 1394): Agere Systems FW322/323 (rev 61) (prog-if 10) 
Subsystem: Agere Systems FW322/323 
Flags: bus master, fast Back2Back, medium devsel, latency 248, IRQ 19 
Memory at 8c000000 (32-bit, non-prefetchable) [size=4K] 
Capabilities: [44] Power Management version 2 
Kernel driver in use: ohci1394 
Kernel modules: firewire-ohci, ohci1394 
+0

병렬 포트 카드에'lspci -w'의 출력을 첨부 할 수 있습니까? PCIe 장치에는 표준 메모리 위치가없고 병렬 포트에는 메모리 주소 영역이없는 경우가 많습니다. –

+0

@adrian lspci는 -w가 유효한 플래그가 아니라고 불평하고 있습니다. 나는 0x378, 0x278 및 0x3BC가 병렬 포트에 대한 세 가지 표준 위치라고 읽었지만 광산은 그 지점에 나타나지 않습니다. I/O 포트 번호에서 메모리 주소를 결정하는 방법이 있습니까? – Sam

+0

EMC2 문서 accourding http://wiki.linuxcnc.org/emcinfo.pl?TroubleShooting Linux 커널 모듈 parport_pc를 언로드해야합니다. 병렬 포트 주소를 제어하고 소프트웨어가 액세스하지 못할 수 있기 때문입니다. 'lsmod'와'rmmod'를 사용하여 parport와 연결된 모든 모듈을 제거하고 (parport_pc, parport, ppdev와 같은) 다시 시도하십시오. – Zuljin

답변

3

ioports의 출력을 필터링하려면 cat /proc/ioports | grep parport을 시도하십시오.

2

빠른 답 :없이 메모리 위치가 인 병렬 포트. 병렬 포트에는 IO 포트 만 할당됩니다. 이것은 병렬 포트 인터페이스가 수십 년 동안 작동 한 방식이며 특별한 드라이버가 필요한 호환되지 않는 메모리 맵핑 인터페이스를 만들 필요성을 느끼지 못했습니다.

이제 포트의 메모리 위치를 찾는 데 대한 의문이 제기됩니다. 그걸로 무엇을하고 싶니?

+0

내 컴퓨터에서 EMC2 (컴퓨터 제어 가공 장비 용 소프트웨어)를 구성하려고했지만 병렬 포트를 통해 연결된 장비를 인식하지 못했습니다. 그러나 그때 그것은 일하기 시작했습니다. – Sam

+0

하지만 물어봐야 만한다면 지금 대답 할 수 있을까요? – clearlight