PCIe ParallelPort 컨트롤러가 있는데 불행히도 작동하고 싶지 않습니다. 병렬 포트 카드를 연결한 후 예상한 대로 표시되지 않습니다 /dev/parport0
. 행위:
sudo rmmod parport_pc
sudo modprobe parport_pc io=0x4000
표시는 되지만 /dev/parport0
카드가 작동하지 않습니다. 데이터 핀에 값을 보낼 때 전압이 발생하지 않습니다. 다음 dmesg | grep parport
을 표시합니다.
scheltie@linux-mathieu:~$ sudo dmesg | grep parport
[ 266.761700] parport 0x4000 (WARNING): CTR: wrote 0x0c, read 0xff
[ 266.761705] parport 0x4000 (WARNING): DATA: wrote 0xaa, read 0xff
[ 266.761705] parport 0x4000: You gave this address, but there is probably no parallel port there!
[ 266.761719] parport0: PC-style at 0x4000, irq 0 [PCSPP,TRISTATE]
출력 sudo lspci -v
:
0000:01:00.2 Parallel controller: Asix Electronics Corporation AX99100 PCIe to Multi I/O Controller (prog-if 03 [IEEE1284])
Subsystem: Asix Electronics Corporation (Wrong ID) Parallel Port
Flags: fast devsel, IRQ 255
I/O ports at 4008 [disabled] [size=8]
I/O ports at 4000 [disabled] [size=8]
Memory at 74001000 (32-bit, non-prefetchable) [disabled] [size=4K]
Memory at 74000000 (32-bit, non-prefetchable) [disabled] [size=4K]
Capabilities: [50] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [78] Power Management version 3
Capabilities: [80] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
[disabled]
저를 놀라게 한 것은 I/O 포트와 메모리 주소 뒤에 있는 표시 였습니다 . 문제가 무엇인지, 어떻게 해결하는지 아시나요?
최신 POP_OS 22.04 LTS에서 실행됩니다. Windows가 설치된 이중 부팅 컴퓨터에서는 카드가 Windows에서 실행될 수 있습니다. 따라서 BIOS에서 활성화됩니다.
답변1
나는 또한 같은 문제에 직면했다.싱케 PEX1P2PCIe 병렬 포트. lspci -nnv
I/O 포트가 비활성화되었음을 나타냅니다.
06:00.2 Parallel controller [0701]: Asix Electronics Corporation AX99100 PCIe to Multi I/O Controller [125b:9100] (prog-if 03 [IEEE1284])
Subsystem: Asix Electronics Corporation (Wrong ID) Parallel Port [a000:2000]
Flags: fast devsel, IRQ 5
I/O ports at e010 [disabled] [size=8]
I/O ports at e000 [disabled] [size=8]
Memory at fcc01000 (32-bit, non-prefetchable) [disabled] [size=4K]
Memory at fcc00000 (32-bit, non-prefetchable) [disabled] [size=4K]
Capabilities: [50] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [78] Power Management version 3
Capabilities: [80] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
나는 다음을 만들어 /etc/modprobe.d/parport_pc.conf
이 문제를 해결했습니다 .
install parport_pc setpci -d 125b:9100 command=101; /sbin/modprobe --ignore-install parport_pc
options parport_pc io=0xe010 irq=auto
125b:9100
첫 번째 줄의 장치 ID lspci -nnv
와 0xe010
네 번째 줄의 I/O 포트를 바꿔야 합니다 . 이제 parport_pc
모듈이 로드되면(예: 를 사용하여 sudo modprobe parport_pc
) I/O 포트도 설정됩니다.
여기에는 두 가지 주요 부분이 있습니다. setpci
명령은 I/O 포트를 활성화하고 이 options
줄은 기본 I/O 주소가 무엇인지 드라이버에 알려줍니다. 보다Linux 직렬 포트 가이드설명 setpci
과이 Arch Linux Forms 게시물modprobe.d 명령에 대한 설명입니다 install
.