BOOL PXA271_SPI_Driver::nWrite16_nRead16( const SPI_CONFIGURATION& Configuration, UINT16* Write16, INT32 WriteCount, UINT16* Read16, INT32 ReadCount, INT32 ReadStartOffset ) { if(g_PXA271_SPI_Driver.s_All_SPI_port[Configuration.SPI_mod].m_Enabled) { lcd_printf("\fSPI Xaction 1\r\n"); HARD_BREAKPOINT(); return FALSE; } if(!Xaction_Start( Configuration )) return FALSE; { SPI_XACTION_16 Transaction; Transaction.Read16 = Read16; Transaction.ReadCount = ReadCount; Transaction.ReadStartOffset = ReadStartOffset; Transaction.Write16 = Write16; Transaction.WriteCount = WriteCount; Transaction.SPI_mod = Configuration.SPI_mod; if(!Xaction_nWrite16_nRead16( Transaction )) return FALSE; } return Xaction_Stop( Configuration ); }
BOOL LPC24XX_SPI_Driver::nWrite8_nRead8( const SPI_CONFIGURATION& Configuration, UINT8* Write8, INT32 WriteCount, UINT8* Read8, INT32 ReadCount, INT32 ReadStartOffset ) { if(g_LPC24XX_SPI_Driver.m_Enabled[Configuration.SPI_mod]) { lcd_printf("\fSPI Xaction 1\r\n"); HARD_BREAKPOINT(); return FALSE; } if(Configuration.SPI_mod > LPC24XX_SPI::c_MAX_SPI) { lcd_printf("\fSPI wrong mod\r\n"); HARD_BREAKPOINT(); return FALSE; } if (!Xaction_Start( Configuration )) return FALSE; { SPI_XACTION_8 Transaction; Transaction.Read8 = Read8; Transaction.ReadCount = ReadCount; Transaction.ReadStartOffset = ReadStartOffset; Transaction.Write8 = Write8; Transaction.WriteCount = WriteCount; Transaction.SPI_mod = Configuration.SPI_mod; Transaction.BusyPin = Configuration.BusyPin; if(!Xaction_nWrite8_nRead8( Transaction )) return FALSE; } return Xaction_Stop( Configuration ); }
BOOL PXA271_SPI_Driver::nWrite8_nRead8( const SPI_CONFIGURATION& Configuration, UINT8* Write8, INT32 WriteCount, UINT8* Read8, INT32 ReadCount, INT32 ReadStartOffset ) { if(g_PXA271_SPI_Driver.s_All_SPI_port[Configuration.SPI_mod].m_Enabled) { lcd_printf("\fSPI Xaction 1\r\n"); HARD_BREAKPOINT(); return FALSE; } if(!Xaction_Start( Configuration )) return FALSE; { SPI_XACTION_8 Transaction; Transaction.Read8 = Read8; Transaction.ReadCount = ReadCount; Transaction.ReadStartOffset = ReadStartOffset; Transaction.Write8 = Write8; Transaction.WriteCount = WriteCount; Transaction.SPI_mod = Configuration.SPI_mod; Transaction.BusyPin.Pin = GPIO_PIN_NONE; if(!Xaction_nWrite8_nRead8( Transaction )) return FALSE; } return Xaction_Stop( Configuration ); }
BOOL AT91_SPI_Driver::nWrite16_nRead16(const SPI_CONFIGURATION &Configuration, UINT16 *Write16, INT32 WriteCount, UINT16 *Read16, INT32 ReadCount, INT32 ReadStartOffset) { NATIVE_PROFILE_HAL_PROCESSOR_SPI(); GLOBAL_LOCK(irq); SPI_DEBUG_PRINT(" spi write 16 \r\n"); if(g_AT91_SPI_Driver.m_Enabled[Configuration.SPI_mod]) { lcd_printf("\fSPI Xaction 1\r\n"); hal_printf("\fSPI Xaction 1\r\n"); HARD_BREAKPOINT(); return FALSE; } if(Configuration.SPI_mod > AT91_SPI::c_MAX_SPI) { lcd_printf("\fSPI wrong mod\r\n"); hal_printf("\fSPI wrong mod\r\n"); HARD_BREAKPOINT(); return FALSE; } if(!Xaction_Start(Configuration)) return FALSE; { SPI_XACTION_16 Transaction; Transaction.Read16 = Read16; Transaction.ReadCount = ReadCount; Transaction.ReadStartOffset = ReadStartOffset; Transaction.Write16 = Write16; Transaction.WriteCount = WriteCount; Transaction.SPI_mod = Configuration.SPI_mod; Transaction.BusyPin = Configuration.BusyPin; if(!Xaction_nWrite16_nRead16(Transaction)) return FALSE; } SPI_DEBUG_PRINT(" B4 xs 16 \r\n"); return Xaction_Stop(Configuration); }
BOOL MC9328MXL_SPI_Driver::nWrite8_nRead8( const SPI_CONFIGURATION& Configuration, UINT8* Write8, INT32 WriteCount, UINT8* Read8, INT32 ReadCount, INT32 ReadStartOffset ) { NATIVE_PROFILE_HAL_PROCESSOR_SPI(); SPI_DEBUG_PRINT(" spi write 8 \r\n"); if(g_MC9328MXL_SPI_Driver.m_Enabled[Configuration.SPI_mod]) { lcd_printf("\fSPI Xaction 1\r\n"); HARD_BREAKPOINT(); return FALSE; } if(Configuration.SPI_mod > MC9328MXL_SPI::c_MAX_SPI) { lcd_printf("\fSPI wrong mod\r\n"); HARD_BREAKPOINT(); return FALSE; } if(!Xaction_Start( Configuration )) return FALSE; { SPI_XACTION_8 Transaction; Transaction.Read8 = Read8; Transaction.ReadCount = ReadCount; Transaction.ReadStartOffset = ReadStartOffset; Transaction.Write8 = Write8; Transaction.WriteCount = WriteCount; Transaction.SPI_mod = Configuration.SPI_mod; Transaction.BusyPin = Configuration.BusyPin; if(!Xaction_nWrite8_nRead8( Transaction )) return FALSE; } return Xaction_Stop( Configuration ); }