AJA NTV2 SDK  17.1.1.1245
NTV2 SDK 17.1.1.1245
ntv2baremetalpublicinterface.h File Reference

Types and defines shared between NTV2 user application interface and BareMetal device driver. More...

#include "ajatypes.h"
#include "ntv2enums.h"
#include "ntv2publicinterface.h"
#include "ntv2virtualregisters.h"
Include dependency graph for ntv2baremetalpublicinterface.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _MAP_MEMORY
 
struct  REGISTER_ACCESS
 
struct  NTV2_DMA_CONTROL_STRUCT
 
struct  NTV2_DMA_SEGMENT_CONTROL_STRUCT
 
struct  NTV2_DMA_P2P_CONTROL_STRUCT
 
struct  NTV2_INTERRUPT_CONTROL_STRUCT
 
struct  NTV2_WAITFOR_INTERRUPT_STRUCT
 
struct  NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCT
 
struct  AUTOCIRCULATE_TRANSFER_COMBO_STRUCT
 
struct  AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT
 

Macros

#define NTV2_DEVICE_TYPE   0xBB
 
#define NTV2_BAREMETAL_DRIVER_VERSION   NTV2DriverVersionEncodedBuildType | NTV2DriverVersionEncode(AJA_NTV2_SDK_VERSION_MAJOR, AJA_NTV2_SDK_VERSION_MINOR, AJA_NTV2_SDK_VERSION_POINT, AJA_NTV2_SDK_BUILD_NUMBER)
 
#define IOCTL_NTV2_WRITE_REGISTER   _IOW(NTV2_DEVICE_TYPE, 48, REGISTER_ACCESS)
 
#define IOCTL_NTV2_READ_REGISTER   _IOWR(NTV2_DEVICE_TYPE, 49 , REGISTER_ACCESS)
 
#define IOCTL_NTV2_DMA_READ_FRAME   _IOW(NTV2_DEVICE_TYPE, 146,NTV2_DMA_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_WRITE_FRAME   _IOW(NTV2_DEVICE_TYPE, 147,NTV2_DMA_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_READ_FRAME_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 148,NTV2_DMA_SEGMENT_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_WRITE_FRAME_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 149,NTV2_DMA_SEGMENT_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_READ   _IOW(NTV2_DEVICE_TYPE, 175,NTV2_DMA_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_WRITE   _IOW(NTV2_DEVICE_TYPE, 176,NTV2_DMA_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_READ_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 177,NTV2_DMA_SEGMENT_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_WRITE_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 178,NTV2_DMA_SEGMENT_CONTROL_STRUCT)
 
#define IOCTL_NTV2_DMA_P2P   _IOW(NTV2_DEVICE_TYPE, 179,NTV2_DMA_P2P_CONTROL_STRUCT)
 
#define IOCTL_NTV2_INTERRUPT_CONTROL   _IOW(NTV2_DEVICE_TYPE, 220, NTV2_INTERRUPT_CONTROL_STRUCT)
 
#define IOCTL_NTV2_WAITFOR_INTERRUPT   _IOW(NTV2_DEVICE_TYPE, 221, NTV2_WAITFOR_INTERRUPT_STRUCT)
 
#define IOCTL_NTV2_CONTROL_DRIVER_DEBUG_MESSAGES   _IOW(NTV2_DEVICE_TYPE, 230, NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCT)
 
#define IOCTL_NTV2_SETUP_BOARD   _IO(NTV2_DEVICE_TYPE, 231)
 
#define IOCTL_NTV2_RESTORE_HARDWARE_PROCAMP_REGISTERS   _IO(NTV2_DEVICE_TYPE, 232)
 
#define IOCTL_NTV2_SET_BITFILE_INFO   _IOWR(NTV2_DEVICE_TYPE, 240, BITFILE_INFO_STRUCT)
 
#define IOCTL_NTV2_GET_BITFILE_INFO   _IOWR(NTV2_DEVICE_TYPE, 241, BITFILE_INFO_STRUCT)
 
#define IOCTL_NTV2_AUTOCIRCULATE_CONTROL   _IOW(NTV2_DEVICE_TYPE, 250, AUTOCIRCULATE_DATA)
 
#define IOCTL_NTV2_AUTOCIRCULATE_STATUS   _IOWR(NTV2_DEVICE_TYPE, 251, AUTOCIRCULATE_STATUS_STRUCT)
 
#define IOCTL_NTV2_AUTOCIRCULATE_FRAMESTAMP   _IOWR(NTV2_DEVICE_TYPE, 252, AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT)
 
#define IOCTL_NTV2_AUTOCIRCULATE_TRANSFER   _IOWR(NTV2_DEVICE_TYPE, 253, AUTOCIRCULATE_TRANSFER_COMBO_STRUCT)
 
#define IOCTL_NTV2_AUTOCIRCULATE_CAPTURETASK   _IOWR(NTV2_DEVICE_TYPE, 254, AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT)
 
#define IOCTL_AJANTV2_MESSAGE   _IOWR(NTV2_DEVICE_TYPE, 255, AUTOCIRCULATE_STATUS)
 
#define IOCTL_NTV2_WRITE_UART_TX   _IOWR(NTV2_DEVICE_TYPE, 201, NTV2_UART_STRUCT)
 
#define ntv2DMADriverbuffer(n)   (n)
 
#define IOCTL_HEVC_MESSAGE   _IOWR(NTV2_DEVICE_TYPE, 120, unsigned long)
 

Typedefs

typedef struct _MAP_MEMORY MAP_MEMORY
 
typedef struct _MAP_MEMORYPMAP_MEMORY
 
typedef struct REGISTER_ACCESSPREGISTER_ACCESS
 
typedef struct NTV2_DMA_CONTROL_STRUCTP_NTV2_DMA_CONTROL_STRUCT
 
typedef struct NTV2_DMA_SEGMENT_CONTROL_STRUCTP_NTV2_DMA_SEGMENT_CONTROL_STRUCT
 
typedef struct NTV2_DMA_P2P_CONTROL_STRUCTP_NTV2_DMA_P2P_CONTROL_STRUCT
 
typedef struct NTV2_INTERRUPT_CONTROL_STRUCTP_NTV2_INTERRUPT_CONTROL_STRUCT
 
typedef struct NTV2_WAITFOR_INTERRUPT_STRUCTP_NTV2_WAITFOR_INTERRUPT_STRUCT
 
typedef struct NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCTP_NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCT
 
typedef struct AUTOCIRCULATE_TRANSFER_COMBO_STRUCTP_AUTOCIRCULATE_TRANSFER_COMBO_STRUCT
 
typedef struct AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCTP_AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT
 

Detailed Description

Types and defines shared between NTV2 user application interface and BareMetal device driver.

Definition in file ntv2baremetalpublicinterface.h.

Macro Definition Documentation

◆ IOCTL_AJANTV2_MESSAGE

#define IOCTL_AJANTV2_MESSAGE   _IOWR(NTV2_DEVICE_TYPE, 255, AUTOCIRCULATE_STATUS)

Definition at line 113 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_HEVC_MESSAGE

#define IOCTL_HEVC_MESSAGE   _IOWR(NTV2_DEVICE_TYPE, 120, unsigned long)

Definition at line 251 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_AUTOCIRCULATE_CAPTURETASK

#define IOCTL_NTV2_AUTOCIRCULATE_CAPTURETASK   _IOWR(NTV2_DEVICE_TYPE, 254, AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT)

Definition at line 110 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_AUTOCIRCULATE_CONTROL

#define IOCTL_NTV2_AUTOCIRCULATE_CONTROL   _IOW(NTV2_DEVICE_TYPE, 250, AUTOCIRCULATE_DATA)

Definition at line 98 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_AUTOCIRCULATE_FRAMESTAMP

#define IOCTL_NTV2_AUTOCIRCULATE_FRAMESTAMP   _IOWR(NTV2_DEVICE_TYPE, 252, AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT)

Definition at line 104 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_AUTOCIRCULATE_STATUS

#define IOCTL_NTV2_AUTOCIRCULATE_STATUS   _IOWR(NTV2_DEVICE_TYPE, 251, AUTOCIRCULATE_STATUS_STRUCT)

Definition at line 101 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_AUTOCIRCULATE_TRANSFER

#define IOCTL_NTV2_AUTOCIRCULATE_TRANSFER   _IOWR(NTV2_DEVICE_TYPE, 253, AUTOCIRCULATE_TRANSFER_COMBO_STRUCT)

Definition at line 107 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_CONTROL_DRIVER_DEBUG_MESSAGES

#define IOCTL_NTV2_CONTROL_DRIVER_DEBUG_MESSAGES   _IOW(NTV2_DEVICE_TYPE, 230, NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCT)

Definition at line 72 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_P2P

#define IOCTL_NTV2_DMA_P2P   _IOW(NTV2_DEVICE_TYPE, 179,NTV2_DMA_P2P_CONTROL_STRUCT)

Definition at line 56 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_READ

#define IOCTL_NTV2_DMA_READ   _IOW(NTV2_DEVICE_TYPE, 175,NTV2_DMA_CONTROL_STRUCT)

Definition at line 44 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_READ_FRAME

#define IOCTL_NTV2_DMA_READ_FRAME   _IOW(NTV2_DEVICE_TYPE, 146,NTV2_DMA_CONTROL_STRUCT)

Definition at line 31 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_READ_FRAME_SEGMENT

#define IOCTL_NTV2_DMA_READ_FRAME_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 148,NTV2_DMA_SEGMENT_CONTROL_STRUCT)

Definition at line 37 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_READ_SEGMENT

#define IOCTL_NTV2_DMA_READ_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 177,NTV2_DMA_SEGMENT_CONTROL_STRUCT)

Definition at line 50 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_WRITE

#define IOCTL_NTV2_DMA_WRITE   _IOW(NTV2_DEVICE_TYPE, 176,NTV2_DMA_CONTROL_STRUCT)

Definition at line 47 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_WRITE_FRAME

#define IOCTL_NTV2_DMA_WRITE_FRAME   _IOW(NTV2_DEVICE_TYPE, 147,NTV2_DMA_CONTROL_STRUCT)

Definition at line 34 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_WRITE_FRAME_SEGMENT

#define IOCTL_NTV2_DMA_WRITE_FRAME_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 149,NTV2_DMA_SEGMENT_CONTROL_STRUCT)

Definition at line 40 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_DMA_WRITE_SEGMENT

#define IOCTL_NTV2_DMA_WRITE_SEGMENT   _IOW(NTV2_DEVICE_TYPE, 178,NTV2_DMA_SEGMENT_CONTROL_STRUCT)

Definition at line 53 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_GET_BITFILE_INFO

#define IOCTL_NTV2_GET_BITFILE_INFO   _IOWR(NTV2_DEVICE_TYPE, 241, BITFILE_INFO_STRUCT)

Definition at line 91 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_INTERRUPT_CONTROL

#define IOCTL_NTV2_INTERRUPT_CONTROL   _IOW(NTV2_DEVICE_TYPE, 220, NTV2_INTERRUPT_CONTROL_STRUCT)

Definition at line 62 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_READ_REGISTER

#define IOCTL_NTV2_READ_REGISTER   _IOWR(NTV2_DEVICE_TYPE, 49 , REGISTER_ACCESS)

Definition at line 27 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_RESTORE_HARDWARE_PROCAMP_REGISTERS

#define IOCTL_NTV2_RESTORE_HARDWARE_PROCAMP_REGISTERS   _IO(NTV2_DEVICE_TYPE, 232)

Definition at line 81 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_SET_BITFILE_INFO

#define IOCTL_NTV2_SET_BITFILE_INFO   _IOWR(NTV2_DEVICE_TYPE, 240, BITFILE_INFO_STRUCT)

Definition at line 88 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_SETUP_BOARD

#define IOCTL_NTV2_SETUP_BOARD   _IO(NTV2_DEVICE_TYPE, 231)

Definition at line 77 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_WAITFOR_INTERRUPT

#define IOCTL_NTV2_WAITFOR_INTERRUPT   _IOW(NTV2_DEVICE_TYPE, 221, NTV2_WAITFOR_INTERRUPT_STRUCT)

Definition at line 67 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_WRITE_REGISTER

#define IOCTL_NTV2_WRITE_REGISTER   _IOW(NTV2_DEVICE_TYPE, 48, REGISTER_ACCESS)

Definition at line 22 of file ntv2baremetalpublicinterface.h.

◆ IOCTL_NTV2_WRITE_UART_TX

#define IOCTL_NTV2_WRITE_UART_TX   _IOWR(NTV2_DEVICE_TYPE, 201, NTV2_UART_STRUCT)

Definition at line 119 of file ntv2baremetalpublicinterface.h.

◆ NTV2_BAREMETAL_DRIVER_VERSION

◆ NTV2_DEVICE_TYPE

#define NTV2_DEVICE_TYPE   0xBB

Definition at line 14 of file ntv2baremetalpublicinterface.h.

◆ ntv2DMADriverbuffer

#define ntv2DMADriverbuffer (   n)    (n)

Definition at line 248 of file ntv2baremetalpublicinterface.h.

Typedef Documentation

◆ MAP_MEMORY

typedef struct _MAP_MEMORY MAP_MEMORY

◆ P_AUTOCIRCULATE_FRAME_STAMP_COMBO_STRUCT

◆ P_AUTOCIRCULATE_TRANSFER_COMBO_STRUCT

◆ P_NTV2_CONTROL_DRIVER_DEBUG_MESSAGES_STRUCT

◆ P_NTV2_DMA_CONTROL_STRUCT

◆ P_NTV2_DMA_P2P_CONTROL_STRUCT

◆ P_NTV2_DMA_SEGMENT_CONTROL_STRUCT

◆ P_NTV2_INTERRUPT_CONTROL_STRUCT

◆ P_NTV2_WAITFOR_INTERRUPT_STRUCT

◆ PMAP_MEMORY

typedef struct _MAP_MEMORY * PMAP_MEMORY

◆ PREGISTER_ACCESS