AM261x MCU+ SDK: pcd_intr.c File Reference

| AM261x MCU+ SDK 26.00.00 |

Functions
pcd_intr.c File Reference

## Introduction

This file contains the implementation of the PCD Interrupt handlers.

The PCD handles the device interrupts. Many conditions can cause a device interrupt. When an interrupt occurs, the device interrupt service routine determines the cause of the interrupt and dispatches handling to the appropriate routine. These interrupt handling routines are described below.

## Functions
static int | handle_disconnect_intr (dwc_usb3_pcd_t *pcd)
static void | handle_usb_reset_intr (dwc_usb3_pcd_t *pcd)
static void | handle_link_status_change_intr (dwc_usb3_pcd_t *pcd)
static void | handle_wakeup_detected_intr (dwc_usb3_pcd_t *pcd)
static int | handle_hiber_req_intr (dwc_usb3_pcd_t *pcd, u32 event)
static void | handle_u3_l2l1_susp_intr (dwc_usb3_pcd_t *pcd)
static void | handle_sof_intr (dwc_usb3_pcd_t *pcd)
void | dwc_usb3_handle_connect_done_intr (dwc_usb3_pcd_t *pcd)
| This interrupt occurs when a Connect Done is detected. Read the device status register and set the device speed in the data structure. Set up EP0 to receive SETUP packets. More...
void | dwc_usb3_handle_ep_intr (dwc_usb3_pcd_t *pcd, u32 physep, u32 event)
| This interrupt indicates that an EP has a pending interrupt. More...
int | dwc_usb3_handle_dev_intr (dwc_usb3_pcd_t *pcd, u32 event)
| PCD interrupt handler. More...

## Function Documentation

## ◆ handle_disconnect_intr()

static int handle_disconnect_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This interrupt indicates that the device has been disconnected.

## ◆ handle_usb_reset_intr()

static void handle_usb_reset_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This interrupt occurs when a USB Reset is detected. When the USB Reset Interrupt occurs, all transfers are stopped and the device state is set to DEFAULT.

Ensure EP0 transfer is started, If the endpoint 0 (EP0) state is not idle, reset the state to idle and initiate the EP0 OUT transfer.

## ◆ handle_link_status_change_intr()

static void handle_link_status_change_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This interrupt indicates that the USB link state has changed.

## ◆ handle_wakeup_detected_intr()

static void handle_wakeup_detected_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This interrupt indicates that the DWC_usb3 controller has detected a resume or remote wakeup sequence.

## ◆ handle_hiber_req_intr()

static int handle_hiber_req_intr | ( | dwc_usb3_pcd_t * | pcd,
|  | u32 | event
| ) |  |
| static

This interrupt indicates that the USB link state has changed to L2, U3, or (if L1 Hibernation is enabled) L1, and software intervention is required.

## ◆ handle_u3_l2l1_susp_intr()

static void handle_u3_l2l1_susp_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This interrupt indicates that a U3/L2-L1 Suspend event has occurred.

## ◆ handle_sof_intr()

static void handle_sof_intr | ( | dwc_usb3_pcd_t * | pcd | ) |
| static

This routine handles the SOF Interrupts. At this time the SOF Interrupt is disabled.