Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : Non-periodic Transmit FIFO Queue Status Register - gnptxsts

Description

In Device mode, this register is valid only in Shared FIFO operation. It contains the free space information for the Non-periodic TxFIFO and the Nonperiodic Transmit RequestQueue

Register Layout

Bits Access Reset Description
[15:0] R 0x400 Non-periodic TxFIFO Space Avail
[23:16] R 0x8 Non-periodic Transmit Request Queue Space Available
[30:24] R 0x0 Top of the Non-periodic Transmit Request Queue
[31] ??? 0x0 UNDEFINED

Field : Non-periodic TxFIFO Space Avail - nptxfspcavail

Indicates the amount of free space available in the Non-periodic TxFIFO.Values are in terms of 32-bit words. 16h0: Non-periodic TxFIFO is full 16h1: 1 word available 16h2: 2 words available 16hn: n words available (where 0 n 32,768) 16h8000: 32,768 words available Others: Reserved

Field Access Macros:

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_LSB   0
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_MSB   15
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_WIDTH   16
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_SET_MSK   0x0000ffff
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_CLR_MSK   0xffff0000
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_RESET   0x400
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_GET(value)   (((value) & 0x0000ffff) >> 0)
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_SET(value)   (((value) << 0) & 0x0000ffff)
 

Field : Non-periodic Transmit Request Queue Space Available - nptxqspcavail

Indicates the amount of free space available in the Non-periodic Transmit Request Queue. This queue holds both IN and OUT requests in Host mode. Device mode has only IN requests. -Others: Reserved

Field Enumeration Values:

Enum Value Description
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_FULL 0x0 Non-periodic Transmit Request Queue is full
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE1 0x1 1 location available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE2 0x2 2 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE3 0x3 3 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE4 0x4 4 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE5 0x5 5 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE6 0x6 6 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE7 0x7 7 locations available
ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE8 0x8 8 locations available

Field Access Macros:

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_FULL   0x0
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE1   0x1
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE2   0x2
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE3   0x3
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE4   0x4
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE5   0x5
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE6   0x6
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE7   0x7
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE8   0x8
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_LSB   16
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_MSB   23
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_WIDTH   8
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_SET_MSK   0x00ff0000
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_CLR_MSK   0xff00ffff
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_RESET   0x8
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_GET(value)   (((value) & 0x00ff0000) >> 16)
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_SET(value)   (((value) << 16) & 0x00ff0000)
 

Field : Top of the Non-periodic Transmit Request Queue - nptxqtop

Entry in the Non-periodic Tx Request Queue that is currently being processed by the MAC.

  • Bits [30:27]: Channel/endpoint number
  • Bits [26:25]:
  • Bit [24]: Terminate (last Entry for selected channel endpoint)

Field Enumeration Values:

Enum Value Description
ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_INOUTTK 0x0 IN/OUT token
ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_ZEROTX 0x1 Zero-length transmit packet (device IN/host OUT)
ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_PINGCSPLIT 0x2 PING/CSPLIT token
ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_CHNHALT 0x3 Channel halt command

Field Access Macros:

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_INOUTTK   0x0
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_ZEROTX   0x1
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_PINGCSPLIT   0x2
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_CHNHALT   0x3
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_LSB   24
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_MSB   30
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_WIDTH   7
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_SET_MSK   0x7f000000
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_CLR_MSK   0x80ffffff
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_RESET   0x0
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_GET(value)   (((value) & 0x7f000000) >> 24)
 
#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_SET(value)   (((value) << 24) & 0x7f000000)
 

Data Structures

struct  ALT_USB_GLOB_GNPTXSTS_s
 

Macros

#define ALT_USB_GLOB_GNPTXSTS_OFST   0x2c
 
#define ALT_USB_GLOB_GNPTXSTS_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_GLOB_GNPTXSTS_OFST))
 

Typedefs

typedef struct
ALT_USB_GLOB_GNPTXSTS_s 
ALT_USB_GLOB_GNPTXSTS_t
 

Data Structure Documentation

struct ALT_USB_GLOB_GNPTXSTS_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_GNPTXSTS.

Data Fields
const uint32_t nptxfspcavail: 16 Non-periodic TxFIFO Space Avail
const uint32_t nptxqspcavail: 8 Non-periodic Transmit Request Queue Space Available
const uint32_t nptxqtop: 7 Top of the Non-periodic Transmit Request Queue
uint32_t __pad0__: 1 UNDEFINED

Macro Definitions

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_LSB   0

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_MSB   15

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_WIDTH   16

The width in bits of the ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_SET_MSK   0x0000ffff

The mask used to set the ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_CLR_MSK   0xffff0000

The mask used to clear the ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_RESET   0x400

The reset value of the ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_GET (   value)    (((value) & 0x0000ffff) >> 0)

Extracts the ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL field value from a register.

#define ALT_USB_GLOB_GNPTXSTS_NPTXFSPCAVAIL_SET (   value)    (((value) << 0) & 0x0000ffff)

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_FULL   0x0

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

Non-periodic Transmit Request Queue is full

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE1   0x1

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

1 location available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE2   0x2

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

2 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE3   0x3

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

3 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE4   0x4

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

4 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE5   0x5

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

5 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE6   0x6

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

6 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE7   0x7

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

7 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_E_QUE8   0x8

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL

8 locations available

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_LSB   16

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_MSB   23

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_WIDTH   8

The width in bits of the ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_SET_MSK   0x00ff0000

The mask used to set the ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_CLR_MSK   0xff00ffff

The mask used to clear the ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_RESET   0x8

The reset value of the ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_GET (   value)    (((value) & 0x00ff0000) >> 16)

Extracts the ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL field value from a register.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQSPCAVAIL_SET (   value)    (((value) << 16) & 0x00ff0000)

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_INOUTTK   0x0

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQTOP

IN/OUT token

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_ZEROTX   0x1

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQTOP

Zero-length transmit packet (device IN/host OUT)

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_PINGCSPLIT   0x2

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQTOP

PING/CSPLIT token

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_E_CHNHALT   0x3

Enumerated value for register field ALT_USB_GLOB_GNPTXSTS_NPTXQTOP

Channel halt command

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_LSB   24

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_MSB   30

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

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_WIDTH   7

The width in bits of the ALT_USB_GLOB_GNPTXSTS_NPTXQTOP register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_SET_MSK   0x7f000000

The mask used to set the ALT_USB_GLOB_GNPTXSTS_NPTXQTOP register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_CLR_MSK   0x80ffffff

The mask used to clear the ALT_USB_GLOB_GNPTXSTS_NPTXQTOP register field value.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_RESET   0x0

The reset value of the ALT_USB_GLOB_GNPTXSTS_NPTXQTOP register field.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_GET (   value)    (((value) & 0x7f000000) >> 24)

Extracts the ALT_USB_GLOB_GNPTXSTS_NPTXQTOP field value from a register.

#define ALT_USB_GLOB_GNPTXSTS_NPTXQTOP_SET (   value)    (((value) << 24) & 0x7f000000)

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

#define ALT_USB_GLOB_GNPTXSTS_OFST   0x2c

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

#define ALT_USB_GLOB_GNPTXSTS_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_GLOB_GNPTXSTS_OFST))

The address of the ALT_USB_GLOB_GNPTXSTS register.

Typedef Documentation

The typedef declaration for register ALT_USB_GLOB_GNPTXSTS.