• Sinan Kaya's avatar
    dmaengine: qcom_hidma: implement lower level hardware interface · d1615ca2
    Sinan Kaya authored
    This patch implements the hardware hooks for the HIDMA channel driver.
    
    The main functions of interest are:
    - hidma_ll_init
    - hidma_ll_request
    - hidma_ll_queue_request
    - hidma_ll_hw_start
    
    OS layer calls the hidma_ll_init function during probe to set up the
    hardware. At this moment, the number of supported descriptors are also
    given. On each request, a descriptor is allocated from the free pool and
    filled in with the transfer parameters. Multiple requests can be queued
    into the hardware via the OS interface. When client is ready for requests
    to be executed, start method is called.
    
    Completions are delivered via callbacks via tasklet.
    Signed-off-by: default avatarSinan Kaya <okaya@codeaurora.org>
    Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
    d1615ca2
hidma_ll.c 23.7 KB