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

Description

Device IN Endpoint 0 Transfer Size Register

Register Layout

Bits Access Reset Description
[6:0] RW 0x0 ALT_USB_DEV_DIEPTSIZ0_XFERSIZE
[18:7] ??? 0x0 UNDEFINED
[20:19] RW 0x0 ALT_USB_DEV_DIEPTSIZ0_PKTCNT
[31:21] ??? 0x0 UNDEFINED

Field : xfersize

Transfer Size (XferSize)

This field contains the transfer size in bytes for the current endpoint. The transfer size

(XferSize) = Sum of buffer sizes across all descriptors in the list for the endpoint.

In Buffer DMA, the core only interrupts the application after it has exhausted the transfer

size amount of data. The transfer size can be set to the maximum packet size of the

endpoint, to be interrupted at the end of each packet.

IN Endpoints: The core decrements this field every time a packet from the external

memory is written to the TxFIFO.

OUT Endpoints: The core decrements this field every time a packet is read from the

RxFIFO and written to the external memory.

Field Access Macros:

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_LSB   0
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_MSB   6
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_WIDTH   7
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_SET_MSK   0x0000007f
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_CLR_MSK   0xffffff80
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_RESET   0x0
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_GET(value)   (((value) & 0x0000007f) >> 0)
 
#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_SET(value)   (((value) << 0) & 0x0000007f)
 

Field : pktcnt

Packet Count (PktCnt)

Indicates the total number of USB packets that constitute the

Transfer Size amount of data For endpoint 0.

In Endpoints : This field is decremented every time a packet (maximum size or

short packet) is read from the TxFIFO.

OUT Endpoints: This field is decremented every time a packet (maximum size or

short packet) is written to the RxFIFO.

Field Access Macros:

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_LSB   19
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_MSB   20
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_WIDTH   2
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_SET_MSK   0x00180000
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_CLR_MSK   0xffe7ffff
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_RESET   0x0
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_GET(value)   (((value) & 0x00180000) >> 19)
 
#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_SET(value)   (((value) << 19) & 0x00180000)
 

Data Structures

struct  ALT_USB_DEV_DIEPTSIZ0_s
 

Macros

#define ALT_USB_DEV_DIEPTSIZ0_RESET   0x00000000
 
#define ALT_USB_DEV_DIEPTSIZ0_OFST   0x110
 
#define ALT_USB_DEV_DIEPTSIZ0_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPTSIZ0_OFST))
 

Typedefs

typedef struct
ALT_USB_DEV_DIEPTSIZ0_s 
ALT_USB_DEV_DIEPTSIZ0_t
 

Data Structure Documentation

struct ALT_USB_DEV_DIEPTSIZ0_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_DIEPTSIZ0.

Data Fields
uint32_t xfersize: 7 ALT_USB_DEV_DIEPTSIZ0_XFERSIZE
uint32_t __pad0__: 12 UNDEFINED
uint32_t pktcnt: 2 ALT_USB_DEV_DIEPTSIZ0_PKTCNT
uint32_t __pad1__: 11 UNDEFINED

Macro Definitions

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_LSB   0

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

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_MSB   6

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

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_WIDTH   7

The width in bits of the ALT_USB_DEV_DIEPTSIZ0_XFERSIZE register field.

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_SET_MSK   0x0000007f

The mask used to set the ALT_USB_DEV_DIEPTSIZ0_XFERSIZE register field value.

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_CLR_MSK   0xffffff80

The mask used to clear the ALT_USB_DEV_DIEPTSIZ0_XFERSIZE register field value.

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_RESET   0x0

The reset value of the ALT_USB_DEV_DIEPTSIZ0_XFERSIZE register field.

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_GET (   value)    (((value) & 0x0000007f) >> 0)

Extracts the ALT_USB_DEV_DIEPTSIZ0_XFERSIZE field value from a register.

#define ALT_USB_DEV_DIEPTSIZ0_XFERSIZE_SET (   value)    (((value) << 0) & 0x0000007f)

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

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_LSB   19

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

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_MSB   20

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

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_WIDTH   2

The width in bits of the ALT_USB_DEV_DIEPTSIZ0_PKTCNT register field.

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_SET_MSK   0x00180000

The mask used to set the ALT_USB_DEV_DIEPTSIZ0_PKTCNT register field value.

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_CLR_MSK   0xffe7ffff

The mask used to clear the ALT_USB_DEV_DIEPTSIZ0_PKTCNT register field value.

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_RESET   0x0

The reset value of the ALT_USB_DEV_DIEPTSIZ0_PKTCNT register field.

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_GET (   value)    (((value) & 0x00180000) >> 19)

Extracts the ALT_USB_DEV_DIEPTSIZ0_PKTCNT field value from a register.

#define ALT_USB_DEV_DIEPTSIZ0_PKTCNT_SET (   value)    (((value) << 19) & 0x00180000)

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

#define ALT_USB_DEV_DIEPTSIZ0_RESET   0x00000000

The reset value of the ALT_USB_DEV_DIEPTSIZ0 register.

#define ALT_USB_DEV_DIEPTSIZ0_OFST   0x110

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

#define ALT_USB_DEV_DIEPTSIZ0_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPTSIZ0_OFST))

The address of the ALT_USB_DEV_DIEPTSIZ0 register.

Typedef Documentation

The typedef declaration for register ALT_USB_DEV_DIEPTSIZ0.