PCI driver 관련
글쓴이: gekygangga / 작성시간: 목, 2016/07/14 - 11:43오전
안녕하세요. 리눅스 관련하여 초보적 지식을 가지고 있는 사람입니다.
최근 PCI 드라이버쪽 관련 업무를 받았는데, 정확한 개념을 잡지 못하고 허덕이고 있네요..
현재 pci bridge IC를 장착하여 해당 IC를 컨트롤 하려는게 주목적인데,
device ID 및 vendor ID를 등록해서 probe 쪽을 동작하는 것부터가 되질않아서 고민입니다..
현재 작업한 내용으로는
static DEFINE_PCI_DEVICE_TABLE(pericom_pci_tbl) = { { PCI_DEVICE(PCI_VENDOR_ID_PERICOM, 0x2304 ) ,PCI_ANY_ID,PCI_ANY_ID,}, { 0 }, }; MODULE_DEVICE_TABLE(pci, pericom_pci_tbl);
로 ID값을 등록했습니다.
그리고 module_pci_driver 를 사용해서 드라이버 정보를 선언했습니다.
함수쪽에 디버깅 메세지를 찍게끔 해놓았지만 출력이 되지 않는데 , 이는 ID값 자체를 찾지 못한건가요?
lspci로 확인시에 각 ID가 정확하게 읽혀지는 것으로 보아 하드웨어적인 문제는 없는 것으로 보이는데,
어디쪽에서 잘못된 것인지를 알수가 없네요...
공부가 많이 부족합니다.. 도움 부탁드리겠습니다.
Forums:
https://git.kernel.org/cgit/l
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/PCI/00-INDEX?id=refs/tags/v4.7
커널 내 문서를 참조하는게 젤 빠를거에요.
아니면 drivers 디렉토리 내 간단한 소스를 참조하시던지요..
https://git.kernel.org/cgit/l
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/PCI/pci.txt?id=refs/tags/v4.7
더 정확히는 이 문서부터 시작하면 좋겠네요.
댓글 달기