![]() |
Altera SoCAL
16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
|
USB OTG Controller Module Registers
Registers in the USB OTG Controller Module.
Only the Core Global, Power and Clock Gating, Data FIFO Access, and Host Port registers can be accessedin both Host and Device modes. When the USB OTG Controller is operating in one mode, either Device or Host, the application must not access registers from the other mode. If an illegal access occurs, a Mode Mismatch interrupt is generated and reflected in the Core Interrupt register (GINTSTS.ModeMis).
When the core switches from one mode to another, the registers in the new mode must be reprogrammed as they would be after a power-on reset.
The register address map is fixed and does not depend on the module configuration (for example, how many endpoints are implemented). Host and Device mode registers occupy different addresses.
Data Structures | |
struct | ALT_USB_s |
struct | ALT_USB_raw_s |
Typedefs | |
typedef struct ALT_USB_s | ALT_USB_t |
typedef struct ALT_USB_raw_s | ALT_USB_raw_t |
struct ALT_USB_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 group ALT_USB.
Data Fields | ||
---|---|---|
volatile ALT_USB_GLOB_t | globgrp | ALT_USB_GLOB |
volatile uint32_t | _pad_0x140_0x3ff | UNDEFINED |
volatile ALT_USB_HOST_t | hostgrp | ALT_USB_HOST |
volatile uint32_t | _pad_0x6fc_0x7ff | UNDEFINED |
volatile ALT_USB_DEV_t | devgrp | ALT_USB_DEV |
volatile uint32_t | _pad_0xd00_0xdff | UNDEFINED |
volatile ALT_USB_PWRCLK_t | pwrclkgrp | ALT_USB_PWRCLK |
volatile uint32_t | _pad_0xe04_0x40000 | UNDEFINED |
struct ALT_USB_raw_s |
The struct declaration for the raw register contents of register group ALT_USB.
Data Fields | ||
---|---|---|
volatile ALT_USB_GLOB_raw_t | globgrp | ALT_USB_GLOB |
volatile uint32_t | _pad_0x140_0x3ff | UNDEFINED |
volatile ALT_USB_HOST_raw_t | hostgrp | ALT_USB_HOST |
volatile uint32_t | _pad_0x6fc_0x7ff | UNDEFINED |
volatile ALT_USB_DEV_raw_t | devgrp | ALT_USB_DEV |
volatile uint32_t | _pad_0xd00_0xdff | UNDEFINED |
volatile ALT_USB_PWRCLK_raw_t | pwrclkgrp | ALT_USB_PWRCLK |
volatile uint32_t | _pad_0xe04_0x40000 | UNDEFINED |
typedef struct ALT_USB_raw_s ALT_USB_raw_t |
The typedef declaration for the raw register contents of register group ALT_USB.