2010-06-08 4 views
3

pcie를 통해 내 프로세서와 인터페이스 할 장치가 있습니다. 필자는 기존의 pci 파일 작업을 사용하여 드라이버를 작성했습니다.사용자 공간 프로그램에서 PCI 장치 액세스

이제 내 문제는 사용자 공간 프로그램에서 어떻게 액세스합니까? PCI 파일 작업에는 IOCTL 지원이 없으므로 다른 문자 장치와 달리 ioctl 호출을 할 수 없습니다. pci_config_read_byte 등의 함수는 커널 공간 (linux/pci.h에 포함되어 있음) 용이므로 사용할 수 없습니다.

+0

IOCTL을 사용할 수없는 이유는 무엇입니까? 우리의 PCI/PCIe 드라이버는 항상 IOCTL을 사용합니다. –

답변

0

저는 이것을 수행하기 위해 uio 프레임 워크를 사용했습니다. 그런 다음 pci 바를 사용자 공간으로 내보낼 수 있습니다. x86에서는 휘발성 메모리 영역으로 취급 할 수 있습니다.