linux/drivers/dma/ptdma/ptdma-dmaengine.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * AMD Passthrough DMA device driver
 * -- Based on the CCP driver
 *
 * Copyright (C) 2016,2021 Advanced Micro Devices, Inc.
 *
 * Author: Sanjay R Mehta <[email protected]>
 * Author: Gary R Hook <[email protected]>
 */

#include "ptdma.h"
#include "../dmaengine.h"
#include "../virt-dma.h"

static inline struct pt_dma_chan *to_pt_chan(struct dma_chan *dma_chan)
{}

static inline struct pt_dma_desc *to_pt_desc(struct virt_dma_desc *vd)
{}

static void pt_free_chan_resources(struct dma_chan *dma_chan)
{}

static void pt_synchronize(struct dma_chan *dma_chan)
{}

static void pt_do_cleanup(struct virt_dma_desc *vd)
{}

static int pt_dma_start_desc(struct pt_dma_desc *desc)
{}

static struct pt_dma_desc *pt_next_dma_desc(struct pt_dma_chan *chan)
{}

static struct pt_dma_desc *pt_handle_active_desc(struct pt_dma_chan *chan,
						 struct pt_dma_desc *desc)
{}

static void pt_cmd_callback(void *data, int err)
{}

static struct pt_dma_desc *pt_alloc_dma_desc(struct pt_dma_chan *chan,
					     unsigned long flags)
{}

static struct pt_dma_desc *pt_create_desc(struct dma_chan *dma_chan,
					  dma_addr_t dst,
					  dma_addr_t src,
					  unsigned int len,
					  unsigned long flags)
{}

static struct dma_async_tx_descriptor *
pt_prep_dma_memcpy(struct dma_chan *dma_chan, dma_addr_t dst,
		   dma_addr_t src, size_t len, unsigned long flags)
{}

static struct dma_async_tx_descriptor *
pt_prep_dma_interrupt(struct dma_chan *dma_chan, unsigned long flags)
{}

static void pt_issue_pending(struct dma_chan *dma_chan)
{}

static enum dma_status
pt_tx_status(struct dma_chan *c, dma_cookie_t cookie,
		struct dma_tx_state *txstate)
{}

static int pt_pause(struct dma_chan *dma_chan)
{}

static int pt_resume(struct dma_chan *dma_chan)
{}

static int pt_terminate_all(struct dma_chan *dma_chan)
{}

int pt_dmaengine_register(struct pt_device *pt)
{}

void pt_dmaengine_unregister(struct pt_device *pt)
{}