Changes between Version 2 and Version 3 of dma_device_api


Ignore:
Timestamp:
Jan 26, 2020, 6:40:05 PM (4 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • dma_device_api

    v2 v3  
    99The "kernel" API contains two, synchronous and asynchronous, operation types, detailed in section C below.
    1010
    11 The '''asynchronous'''  operation is not directly executed by the client thread. The requests are registered in the waiting queue rooted in the DMA chdev descriptor. These requests are actually handled by a dedicated '''server thread''' running in the cluster containing the chdev descriptor, that calls the blocking ''ioc_driver_cmd()'' function for each registered request.
    12 The driver is supposed to deschedule the server thread to wait the DMA transfer completion. 
     11The '''asynchronous'''  operation is not directly executed by the client thread. The requests are registered in the waiting queue rooted in the DMA chdev descriptor. These requests are actually handled by a dedicated server thread running in the cluster containing the DMA chdev descriptor. This server thread calls the blocking ''ioc_driver_cmd()'' function for each registered request. The driver is supposed to deschedule the server thread after launching the DMA transfer, to wait the transfer completion. 
    1312
    14 The '''synchronous''' operations does not use the waiting queue, and does not use the server thread. The client thread calls itself the ''dma_driver_cmd()'' blocking function. The driver is supposed to use a polling strategy to wait the DMA transfer completion, without using the DMA_IRQ..
     13The '''synchronous''' operations does not use the waiting queue, and does not use the server thread. The client thread calls itself the ''dma_driver_cmd()'' blocking function. The driver is supposed to use a polling strategy to wait the DMA transfer completion, without using the DMA_IRQ.
    1514
    1615To access the various drivers, the DMA device defines a lower-level "driver" API, that is detailed in section D below.