Hilscher netX microcontroller driver  V0.0.5.0
Documentation of the netX driver package
netx_drv_dmac.h File Reference

Header file of DMAC DRV module. More...

#include "netx_drv.h"
Include dependency graph for netx_drv_dmac.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

union  DRV_DMAC_LINKED_LIST_ELEMENT_CONTROL_E
 Definition of the dmacs linked list element control union. More...
 
struct  DRV_DMAC_LINKED_LIST_ELEMENT_T
 The dmac linked list element. More...
 
struct  DRV_DMAC_CONFIGURATION_T
 The configuration of the driver. More...
 
struct  DRV_DMAC_HANDLE_T
 The handle of the DMAC driver. More...
 

Typedefs

typedef __PACKED_STRUCT DRV_DMAC_CONTROL_Ttag
 Defines the control structure for a list item, defining a transfer element. More...
 

Enumerations

enum  DRV_DMAC_STATE_E { DRV_DMAC_STATUS_UNKNOWN = 0x0u }
 State of the dmachannel. This is not used at the moment. More...
 
enum  DRV_DMAC_FLOW__E {
  DRV_DMAC_FLOW_MEM_TO_MEM_BY_DMAC = 0u,
  DRV_DMAC_FLOW_MEM_TO_PER_BY_DMAC = 1u,
  DRV_DMAC_FLOW_PER_TO_MEM_BY_DMAC = 2u,
  DRV_DMAC_FLOW_PER_TO_PER_BY_DMAC = 3u,
  DRV_DMAC_FLOW_PER_TO_PER_BY_DPER = 4u,
  DRV_DMAC_FLOW_MEM_TO_PER_BY_PER = 5u,
  DRV_DMAC_FLOW_PER_TO_MEM_BY_PER = 6u,
  DRV_DMAC_FLOW_PER_TO_PER_BY_SPER = 7u
}
 Type definition for the DMAC flow direction and who is controlling it. More...
 
enum  DRV_DMAC_TRANSFER_WIDTH_E {
  DRV_DMAC_TRANSFER_WIDTH_8b = 0u,
  DRV_DMAC_TRANSFER_WIDTH_16b = 1u,
  DRV_DMAC_TRANSFER_WIDTH_32b = 2u,
  DRV_DMAC_TRANSFER_WIDTH_MIN = DRV_DMAC_TRANSFER_WIDTH_8b,
  DRV_DMAC_TRANSFER_WIDTH_MAX = DRV_DMAC_TRANSFER_WIDTH_32b
}
 The width of a dmac transfer. More...
 
enum  DRV_DMAC_FLOW_CONTROLLER_E {
  DRV_DMAC_FLOW_CONTROLLER_DMAC = 0u,
  DRV_DMAC_FLOW_CONTROLLER_PER = 1u
}
 Enumeration of the possible types of the flow control. More...
 
enum  DRV_DMAC_INCREMENTATION_E {
  DRV_DMAC_INCREMENTATION_INACTIVE = 0x0u,
  DRV_DMAC_INCREMENTATION_ACTIVE = 0x1u
}
 Typedef for the option if the pointer for the copy data is iterated or not. More...
 
enum  DRV_DMAC_GENERATE_TERMINAL_INTERRUPT_E {
  DRV_DMAC_GENERATE_TERMINAL_INTERRUPT_INACTIVE = 0x0u,
  DRV_DMAC_GENERATE_TERMINAL_INTERRUPT_ACTIVE = 0x1u
}
 Typedef to define if the dmac will generate an interrupt after a list element was processed. More...
 
enum  DRV_DMAC_ARM_EQ_E {
  DRV_DMAC_ARM_EQ_SINGLE_REQUESTS = 0x0u,
  DRV_DMAC_ARM_EQ_BURST_REQUESTS = 0x1u,
  DRV_DMAC_ARM_EQ_DEFAULT = DRV_DMAC_ARM_EQ_BURST_REQUESTS
}
 Defines the burst mode. In arm environments, burst accesses shall be used in default. More...
 

Functions

enum __ALIGNED (4) DRV_DMAC_BURST_TRANSFER_SIZE_Etag
 A burst transfers size. More...
 

Variables

 DRV_DMAC_BURST_TRANSFER_SIZE_E
 
DRV_DMAC_BURST_TRANSFER_SIZE_E eSourceBurstSize
 
DRV_DMAC_BURST_TRANSFER_SIZE_E eDestBurstSize
 
DRV_DMAC_TRANSFER_WIDTH_E eSourceTransferWidth
 
DRV_DMAC_TRANSFER_WIDTH_E eDestTransferWidth
 
DRV_DMAC_ARM_EQ_E eArmEq
 
uint32_t reserved1
 
DRV_DMAC_INCREMENTATION_E eSourceIncrementation
 
DRV_DMAC_INCREMENTATION_E eDestIncrementation
 
uint32_t ulProtection
 
DRV_DMAC_GENERATE_TERMINAL_INTERRUPT_E eGenerateTerminalInterrupt
 
 DRV_DMAC_CONTROL_T
 

Detailed Description

Header file of DMAC DRV module.

Revision
4538
Date
2018-11-22 17:26:55 +0100 (Do, 22 Nov 2018)
Note
Exclusion of Liability for this demo software: The following software is intended for and must only be used for reference and in an evaluation laboratory environment. It is provided without charge and is subject to alterations. There is no warranty for the software, to the extent permitted by applicable law. Except when otherwise stated in writing the copyright holders and/or other parties provide the software "as is" without warranty of any kind, either expressed or implied. Please refer to the Agreement in README_DISCLAIMER.txt, provided together with this file! By installing or otherwise using the software, you accept the terms of this Agreement. If you do not agree to the terms of this Agreement, then do not install or use the Software!

Definition in file netx_drv_dmac.h.