//***************************************************************************** // //! \brief xspi 004 test of SPI interrupt register. //! //! \return None. // //***************************************************************************** static void xspi004_IntRegister_test(void) { unsigned long i, j, ulRegVal; for(i = 0; i < 2; i++) { for(j = 0; j < 3; j++) { SPIIntEnable(ulSPI[i],ulIntFlags[j]); ulRegVal = xHWREGB(ulSPI[i] + SPI_C1) & (ulIntFlags[j] << 4); TestAssert(ulRegVal == (unsigned char)(ulIntFlags[j] << 4), "xspi API error!"); } for(j = 3; j < 5; j++) { SPIIntEnable(ulSPI[i], ulIntFlags[j]); ulRegVal = xHWREGB(ulSPI[i] + SPI_C2) & (ulIntFlags[j] << 4); TestAssert(ulRegVal == (unsigned char)(ulIntFlags[j] << 4), "xspi API error!"); } for(j = 0; j < 3; j++) { SPIIntDisable(ulSPI[i],ulIntFlags[j]); ulRegVal = xHWREGB(ulSPI[i] + SPI_C1) & (ulIntFlags[j] << 4); TestAssert(ulRegVal == 0, "xspi API error!"); } for(j = 3; j < 5; j++) { SPIIntDisable(ulSPI[i],ulIntFlags[j]); ulRegVal = xHWREGB(ulSPI[i] + SPI_C2) & (ulIntFlags[j] << 4); TestAssert(ulRegVal == 0, "xspi API error!"); } } }
/* ** This function is used as a callback from EDMA3 Completion Handler. ** The DMA Mode operation of SPI1 is disabled over here. */ static void callback(unsigned int tccNum, unsigned int status) { if(tccNum == 19) { flagTx = 1; /* Disable SPI-EDMA Communication. */ SPIIntDisable(SOC_SPI_1_REGS, SPI_DMA_REQUEST_ENA_INT); } else if(tccNum == 18) { flagRx = 1; /* Disable SPI-EDMA Communication. */ SPIIntDisable(SOC_SPI_1_REGS, SPI_DMA_REQUEST_ENA_INT); } }