Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * timb_dma.h timberdale FPGA DMA driver defines
0004  * Copyright (c) 2010 Intel Corporation
0005  */
0006 
0007 /* Supports:
0008  * Timberdale FPGA DMA engine
0009  */
0010 
0011 #ifndef _LINUX_TIMB_DMA_H
0012 #define _LINUX_TIMB_DMA_H
0013 
0014 /**
0015  * struct timb_dma_platform_data_channel - Description of each individual
0016  *  DMA channel for the timberdale DMA driver
0017  * @rx:         true if this channel handles data in the direction to
0018  *  the CPU.
0019  * @bytes_per_line: Number of bytes per line, this is specific for channels
0020  *  handling video data. For other channels this shall be left to 0.
0021  * @descriptors:    Number of descriptors to allocate for this channel.
0022  * @descriptor_elements: Number of elements in each descriptor.
0023  *
0024  */
0025 struct timb_dma_platform_data_channel {
0026     bool rx;
0027     unsigned int bytes_per_line;
0028     unsigned int descriptors;
0029     unsigned int descriptor_elements;
0030 };
0031 
0032 /**
0033  * struct timb_dma_platform_data - Platform data of the timberdale DMA driver
0034  * @nr_channels:    Number of defined channels in the channels array.
0035  * @channels:       Definition of the each channel.
0036  *
0037  */
0038 struct timb_dma_platform_data {
0039     unsigned nr_channels;
0040     struct timb_dma_platform_data_channel channels[32];
0041 };
0042 
0043 #endif