rogue
Loading...
Searching...
No Matches
Macros | Functions
AxisDriver.h File Reference
#include "DmaDriver.h"

Go to the source code of this file.

Macros

#define AXIS_Read_Ack   0x2001
 ioctl command code used to acknowledge a completed AXIS read.
 
#define AXIS_Write_ReqMissed   0x2002
 ioctl command code used to signal a missed AXIS write request.
 

Functions

static uint32_t axisSetFlags (uint32_t fuser, uint32_t luser, uint32_t cont)
 Packs AXIS first-user, last-user, and continuation bits.
 
static uint32_t axisGetFuser (uint32_t flags)
 Extracts first-user flag from packed AXIS flags.
 
static uint32_t axisGetLuser (uint32_t flags)
 Extracts last-user flag from packed AXIS flags.
 
static uint32_t axisGetCont (uint32_t flags)
 Extracts continuation flag from packed AXIS flags.
 
static void axisReadAck (int32_t fd)
 Issues AXIS read-acknowledge ioctl command.
 
static void axisWriteReqMissed (int32_t fd)
 Issues AXIS missed-write-request ioctl command.
 

Macro Definition Documentation

◆ AXIS_Read_Ack

#define AXIS_Read_Ack   0x2001

ioctl command code used to acknowledge a completed AXIS read.


Company : SLAC National Accelerator Laboratory

Description: This file contains definitions and inline functions for interacting with the AXIS driver as part of the aes_stream_drivers package.

It includes functionalities for setting flags within the AXIS protocol and performing specific actions such as acknowledging reads and indicating

missed write requests.

This file is part of the aes_stream_drivers package. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of the aes_stream_drivers package, including this file, may be copied, modified, propagated, or distributed except according to the terms

contained in the LICENSE.txt file.

Definition at line 28 of file AxisDriver.h.

◆ AXIS_Write_ReqMissed

#define AXIS_Write_ReqMissed   0x2002

ioctl command code used to signal a missed AXIS write request.

Definition at line 31 of file AxisDriver.h.

Function Documentation

◆ axisGetCont()

static uint32_t axisGetCont ( uint32_t  flags)
inlinestatic

Extracts continuation flag from packed AXIS flags.

Parameters
flagsThe combined flags value.
Returns
The continuation flag.

Definition at line 91 of file AxisDriver.h.

◆ axisGetFuser()

static uint32_t axisGetFuser ( uint32_t  flags)
inlinestatic

Extracts first-user flag from packed AXIS flags.

Parameters
flagsThe combined flags value.
Returns
The first user-defined flag.

Definition at line 69 of file AxisDriver.h.

◆ axisGetLuser()

static uint32_t axisGetLuser ( uint32_t  flags)
inlinestatic

Extracts last-user flag from packed AXIS flags.

Parameters
flagsThe combined flags value.
Returns
The last user-defined flag.

Definition at line 80 of file AxisDriver.h.

◆ axisReadAck()

static void axisReadAck ( int32_t  fd)
inlinestatic

Issues AXIS read-acknowledge ioctl command.

Calls ioctl(fd, AXIS_Read_Ack, 0) to notify the driver that a read transaction has been acknowledged/consumed.

Parameters
fdFile descriptor for the AXIS device.

Definition at line 104 of file AxisDriver.h.

◆ axisSetFlags()

static uint32_t axisSetFlags ( uint32_t  fuser,
uint32_t  luser,
uint32_t  cont 
)
inlinestatic

Packs AXIS first-user, last-user, and continuation bits.

Encodes:

  • fuser in bits [7:0]
  • luser in bits [15:8]
  • cont in bit 16
Parameters
fuserFirst user-defined flag ([7:0]).
luserLast user-defined flag ([7:0]).
contContinuation flag ([0]).
Returns
The combined flags value.

Definition at line 51 of file AxisDriver.h.

◆ axisWriteReqMissed()

static void axisWriteReqMissed ( int32_t  fd)
inlinestatic

Issues AXIS missed-write-request ioctl command.

Calls ioctl(fd, AXIS_Write_ReqMissed, 0) to notify the driver that a write request was missed and recovery/diagnostic handling may be required.

Parameters
fdFile descriptor for the AXIS device.

Definition at line 117 of file AxisDriver.h.