![]() |
Altera SoCAL
16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
|
Device IN Endpoint 4 Transfer Size Register
Register Layout
Bits | Access | Reset | Description |
---|---|---|---|
[18:0] | RW | 0x0 | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE |
[28:19] | RW | 0x0 | ALT_USB_DEV_DIEPTSIZ4_PKTCNT |
[30:29] | RW | 0x0 | ALT_USB_DEV_DIEPTSIZ4_MC |
[31] | ??? | 0x0 | UNDEFINED |
Field : xfersize | |
Transfer Size (XferSize) Indicates the transfer size in bytes For endpoint 0. The core interrupts the application only 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. The core decrements this field every time a packet from the external memory is written to the TxFIFO. Field Access Macros: | |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_LSB 0 |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_MSB 18 |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_WIDTH 19 |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_SET_MSK 0x0007ffff |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_CLR_MSK 0xfff80000 |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_RESET 0x0 |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_GET(value) (((value) & 0x0007ffff) >> 0) |
#define | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_SET(value) (((value) << 0) & 0x0007ffff) |
Field : pktcnt | |
Packet Count (PktCnt) Indicates the total number of USB packets that constitute the Transfer Size amount of data For endpoint 0. This field is decremented every time a packet (maximum size or short packet) is read from the TxFIFO. Field Access Macros: | |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_LSB 19 |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_MSB 28 |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_WIDTH 10 |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_SET_MSK 0x1ff80000 |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_CLR_MSK 0xe007ffff |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_RESET 0x0 |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_GET(value) (((value) & 0x1ff80000) >> 19) |
#define | ALT_USB_DEV_DIEPTSIZ4_PKTCNT_SET(value) (((value) << 19) & 0x1ff80000) |
Field : mc | |||||||||||||
Applies to IN endpoints only. For periodic IN endpoints, this field indicates the number of packets that must be transmitted per microframe on the USB. The core uses this field to calculate the data PID for isochronous IN endpoints. 2'b01: 1 packet 2'b10: 2 packets 2'b11: 3 packets For non-periodic IN endpoints, this field is valid only in Internal DMA mode. It specifies the number of packets the core must fetchfor an IN endpoint before it switches to the endpoint pointed to by the Next Endpoint field of the Device Endpoint-n Control register (DIEPCTLn.NextEp) Field Enumeration Values:
Field Access Macros: | |||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTONE 0x1 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTTWO 0x2 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTTHREE 0x3 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_LSB 29 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_MSB 30 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_WIDTH 2 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_SET_MSK 0x60000000 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_CLR_MSK 0x9fffffff | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_RESET 0x0 | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_GET(value) (((value) & 0x60000000) >> 29) | ||||||||||||
#define | ALT_USB_DEV_DIEPTSIZ4_MC_SET(value) (((value) << 29) & 0x60000000) | ||||||||||||
Data Structures | |
struct | ALT_USB_DEV_DIEPTSIZ4_s |
Macros | |
#define | ALT_USB_DEV_DIEPTSIZ4_RESET 0x00000000 |
#define | ALT_USB_DEV_DIEPTSIZ4_OFST 0x190 |
#define | ALT_USB_DEV_DIEPTSIZ4_ADDR(base) ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPTSIZ4_OFST)) |
Typedefs | |
typedef struct ALT_USB_DEV_DIEPTSIZ4_s | ALT_USB_DEV_DIEPTSIZ4_t |
struct ALT_USB_DEV_DIEPTSIZ4_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_DIEPTSIZ4.
Data Fields | ||
---|---|---|
uint32_t | xfersize: 19 | ALT_USB_DEV_DIEPTSIZ4_XFERSIZE |
uint32_t | pktcnt: 10 | ALT_USB_DEV_DIEPTSIZ4_PKTCNT |
uint32_t | mc: 2 | ALT_USB_DEV_DIEPTSIZ4_MC |
uint32_t | __pad0__: 1 | UNDEFINED |
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_LSB 0 |
The Least Significant Bit (LSB) position of the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_MSB 18 |
The Most Significant Bit (MSB) position of the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_WIDTH 19 |
The width in bits of the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_SET_MSK 0x0007ffff |
The mask used to set the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field value.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_CLR_MSK 0xfff80000 |
The mask used to clear the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field value.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_RESET 0x0 |
The reset value of the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_GET | ( | value | ) | (((value) & 0x0007ffff) >> 0) |
Extracts the ALT_USB_DEV_DIEPTSIZ4_XFERSIZE field value from a register.
#define ALT_USB_DEV_DIEPTSIZ4_XFERSIZE_SET | ( | value | ) | (((value) << 0) & 0x0007ffff) |
Produces a ALT_USB_DEV_DIEPTSIZ4_XFERSIZE register field value suitable for setting the register.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_LSB 19 |
The Least Significant Bit (LSB) position of the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_MSB 28 |
The Most Significant Bit (MSB) position of the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_WIDTH 10 |
The width in bits of the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_SET_MSK 0x1ff80000 |
The mask used to set the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field value.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_CLR_MSK 0xe007ffff |
The mask used to clear the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field value.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_RESET 0x0 |
The reset value of the ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_GET | ( | value | ) | (((value) & 0x1ff80000) >> 19) |
Extracts the ALT_USB_DEV_DIEPTSIZ4_PKTCNT field value from a register.
#define ALT_USB_DEV_DIEPTSIZ4_PKTCNT_SET | ( | value | ) | (((value) << 19) & 0x1ff80000) |
Produces a ALT_USB_DEV_DIEPTSIZ4_PKTCNT register field value suitable for setting the register.
#define ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTONE 0x1 |
Enumerated value for register field ALT_USB_DEV_DIEPTSIZ4_MC
1 packet
#define ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTTWO 0x2 |
Enumerated value for register field ALT_USB_DEV_DIEPTSIZ4_MC
2 packets
#define ALT_USB_DEV_DIEPTSIZ4_MC_E_PKTTHREE 0x3 |
Enumerated value for register field ALT_USB_DEV_DIEPTSIZ4_MC
3 packets
#define ALT_USB_DEV_DIEPTSIZ4_MC_LSB 29 |
The Least Significant Bit (LSB) position of the ALT_USB_DEV_DIEPTSIZ4_MC register field.
#define ALT_USB_DEV_DIEPTSIZ4_MC_MSB 30 |
The Most Significant Bit (MSB) position of the ALT_USB_DEV_DIEPTSIZ4_MC register field.
#define ALT_USB_DEV_DIEPTSIZ4_MC_WIDTH 2 |
The width in bits of the ALT_USB_DEV_DIEPTSIZ4_MC register field.
#define ALT_USB_DEV_DIEPTSIZ4_MC_SET_MSK 0x60000000 |
The mask used to set the ALT_USB_DEV_DIEPTSIZ4_MC register field value.
#define ALT_USB_DEV_DIEPTSIZ4_MC_CLR_MSK 0x9fffffff |
The mask used to clear the ALT_USB_DEV_DIEPTSIZ4_MC register field value.
#define ALT_USB_DEV_DIEPTSIZ4_MC_RESET 0x0 |
The reset value of the ALT_USB_DEV_DIEPTSIZ4_MC register field.
#define ALT_USB_DEV_DIEPTSIZ4_MC_GET | ( | value | ) | (((value) & 0x60000000) >> 29) |
Extracts the ALT_USB_DEV_DIEPTSIZ4_MC field value from a register.
#define ALT_USB_DEV_DIEPTSIZ4_MC_SET | ( | value | ) | (((value) << 29) & 0x60000000) |
Produces a ALT_USB_DEV_DIEPTSIZ4_MC register field value suitable for setting the register.
#define ALT_USB_DEV_DIEPTSIZ4_RESET 0x00000000 |
The reset value of the ALT_USB_DEV_DIEPTSIZ4 register.
#define ALT_USB_DEV_DIEPTSIZ4_OFST 0x190 |
The byte offset of the ALT_USB_DEV_DIEPTSIZ4 register from the beginning of the component.
#define ALT_USB_DEV_DIEPTSIZ4_ADDR | ( | base | ) | ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_USB_DEV_DIEPTSIZ4_OFST)) |
The address of the ALT_USB_DEV_DIEPTSIZ4 register.
typedef struct ALT_USB_DEV_DIEPTSIZ4_s ALT_USB_DEV_DIEPTSIZ4_t |
The typedef declaration for register ALT_USB_DEV_DIEPTSIZ4.