Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : diepdma4

Description

Device IN Endpoint 4 DMA Address Register

Register Layout

Bits Access Reset Description
[31:0] RW Unknown ALT_USB_DEV_DIEPDMA4_DIEPDMA4

Field : diepdma4

Holds the start address of the external memory for storing or fetching endpoint

data.

Note: For control endpoints, this field stores control OUT data packets as well as

SETUP transaction data packets. When more than three SETUP packets are

received back-to-back, the SETUP data packet in the memory is overwritten.

This register is incremented on every AHB transaction. The application can give

only a DWORD-aligned address.

When Scatter/Gather DMA mode is not enabled, the application programs the

start address value in this field.

When Scatter/Gather DMA mode is enabled, this field indicates the base

pointer for the descriptor list.

Field Access Macros:

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_LSB   0
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_MSB   31
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_WIDTH   32
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_SET_MSK   0xffffffff
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_CLR_MSK   0x00000000
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_RESET   0x0
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_GET(value)   (((value) & 0xffffffff) >> 0)
 
#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_SET(value)   (((value) << 0) & 0xffffffff)
 

Data Structures

struct  ALT_USB_DEV_DIEPDMA4_s
 

Macros

#define ALT_USB_DEV_DIEPDMA4_RESET   0x00000000
 
#define ALT_USB_DEV_DIEPDMA4_OFST   0x194
 
#define ALT_USB_DEV_DIEPDMA4_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPDMA4_OFST))
 

Typedefs

typedef struct
ALT_USB_DEV_DIEPDMA4_s 
ALT_USB_DEV_DIEPDMA4_t
 

Data Structure Documentation

struct ALT_USB_DEV_DIEPDMA4_s

WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.

The struct declaration for register ALT_USB_DEV_DIEPDMA4.

Data Fields
uint32_t diepdma4: 32 ALT_USB_DEV_DIEPDMA4_DIEPDMA4

Macro Definitions

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_LSB   0

The Least Significant Bit (LSB) position of the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_MSB   31

The Most Significant Bit (MSB) position of the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_WIDTH   32

The width in bits of the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_SET_MSK   0xffffffff

The mask used to set the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field value.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_CLR_MSK   0x00000000

The mask used to clear the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field value.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_RESET   0x0

The reset value of the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field is UNKNOWN.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_GET (   value)    (((value) & 0xffffffff) >> 0)

Extracts the ALT_USB_DEV_DIEPDMA4_DIEPDMA4 field value from a register.

#define ALT_USB_DEV_DIEPDMA4_DIEPDMA4_SET (   value)    (((value) << 0) & 0xffffffff)

Produces a ALT_USB_DEV_DIEPDMA4_DIEPDMA4 register field value suitable for setting the register.

#define ALT_USB_DEV_DIEPDMA4_RESET   0x00000000

The reset value of the ALT_USB_DEV_DIEPDMA4 register.

#define ALT_USB_DEV_DIEPDMA4_OFST   0x194

The byte offset of the ALT_USB_DEV_DIEPDMA4 register from the beginning of the component.

#define ALT_USB_DEV_DIEPDMA4_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPDMA4_OFST))

The address of the ALT_USB_DEV_DIEPDMA4 register.

Typedef Documentation

The typedef declaration for register ALT_USB_DEV_DIEPDMA4.