| iomodule Vitis Drivers API Documentation

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

- Data Structures
- Data Fields

Data Fields
XIOModule Struct Reference
Overview

The XIOModule driver instance data. More...

## Data Fields
UINTPTR | BaseAddress
| Base address of registers. More...
u32 | IsReady
| Device initialized and ready. More...
u32 | IsStarted
| Device has been started. More...
XIOModule_Config * | CfgPtr
| Pointer to inst config entry. More...
XIOModule_Uart_Stats | Uart_Stats
| UART Statistics. More...
XIOModule_Buffer | SendBuffer
| UART Send buffer. More...
XIOModule_Buffer | ReceiveBuffer
| UART Receive buffer. More...
XIOModule_Handler | RecvHandler
| UART Receive Handler. More...
void * | RecvCallBackRef
| Callback ref for recv handler. More...
XIOModule_Handler | SendHandler
| UART Send Handler. More...
void * | SendCallBackRef
| Callback ref for send handler. More...
u32 | CurrentUBRR
| UART Baud Rate Register value. More...
u32 | UnhandledInterrupts
| Iomodule Interrupt Statistics. More...
u32 | CurrentIER
| Interrupt Enable Register value. More...
u32 | CurrentIMR
| Interrupt Mode Register value. More...
XIOModule_Timer_Stats | Timer_Stats [XTC_DEVICE_TIMER_COUNT]
| Timer statistics. More...
u32 | CurrentTLR [XTC_DEVICE_TIMER_COUNT]
| Timer Load Register values. More...
u8 | CurrentTCSR [XTC_DEVICE_TIMER_COUNT]
| Timer Control Register values. More...
XIOModule_Timer_Handler | Handler
| Timer Callback function. More...
void * | CallBackRef
| Timer Callback handler ref. More...
u32 | GpoValue [XGPO_DEVICE_COUNT]
| GPO current value. More...
UINTPTR | IoBaseAddress
| Base address of IO Bus. More...

## Detailed Description

The XIOModule driver instance data.

The user is required to allocate a variable of this type for every iomodule device in the system. A pointer to a variable of this type is then passed to the driver API functions.

## Field Documentation

UINTPTR XIOModule::BaseAddress

Base address of registers.

Referenced by XIOModule_Acknowledge(), XIOModule_CfgInitialize(), XIOModule_ConnectFastHandler(), XIOModule_Disable(), XIOModule_Disconnect(), XIOModule_DiscreteClear(), XIOModule_DiscreteRead(), XIOModule_DiscreteSet(), XIOModule_DiscreteWrite(), XIOModule_Enable(), XIOModule_GetValue(), XIOModule_Initialize(), XIOModule_Intc_SelfTest(), XIOModule_IsExpired(), XIOModule_IsSending(), XIOModule_ReceiveBuffer(), XIOModule_Recv(), XIOModule_Reset(), XIOModule_Send(), XIOModule_SendBuffer(), XIOModule_SetBaudRate(), XIOModule_SetNormalIntrMode(), XIOModule_SetResetValue(), XIOModule_Timer_Initialize(), XIOModule_Timer_InterruptHandler(), XIOModule_Timer_SetOptions(), XIOModule_Timer_Start(), XIOModule_Timer_Stop(), XIOModule_Uart_DisableInterrupt(), XIOModule_Uart_EnableInterrupt(), and XIOModule_Uart_InterruptHandler().

void* XIOModule::CallBackRef

Timer Callback handler ref.

Referenced by XIOModule_SetHandler(), XIOModule_Timer_Initialize(), and XIOModule_Timer_InterruptHandler().

XIOModule_Config* XIOModule::CfgPtr

Pointer to inst config entry.

Referenced by IOModuleIntrExample(), XIOModule_Connect(), XIOModule_ConnectFastHandler(), XIOModule_Disconnect(), XIOModule_GetOptions(), XIOModule_HandlerTable_Initialize(), XIOModule_Initialize(), XIOModule_InterruptHandler(), XIOModule_IsExpired(), XIOModule_SelfTest(), XIOModule_SetBaudRate(), XIOModule_SetHandler(), XIOModule_SetNormalIntrMode(), XIOModule_SetOptions(), XIOModule_Timer_InterruptHandler(), and XIOModule_Timer_SelfTest().

u32 XIOModule::CurrentIER

Interrupt Enable Register value.

Referenced by XIOModule_CfgInitialize(), XIOModule_ConnectFastHandler(), XIOModule_Disable(), XIOModule_Disconnect(), XIOModule_Enable(), XIOModule_Initialize(), XIOModule_ReceiveBuffer(), XIOModule_Recv(), XIOModule_Send(), XIOModule_SendBuffer(), XIOModule_SetNormalIntrMode(), XIOModule_Uart_DisableInterrupt(), and XIOModule_Uart_EnableInterrupt().

u32 XIOModule::CurrentIMR

Interrupt Mode Register value.

Referenced by XIOModule_ConnectFastHandler(), XIOModule_Initialize(), XIOModule_SetNormalIntrMode(), and XIOModule_Timer_InterruptHandler().

u8 XIOModule::CurrentTCSR[XTC_DEVICE_TIMER_COUNT]

Timer Control Register values.

Referenced by XIOModel_Timer_GetOptions(), XIOModule_IsExpired(), XIOModule_Reset(), XIOModule_Timer_Initialize(), XIOModule_Timer_SetOptions(), XIOModule_Timer_Start(), and XIOModule_Timer_Stop().

u32 XIOModule::CurrentTLR[XTC_DEVICE_TIMER_COUNT]

Timer Load Register values.

Referenced by XIOModule_GetCaptureValue(), XIOModule_SetResetValue(), and XIOModule_Timer_Initialize().

u32 XIOModule::CurrentUBRR

UART Baud Rate Register value.

Referenced by XIOModule_SetBaudRate().

u32 XIOModule::GpoValue[XGPO_DEVICE_COUNT]

GPO current value.

Referenced by XIOModule_DiscreteClear(), XIOModule_DiscreteSet(), XIOModule_DiscreteWrite(), and XIOModule_Initialize().

XIOModule_Timer_Handler XIOModule::Handler

Timer Callback function.

Referenced by XIOModule_SetHandler(), XIOModule_Timer_Initialize(), and XIOModule_Timer_InterruptHandler().

UINTPTR XIOModule::IoBaseAddress

Base address of IO Bus.

Referenced by XIOModule_Initialize(), XIOModule_IoReadByte(), XIOModule_IoReadHalfword(), XIOModule_IoReadWord(), XIOModule_IoWriteByte(), XIOModule_IoWriteHalfword(), and XIOModule_IoWriteWord().

u32 XIOModule::IsReady

Device initialized and ready.

Referenced by XIOModel_Timer_GetOptions(), XIOModule_Acknowledge(), XIOModule_CfgInitialize(), XIOModule_ClearStats(), XIOModule_Connect(), XIOModule_ConnectFastHandler(), XIOModule_Disable(), XIOModule_Disconnect(), XIOModule_DiscreteClear(), XIOModule_DiscreteRead(), XIOModule_DiscreteSet(), XIOModule_DiscreteWrite(), XIOModule_Enable(), XIOModule_GetCaptureValue(), XIOModule_GetOptions(), XIOModule_GetStats(), XIOModule_GetValue(), XIOModule_Initialize(), XIOModule_Intc_SelfTest(), XIOModule_IoReadByte(), XIOModule_IoReadHalfword(), XIOModule_IoReadWord(), XIOModule_IoWriteByte(), XIOModule_IoWriteHalfword(), XIOModule_IoWriteWord(), XIOModule_IsExpired(), XIOModule_Recv(), XIOModule_Reset(), XIOModule_ResetFifos(), XIOModule_SelfTest(), XIOModule_Send(), XIOModule_SetBaudRate(), XIOModule_SetHandler(), XIOModule_SetNormalIntrMode(), XIOModule_SetOptions(), XIOModule_SetRecvHandler(), XIOModule_SetResetValue(), XIOModule_SetSendHandler(), XIOModule_Start(), XIOModule_Stop(), XIOModule_Timer_Initialize(), XIOModule_Timer_SelfTest(), XIOModule_Timer_SetOptions(), XIOModule_Timer_Start(), XIOModule_Timer_Stop(), XIOModule_Uart_DisableInterrupt(), and XIOModule_Uart_EnableInterrupt().

u32 XIOModule::IsStarted

Device has been started.

Referenced by XIOModule_Initialize(), XIOModule_Start(), and XIOModule_Stop().

XIOModule_Buffer XIOModule::ReceiveBuffer

UART Receive buffer.

Referenced by XIOModule_CfgInitialize(), XIOModule_ReceiveBuffer(), and XIOModule_Recv().

void* XIOModule::RecvCallBackRef

Callback ref for recv handler.

Referenced by XIOModule_SetRecvHandler().

XIOModule_Handler XIOModule::RecvHandler

UART Receive Handler.

Referenced by XIOModule_CfgInitialize(), and XIOModule_SetRecvHandler().

XIOModule_Buffer XIOModule::SendBuffer

UART Send buffer.

Referenced by XIOModule_CfgInitialize(), XIOModule_Send(), XIOModule_SendBuffer(), and XIOModule_Uart_InterruptHandler().

void* XIOModule::SendCallBackRef

Callback ref for send handler.

Referenced by XIOModule_SetSendHandler().

XIOModule_Handler XIOModule::SendHandler

UART Send Handler.

Referenced by XIOModule_CfgInitialize(), and XIOModule_SetSendHandler().

XIOModule_Timer_Stats XIOModule::Timer_Stats[XTC_DEVICE_TIMER_COUNT]

Timer statistics.

Referenced by XIOModule_Timer_Initialize(), and XIOModule_Timer_InterruptHandler().

XIOModule_Uart_Stats XIOModule::Uart_Stats

UART Statistics.

Referenced by XIOModule_ClearStats(), XIOModule_GetStats(), XIOModule_ReceiveBuffer(), and XIOModule_SendBuffer().

u32 XIOModule::UnhandledInterrupts

Iomodule Interrupt Statistics.