GAHBCFG

         AHB Configuration Register
      
Module Instance Base Address Register Address
i_usbotg_0_DWC_otg_intreg 0xFFB00000 0xFFB00008
i_usbotg_1_DWC_otg_intreg 0xFFB40000 0xFFB40008

Size: 32

Offset: 0x8

Access: RW

Important: The value of a reserved bit must be maintained in software. When you modify registers containing reserved bit fields, you must use a read-modify-write operation to preserve state and prevent indeterminate system behavior.
Bit Fields
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16

RESERVED1

RO 0x0

InvDescEndianess

RW 0x0

AHBSingle

RW 0x0

NotiAllDmaWrit

RW 0x0

RemMemSupp

RW 0x0

Reserved

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Reserved

PTxFEmpLvl

RW 0x0

NPTxFEmpLvl

RW 0x0

RESERVED

RO 0x0

DMAEn

RW 0x0

HBstLen

RW 0x0

GlblIntrMsk

RW 0x0

GAHBCFG Fields

Bit Name Description Access Reset
31:25 RESERVED1
RESERVED
RO 0x0
24 InvDescEndianess
Invert Descriptor Endianess (InvDescEndianess)
1'b0: Descriptor Endianness is same as AHB Master Endianness
1'b1: Descriptor Endianness is Little Endian if AHB Master Endianness is Big Endian. 
Descriptor Endianness is Big Endian if AHB Master Endianness is Little Endian. 
Value Description
0x0 Descriptor Endianness is same as AHB Master Endianness
0x1 Descriptor Endianness is opposite to AHB Master Endianness
RW 0x0
23 AHBSingle
AHB Single Support (AHBSingle)
This bit when programmed supports Single transfers for the remaining data in a 
transfer when the DWC_otg core is operating in DMA mode. 
1'b0: The remaining data in the transfer is sent using INCR burst size.  
1'b1: The remaining data in the transfer is sent using Single 
      burst size. 
Note: if this feature is enabled, the AHB RETRY and SPLIT transfers still have INCR 
burst type. Enable this feature when the AHB Slave connected to the DWC_otg core does 
not support INCR burst (and when Split, and Retry transactions are not being used 
in the bus).
Value Description
0x0 The remaining data in the transfer is sent using INCR burst size
0x1 The remaining data in the transfer is sent using Single burst size
RW 0x0
22 NotiAllDmaWrit
Notify All Dma Write Transactions (NotiAllDmaWrit)
This bit is programmed to enable the System DMA Done functionality for all
the DMA write Transactions corresponding to the Channel/Endpoint. This bit
is valid only when GAHBCFG.RemMemSupp is set to 1.
 GAHBCFG.NotiAllDmaWrit = 1
- HSOTG core asserts int_dma_req for all the DMA write transactions on
the AHB interface along with int_dma_done, chep_last_transact and
chep_number signal informations. The core waits for sys_dma_done
signal for all the DMA write transactions in order to complete the transfer
of a particular Channel/Endpoint.
 GAHBCFG.NotiAllDmaWrit = 0
- HSOTG core asserts int_dma_req signal only for the last transaction of
DMA write transfer corresponding to a particular Channel/Endpoint.
Similarly, the core waits for sys_dma_done signal only for that
transaction of DMA write to complete the transfer of a particular
Channel/Endpoint.
Value Description
0x0 DWC_otg core asserts int_dma_req signal only for the last transaction of DMA write transfer corresponding to a particular Channel/Endpoint. Similarly, the core waits for sys_dma_done signal only for that transaction of DMA write to complete the transfer of a particular Channel/Endpoint
0x1 DWC_otg core asserts int_dma_req for all the DMA write transactions on the AHB interface along with int_dma_done, chep_last_transact and chep_number signal informations. The core waits for sys_dma_done signal for all the DMA write transactions in order to complete the transfer of a particular Channel/Endpoint
RW 0x0
21 RemMemSupp
Remote Memory Support (RemMemSupp)
This bit is programmed to enable the functionality to wait for the system DMA
Done Signal for the DMA Write Transfers.
 GAHBCFG.RemMemSupp=1
- The int_dma_req output signal is asserted when HSOTG DMA starts
write transfer to the external memory. When the core is done with the
Transfers it asserts int_dma_done signal to flag the completion of DMA
writes from HSOTG. The core then waits for sys_dma_done signal from
the system to proceed further and complete the Data Transfer
corresponding to a particular Channel/Endpoint.
 GAHBCFG.RemMemSupp=0
- The int_dma_req and int_dma_done signals are not asserted and the
core proceeds with the assertion of the XferComp interrupt as soon as
the DMA write transfer is done at the HSOTG Core Boundary and it
doesn't wait for the sys_dma_done signal to complete the DATA transfers
Value Description
0x0 Remote Memory Support Feature disabled
0x1 Remote Memory Support Feature enabled
RW 0x0
8 PTxFEmpLvl
Mode:Host only
Periodic TxFIFO Empty Level (PTxFEmpLvl)
Indicates when the Periodic TxFIFO Empty Interrupt bit in the
Core Interrupt register (GINTSTS.PTxFEmp) is triggered. This
bit is used only in Slave mode.
 1'b0: GINTSTS.PTxFEmp interrupt indicates that the
Periodic TxFIFO is half empty
 1'b1: GINTSTS.PTxFEmp interrupt indicates that the
Periodic TxFIFO is completely empty
Value Description
0x0 GINTSTS.PTxFEmp interrupt indicates that the Periodic TxFIFO is half empty
0x1 GINTSTS.PTxFEmp interrupt indicates that the Periodic TxFIFO is completely empty
RW 0x0
7 NPTxFEmpLvl
Mode:Host and device
Non-Periodic TxFIFO Empty Level (NPTxFEmpLvl)
This bit is used only in Slave mode.
In host mode and with Shared FIFO with device mode, this bit
indicates when the Non-Periodic TxFIFO Empty Interrupt bit in
the Core Interrupt register (GINTSTS.NPTxFEmp) is triggered.
With dedicated FIFO in device mode, this bit indicates when IN
endpoint Transmit FIFO empty interrupt (DIEPINTn.TxFEmp) is
triggered.
Host mode and with Shared FIFO with device mode:-
 1'b0: GINTSTS.NPTxFEmp interrupt indicates that the Non-
Periodic TxFIFO is half empty
 1'b1: GINTSTS.NPTxFEmp interrupt indicates that the Non-
Periodic TxFIFO is completely empty
Dedicated FIFO in device mode :-
 1'b0: DIEPINTn.TxFEmp interrupt indicates that the IN
Endpoint TxFIFO is half empty
 1'b1: DIEPINTn.TxFEmp interrupt indicates that the IN
Endpoint TxFIFO is completely empty
Value Description
0x0 DIEPINTn.TxFEmp interrupt indicates that the Non-Periodic TxFIFO is half empty or that the IN Endpoint TxFIFO is half empty
0x1 GINTSTS.NPTxFEmp interrupt indicates that the Non-Periodic TxFIFO is completely empty or that the IN Endpoint TxFIFO is completely empty
RW 0x0
6 RESERVED
RESERVED
RO 0x0
5 DMAEn
Mode:Host and device
DMA Enable (DMAEn)
 1'b0: Core operates in Slave mode
 1'b1: Core operates in a DMA mode
This bit is always 0 when Slave-Only mode has been selected
Value Description
0x0 Core operates in Slave mode
0x1 Core operates in a DMA mode
RW 0x0
4:1 HBstLen
Mode:Host and device
Burst Length/Type (HBstLen)
This field is used in both External and Internal DMA modes. In
External DMA mode, these bits appear on dma_burst[3:0] ports,
which can be used by an external wrapper to interface the
External DMA Controller interface to Synopsys DW_ahb_dmac
or ARM PrimeCell.
External DMA Mode defines the DMA burst length in terms of
32-bit words:
 4'b0000: 1 word
 4'b0001: 4 words
 4'b0010: 8 words
 4'b0011: 16 words
 4'b0100: 32 words
 4'b0101: 64 words
 4'b0110: 128 words
 4'b0111: 256 words
 Others: Reserved
Internal DMA ModeAHB Master burst type:
 4'b0000 Single
 4'b0001 INCR
 4'b0011 INCR4
 4'b0101 INCR8
 4'b0111 INCR16
 Others: Reserved
Value Description
0x0 1 word or single
0x1 4 words or INCR
0x2 8 words
0x3 16 words or INCR4
0x4 32 words
0x5 64 words or INCR8
0x6 128 words
0x7 256 words or INCR16
0x8 Others reserved
RW 0x0
0 GlblIntrMsk
Mode:Host and device
Global Interrupt Mask (GlblIntrMsk)
The application uses this bit to mask or unmask the interrupt line
assertion to itself. Irrespective of this bit's setting, the interrupt
status registers are updated by the core.
 1'b0: Mask the interrupt assertion to the application.
 1'b1: Unmask the interrupt assertion to the application.
Value Description
0x0 Mask the interrupt assertion to the application
0x1 Unmask the interrupt assertion to the application.
RW 0x0