/* ======================================================================
*   Copyright (C) 2022 Texas Instruments Incorporated
*
*   All rights reserved. Property of Texas Instruments Incorporated.
*   Restricted rights to use, duplicate or disclose this code are
*   granted through contract.
*
*   The program may not be used without the written permission
*   of Texas Instruments Incorporated or against the terms and conditions
*   stipulated in the agreement under which this program has been
*   supplied.
* ==================================================================== */
/**
 *  \file     Spi_Irq.h
 *
 *  \brief    This file contains ISR function declaration for SPI MCAL driver
 *
 */

/**
 *  \ingroup MCAL_SPIHANDLER_API
 *
 *  \defgroup MCAL_SPI_IRQ_API Defines Interrupt Handler for all SPI instances
 *  @{
 */

/* Design: SPI_DesignId_004 */

#ifndef SPI_IRQ_H_
#define SPI_IRQ_H_

/* ================================================================ */
/*                             Include Files                        */
/* ================================================================ */
#include "Spi.h"


#ifdef __cplusplus
extern "C"
{
#endif

/* ================================================================ */
/*                           Macros & Typedefs                      */
/* ================================================================ */
/* None */
/* ================================================================ */
/*                         Structures and Enums                     */
/* ================================================================ */

/* None */

/* ================================================================ */
/*                          Function Declarations                   */
/* ================================================================ */
/** \brief ADC ISR */
FUNC(void, SPI_CODE_FAST) Spi_IntISR_McspiTxRx(Spi_HWUnitType 
                                                          Spi_HwUnit) __attribute__((target("arm")));

#if (STD_ON == SPI_DMA_ENABLE)
FUNC(void, SPI_CODE_FAST) Spi_IntISR_McspiDmaTx
    (Spi_HWUnitType MaxHwUnit, Spi_HWUnitType Spi_HwUnit);

FUNC(void, SPI_CODE_FAST) Spi_IntISR_McspiDmaRx
    (Spi_HWUnitType MaxHwUnit, Spi_HWUnitType Spi_HwUnit);

#endif//#if (STD_ON == SPI_DMA_ENABLE)

#ifdef __cplusplus
}
#endif

#endif  /* #ifndef SPI_IRQ_H_ */

/* @} */
