pci_map_single과 pci_alloc_consistent 에 대해
글쓴이: leonhan / 작성시간: 일, 2004/05/23 - 10:03오전
pci_map_single과 pci_alloc_consistent 에 대해
두 함수가 각각 pci dma에서 Consistent DMA mappings 방식과
stramming dma mapping 방식에 사용되는 것으로 알고 있습니다.
제가 할려고 하는 것은
file에서 읽어들인 데이터를 pci 디바이스가 dma를 이용해서 퍼가는 것을 할려고 하는건데
이때는 어떤 방식을 사용해야 하는지요 ?
즉 계속 적으로 파일에서 읽어들이고 계속적으로 퍼가는 것인데 .
대강 보니깐 이때 stramming dma mapping방식을 써서
1) pci_map_single로 메모리 잡기
2) 파일에서 데이터 읽어 메모리에 넣기
3) dma run
4) dma 끝났다는 인터럽트 뜨면 pci_unmap_single
5) 1로 다시 반복
이럴거 같은데 그럼 이건 동시에 실행되는 것이 아니라
dma가 데이터를 가져가는 동안은 파일에서 읽어들이면 안되는 방식 같습니다.
즉 dma 끝날때까지 기다렸다가 그리고 unmap하고 다시 메모리 map 해서
다시 읽는 방식인데 ...
이렇게 이해하는 것이 맞습니까 ??
그리고 이렇게 하는 것은 버퍼에 동시 접근을 막기 위해서인가요 ?
전반적 설명을 부탁드립니다.
Forums:
댓글 달기