stm32 /stm32h7rs /STM32H7S /OTG_HS /OTG_GLPMCFG

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as OTG_GLPMCFG

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (B_0x0)LPMEN 0 (B_0x0)LPMACK 0 (B_0x0)BESL0 (REMWAKE)REMWAKE 0 (L1SSEN)L1SSEN 0 (B_0x0)BESLTHRS 0 (L1DSEN)L1DSEN 0 (B_0x0)LPMRSP 0 (B_0x0)SLPSTS 0 (B_0x0)L1RSMOK 0LPMCHIDX 0LPMRCNT 0 (SNDLPM)SNDLPM 0LPMRCNTSTS 0 (B_0x0)ENBESL

LPMRSP=B_0x0, LPMEN=B_0x0, BESL=B_0x0, L1RSMOK=B_0x0, SLPSTS=B_0x0, ENBESL=B_0x0, LPMACK=B_0x0, BESLTHRS=B_0x0

Description

OTG core LPM configuration register

Fields

LPMEN

LPM support enable The application uses this bit to control the OTG_HS core LPM capabilities. If the core operates as a non-LPM-capable host, it cannot request the connected device or hub to activate LPM mode. If the core operates as a non-LPM-capable device, it cannot respond to any LPM transactions.

0 (B_0x0): LPM capability is not enabled

1 (B_0x1): LPM capability is enabled

LPMACK

LPM token acknowledge enable Handshake response to LPM token preprogrammed by device application software. Even though ACK is preprogrammed, the core device responds with ACK only on successful LPM transaction. The LPM transaction is successful if: No PID/CRC5 errors in either EXT token or LPM token (else ERROR) Valid bLinkState = 0001B (L1) received in LPM transaction (else STALL) No data pending in transmit queue (else NYET). The preprogrammed software bit is over-ridden for response to LPM token when: The received bLinkState is not L1 (STALL response), or An error is detected in either of the LPM token packets because of corruption (ERROR response). Note: Accessible only in device mode.

0 (B_0x0): NYET

1 (B_0x1): ACK

BESL

Best effort service latency Host mode

0 (B_0x0): 125

1 (B_0x1): 150

2 (B_0x2): 200

3 (B_0x3): 300

4 (B_0x4): 400

5 (B_0x5): 500

6 (B_0x6): 1000

7 (B_0x7): 2000

8 (B_0x8): 3000

9 (B_0x9): 4000

10 (B_0xA): 5000

11 (B_0xB): 6000

12 (B_0xC): 7000

13 (B_0xD): 8000

14 (B_0xE): 9000

15 (B_0xF): 10000

REMWAKE

bRemoteWake value Host mode: The value of remote wake up to be sent in the wIndex field of LPM transaction. Device mode (read-only): This field is updated with the received LPM token bRemoteWake bmAttribute when an ACK, NYET, or STALL response is sent to an LPM transaction.

L1SSEN

L1 Shallow Sleep enable Enables suspending the PHY in L1 Sleep mode. For maximum power saving during L1 Sleep mode, this bit should be set to ‘1’ by application SW in all the cases.

BESLTHRS

BESL threshold

0 (B_0x0): 75

1 (B_0x1): 100

2 (B_0x2): 150

3 (B_0x3): 250

4 (B_0x4): 350

5 (B_0x5): 450

6 (B_0x6): 950

L1DSEN

L1 deep sleep enable Enables suspending the PHY in L1 Sleep mode. For maximum power saving during L1 Sleep mode, this bit should be set to ‘1’ by application SW in all the cases.

LPMRSP

LPM response Device mode: The response of the core to LPM transaction received is reflected in these two bits. Host mode: Handshake response received from local device for LPM transaction

0 (B_0x0): ERROR (No handshake response)

1 (B_0x1): STALL

2 (B_0x2): NYET

3 (B_0x3): ACK

SLPSTS

Port sleep status Device mode: This bit is set as long as a Sleep condition is present on the USB bus. The core enters the Sleep state when an ACK response is sent to an LPM transaction and the TL1TokenRetry timer has expired. To stop the PHY clock, the application must set the STPPCLK bit in OTG_PCGCCTL, which asserts the PHY suspend input signal. The application must rely on SLPSTS and not ACK in LPMRSP to confirm transition into sleep. The core comes out of sleep: When there is any activity on the USB linestate When the application writes to the RWUSIG bit in OTG_DCTL or when the application resets or soft-disconnects the device. Host mode: The host transitions to Sleep (L1) state as a side-effect of a successful LPM transaction by the core to the local port with ACK response from the device. The read value of this bit reflects the current Sleep status of the port. The core clears this bit after: The core detects a remote L1 wakeup signal, The application sets the PRST bit or the PRES bit in the OTG_HPRT register, or The application sets the L1Resume/ remote wakeup detected interrupt bit or disconnect detected interrupt bit in the core interrupt register (WKUPINT or DISCINT bit in OTG_GINTSTS, respectively).

0 (B_0x0): Core not in L1

1 (B_0x1): Core in L1

L1RSMOK

Sleep state resume OK

0 (B_0x0): The application or host cannot start resume from Sleep state

1 (B_0x1): The application or host can start resume from Sleep state

LPMCHIDX

LPM Channel Index The channel number on which the LPM transaction has to be applied while sending an LPM transaction to the local device. Based on the LPM channel index, the core automatically inserts the device address and endpoint number programmed in the corresponding channel into the LPM transaction. Note: Accessible only in host mode.

LPMRCNT

LPM retry count When the device gives an ERROR response, this is the number of additional LPM retries that the host performs until a valid device response (STALL, NYET, or ACK) is received. Note: Accessible only in host mode.

SNDLPM

Send LPM transaction When the application software sets this bit, an LPM transaction containing two tokens, EXT and LPM is sent. The hardware clears this bit once a valid response (STALL, NYET, or ACK) is received from the device or the core has finished transmitting the programmed number of LPM retries. Note: This bit must be set only when the host is connected to a local port. Note: Accessible only in host mode.

LPMRCNTSTS

LPM retry count status Number of LPM host retries still remaining to be transmitted for the current LPM sequence. Note: Accessible only in host mode.

ENBESL

Enable best effort service latency This bit enables the BESL feature as defined in the LPM errata: USB 2.0 Link Power Management Addendum Engineering Change Notice to the USB 2.0 specification, July 16, 2007 Errata for USB 2.0 ECN: Link Power Management (LPM) - 7/2007 Note: Only the updated behavior (described in LPM Errata) is considered in this document and so the ENBESL bit should be set to ‘1’ by application SW.

0 (B_0x0): The core works as described in the following document:

1 (B_0x1): The core works as described in the LPM Errata:

Links

()