xdmapcie: xdmapcie_intr.c File Reference

| xdmapcie Xilinx SDK Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

Functions
xdmapcie_intr.c File Reference

## Overview

This file implements interrupt functions for the XDmaPcie IP.

    MODIFICATION HISTORY:

    Ver   Who  Date     Changes

    1.0     tk      01/30/2019      First release

## Functions
void | XDmaPcie_EnableGlobalInterrupt (XDmaPcie *InstancePtr)
| Enable the Global Interrupt. More...
void | XDmaPcie_DisableGlobalInterrupt (XDmaPcie *InstancePtr)
| Disable the Global Interrupt. More...
void | XDmaPcie_EnableInterrupts (XDmaPcie *InstancePtr, u32 EnableMask)
| Enable the IP interrupt bits passed into "EnableMask". More...
void | XDmaPcie_DisableInterrupts (XDmaPcie *InstancePtr, u32 DisableMask)
| Disable the IP interrupt bits passed into "DisableMask". More...
void | XDmaPcie_GetEnabledInterrupts (XDmaPcie *InstancePtr, u32 *EnabledMaskPtr)
| Get the currently enabled interrupt bits of the IP and pass them back to the caller into "EnabledMask". More...
void | XDmaPcie_GetPendingInterrupts (XDmaPcie *InstancePtr, u32 *PendingMaskPtr)
| Get the currently pending interrupt bits of the IP and pass them back to the caller into "PendingMask". More...
void | XDmaPcie_ClearPendingInterrupts (XDmaPcie *InstancePtr, u32 ClearMask)
| Clear the currently pending interrupt bits of the IP passed from the caller into "ClearMask". More...

## Function Documentation

void XDmaPcie_ClearPendingInterrupts | ( | XDmaPcie * | InstancePtr,
|  | u32 | ClearMask
| ) |  |

Clear the currently pending interrupt bits of the IP passed from the caller into "ClearMask".

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.
  ClearMask | is the bit pattern for pending interrupts wanted to be cleared.

Returns
  None.

Note
  None.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_ID_OFFSET, XDmaPcie_ReadReg, and XDmaPcie_WriteReg.

Referenced by PcieInitRootComplex().

void XDmaPcie_DisableGlobalInterrupt | ( | XDmaPcie * | InstancePtr | ) |

Disable the Global Interrupt.

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.

Returns
  None

Note
  This bit is in the Bridge Status and Control Register.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_BSC_GI_MASK, XDMAPCIE_BSC_GI_SHIFT, XDMAPCIE_BSC_OFFSET, XDmaPcie_ReadReg, and XDmaPcie_WriteReg.

void XDmaPcie_DisableInterrupts | ( | XDmaPcie * | InstancePtr,
|  | u32 | DisableMask
| ) |  |

Disable the IP interrupt bits passed into "DisableMask".

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.
  DisableMask | is the bit pattern for interrupts wanted to be disabled.

Returns
  None

Note
  If an interrupt is already disabled before calling this function, it will stay disabled regardless of the value of "DisableMask" passed from the caller.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_IM_OFFSET, XDmaPcie_ReadReg, and XDmaPcie_WriteReg.

Referenced by PcieInitRootComplex(), and XDmaPcie_CfgInitialize().

void XDmaPcie_EnableGlobalInterrupt | ( | XDmaPcie * | InstancePtr | ) |

Enable the Global Interrupt.

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.

Returns
  None

Note
  This bit is in the Bridge Status and Control Register.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_BSC_GI_MASK, XDMAPCIE_BSC_GI_SHIFT, XDMAPCIE_BSC_OFFSET, XDmaPcie_ReadReg, and XDmaPcie_WriteReg.

void XDmaPcie_EnableInterrupts | ( | XDmaPcie * | InstancePtr,
|  | u32 | EnableMask
| ) |  |

Enable the IP interrupt bits passed into "EnableMask".

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.
  EnableMask | is the bit pattern for interrupts wanted to be enabled.

Returns
  None

Note
  If an interrupt is already enabled before calling this function, it will stay enabled regardless of the value of "EnableMask" passed from the caller.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_IM_OFFSET, XDmaPcie_ReadReg, and XDmaPcie_WriteReg.

void XDmaPcie_GetEnabledInterrupts | ( | XDmaPcie * | InstancePtr,
|  | u32 * | EnabledMaskPtr
| ) |  |

Get the currently enabled interrupt bits of the IP and pass them back to the caller into "EnabledMask".

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.
  EnabledMaskPtr | is a pointer to a variable where the driver will pass back the enabled interrupt bits after reading them from IP.

Returns
  None.

Note
  None.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_IM_OFFSET, and XDmaPcie_ReadReg.

Referenced by PcieInitRootComplex().

void XDmaPcie_GetPendingInterrupts | ( | XDmaPcie * | InstancePtr,
|  | u32 * | PendingMaskPtr
| ) |  |

Get the currently pending interrupt bits of the IP and pass them back to the caller into "PendingMask".

Parameters

  InstancePtr | is the XDmaPcie instance to operate on.
  PendingMaskPtr | is a pointer to a variable where the driver will pass back the pending interrupt bits after reading them from IP.

Returns
  None.

Note
  None.

References XDmaPcie_Config::BaseAddress, XDmaPcie::Config, XDmaPcie::IsReady, XDMAPCIE_ID_OFFSET, and XDmaPcie_ReadReg.

Referenced by PcieInitRootComplex().