Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : Device IN Endpoint Transmit FIFO Size Register 1 - dieptxf1

Description

This register holds the size and memory start address of IN endpoint TxFIFOs implemented in Device mode. Each FIFO holds the data for one IN endpoint. This register is repeated for each instantiated IN endpoint FIFO. For IN endpoint FIFO 0 use GNPTXFSIZ register for programming the size and memory start address.

Register Layout

Bits Access Reset Description
[14:0] RW 0x4000 IN Endpoint FIFOn Transmit RAM Start Address
[15] ??? 0x0 UNDEFINED
[29:16] RW 0x2000 IN Endpoint TxFIFO Depth
[31:30] ??? 0x0 UNDEFINED

Field : IN Endpoint FIFOn Transmit RAM Start Address - inepntxfstaddr

This field contains the memory start address for IN endpoint Transmit FIFO 1.

Field Access Macros:

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_LSB   0
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_MSB   14
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_WIDTH   15
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_SET_MSK   0x00007fff
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_CLR_MSK   0xffff8000
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_RESET   0x4000
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_GET(value)   (((value) & 0x00007fff) >> 0)
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_SET(value)   (((value) << 0) & 0x00007fff)
 

Field : IN Endpoint TxFIFO Depth - inepntxfdep

This value is in terms of 32-bit words.

Minimum value is 16

Maximum value is 8192.

Field Access Macros:

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_LSB   16
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_MSB   29
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_WIDTH   14
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_SET_MSK   0x3fff0000
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_CLR_MSK   0xc000ffff
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_RESET   0x2000
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_GET(value)   (((value) & 0x3fff0000) >> 16)
 
#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_SET(value)   (((value) << 16) & 0x3fff0000)
 

Data Structures

struct  ALT_USB_GLOB_DIEPTXF1_s
 

Macros

#define ALT_USB_GLOB_DIEPTXF1_OFST   0x104
 
#define ALT_USB_GLOB_DIEPTXF1_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_GLOB_DIEPTXF1_OFST))
 

Typedefs

typedef struct
ALT_USB_GLOB_DIEPTXF1_s 
ALT_USB_GLOB_DIEPTXF1_t
 

Data Structure Documentation

struct ALT_USB_GLOB_DIEPTXF1_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_GLOB_DIEPTXF1.

Data Fields
uint32_t inepntxfstaddr: 15 IN Endpoint FIFOn Transmit RAM Start Address
uint32_t __pad0__: 1 UNDEFINED
uint32_t inepntxfdep: 14 IN Endpoint TxFIFO Depth
uint32_t __pad1__: 2 UNDEFINED

Macro Definitions

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_LSB   0

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

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_MSB   14

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

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_WIDTH   15

The width in bits of the ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR register field.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_SET_MSK   0x00007fff

The mask used to set the ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR register field value.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_CLR_MSK   0xffff8000

The mask used to clear the ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR register field value.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_RESET   0x4000

The reset value of the ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR register field.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_GET (   value)    (((value) & 0x00007fff) >> 0)

Extracts the ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR field value from a register.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFSTADDR_SET (   value)    (((value) << 0) & 0x00007fff)

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

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_LSB   16

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

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_MSB   29

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

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_WIDTH   14

The width in bits of the ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP register field.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_SET_MSK   0x3fff0000

The mask used to set the ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP register field value.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_CLR_MSK   0xc000ffff

The mask used to clear the ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP register field value.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_RESET   0x2000

The reset value of the ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP register field.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_GET (   value)    (((value) & 0x3fff0000) >> 16)

Extracts the ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP field value from a register.

#define ALT_USB_GLOB_DIEPTXF1_INEPNTXFDEP_SET (   value)    (((value) << 16) & 0x3fff0000)

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

#define ALT_USB_GLOB_DIEPTXF1_OFST   0x104

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

#define ALT_USB_GLOB_DIEPTXF1_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_GLOB_DIEPTXF1_OFST))

The address of the ALT_USB_GLOB_DIEPTXF1 register.

Typedef Documentation

The typedef declaration for register ALT_USB_GLOB_DIEPTXF1.