AFHBA404
AFHBA404 connects ACQ2106 to PCI-Express
Macros | Functions | Variables
afhba_sysfs.c File Reference
#include "acq-fiber-hba.h"
#include "afhba_stream_drv.h"

Go to the source code of this file.

Macros

#define DATA_FIFO_STAT(DIR, SHL)
 
#define DESC_FIFO_STAT(DIR, SHL)
 
#define DMA_CTRL(DIR, SHL)
 
#define DMA_LATEST(DIR, RD)
 
#define _ERRLAT(yymask)   ((yymask) == 0x0ffff || (yymask) == 0)
 
#define ERRLAT(yy)   (_ERRLAT((yy)&0x0ffff))
 

Functions

 DATA_FIFO_STAT (pull, DMA_CTRL_PULL_SHL)
 
 DATA_FIFO_STAT (push, DMA_CTRL_PUSH_SHL)
 
 DESC_FIFO_STAT (pull, DMA_CTRL_PULL_SHL)
 
 DESC_FIFO_STAT (push, DMA_CTRL_PUSH_SHL)
 
 DMA_CTRL (pull, DMA_CTRL_PULL_SHL)
 
 DMA_CTRL (push, DMA_CTRL_PUSH_SHL)
 
 DMA_LATEST (pull, DMA_PULL_DESC_STA_RD)
 
 DMA_LATEST (push, DMA_PUSH_DESC_STA_RD)
 
char * getFlags (u32 stat, char buf[], int maxbuf)
 
void afhba_create_sysfs (struct AFHBA_DEV *adev)
 
void afhba_remove_sysfs (struct AFHBA_DEV *adev)
 
void afhba_create_sysfs_class (struct AFHBA_DEV *adev)
 
void afhba_remove_sysfs_class (struct AFHBA_DEV *adev)
 

Variables

int buffer_len
 

Macro Definition Documentation

◆ _ERRLAT

#define _ERRLAT (   yymask)    ((yymask) == 0x0ffff || (yymask) == 0)

Definition at line 358 of file afhba_sysfs.c.

◆ DATA_FIFO_STAT

#define DATA_FIFO_STAT (   DIR,
  SHL 
)
Value:
static ssize_t show_data_fifo_stat_##DIR( \
struct device * dev, \
struct device_attribute *attr, \
char * buf) \
{ \
char flags[80]; \
struct AFHBA_DEV *adev = afhba_lookupDeviceFromClass(dev); \
u32 stat = (DMA_DATA_FIFSTA_RD(adev) >> SHL)&0xffff; \
getDataFifoStat(stat, flags, 80); \
return sprintf(buf, "0x%04x %s\n", stat, flags); \
} \
\
static DEVICE_ATTR(data_fifo_stat_##DIR, (S_IRUSR|S_IRGRP), show_data_fifo_stat_##DIR, 0)

Definition at line 58 of file afhba_sysfs.c.

◆ DESC_FIFO_STAT

#define DESC_FIFO_STAT (   DIR,
  SHL 
)
Value:
static ssize_t show_desc_fifo_stat_##DIR( \
struct device * dev, \
struct device_attribute *attr, \
char * buf) \
{ \
char flags[80]; \
struct AFHBA_DEV *adev = afhba_lookupDeviceFromClass(dev); \
u32 stat = (DMA_DESC_FIFSTA_RD(adev) >> SHL)&0xffff; \
getDataFifoStat(stat, flags, 80); \
return sprintf(buf, "0x%04x %s\n", stat, flags); \
} \
\
static DEVICE_ATTR(desc_fifo_stat_##DIR, (S_IRUSR|S_IRGRP), show_desc_fifo_stat_##DIR, 0)

Definition at line 76 of file afhba_sysfs.c.

◆ DMA_CTRL

#define DMA_CTRL (   DIR,
  SHL 
)
Value:
static ssize_t show_dma_ctrl_##DIR( \
struct device * dev, \
struct device_attribute *attr, \
char * buf) \
{ \
char flags[80]; \
struct AFHBA_DEV *adev = afhba_lookupDeviceFromClass(dev); \
u32 stat = (DMA_CTRL_RD(adev) >> SHL)&0xffff; \
getDmaCtrl(stat, flags, 80); \
return sprintf(buf, "0x%04x %s\n", stat, flags); \
} \
\
static DEVICE_ATTR(dma_ctrl_##DIR, (S_IRUSR|S_IRGRP), show_dma_ctrl_##DIR, 0)

Definition at line 116 of file afhba_sysfs.c.

◆ DMA_LATEST

#define DMA_LATEST (   DIR,
  RD 
)
Value:
static ssize_t show_dma_latest_##DIR( \
struct device * dev, \
struct device_attribute *attr, \
char * buf) \
{ \
char flags[80]; \
struct AFHBA_DEV *adev = afhba_lookupDeviceFromClass(dev); \
u32 descr = RD(adev); \
getDesc(descr, flags, 80); \
return sprintf(buf, "0x%08x %s\n", descr, flags); \
} \
\
static DEVICE_ATTR(dma_latest_##DIR##_desc, (S_IRUSR|S_IRGRP), show_dma_latest_##DIR, 0)

Definition at line 149 of file afhba_sysfs.c.

◆ ERRLAT

#define ERRLAT (   yy)    (_ERRLAT((yy)&0x0ffff))

Definition at line 359 of file afhba_sysfs.c.

Function Documentation

◆ afhba_create_sysfs()

void afhba_create_sysfs ( struct AFHBA_DEV adev)

Definition at line 590 of file afhba_sysfs.c.

◆ afhba_create_sysfs_class()

void afhba_create_sysfs_class ( struct AFHBA_DEV adev)

Definition at line 624 of file afhba_sysfs.c.

◆ afhba_remove_sysfs()

void afhba_remove_sysfs ( struct AFHBA_DEV adev)

Definition at line 600 of file afhba_sysfs.c.

◆ afhba_remove_sysfs_class()

void afhba_remove_sysfs_class ( struct AFHBA_DEV adev)

Definition at line 642 of file afhba_sysfs.c.

◆ DATA_FIFO_STAT() [1/2]

DATA_FIFO_STAT ( pull  ,
DMA_CTRL_PULL_SHL   
)

◆ DATA_FIFO_STAT() [2/2]

DATA_FIFO_STAT ( push  ,
DMA_CTRL_PUSH_SHL   
)

◆ DESC_FIFO_STAT() [1/2]

DESC_FIFO_STAT ( pull  ,
DMA_CTRL_PULL_SHL   
)

◆ DESC_FIFO_STAT() [2/2]

DESC_FIFO_STAT ( push  ,
DMA_CTRL_PUSH_SHL   
)

◆ DMA_CTRL() [1/2]

DMA_CTRL ( pull  ,
DMA_CTRL_PULL_SHL   
)

◆ DMA_CTRL() [2/2]

DMA_CTRL ( push  ,
DMA_CTRL_PUSH_SHL   
)

◆ DMA_LATEST() [1/2]

DMA_LATEST ( pull  ,
DMA_PULL_DESC_STA_RD   
)

◆ DMA_LATEST() [2/2]

DMA_LATEST ( push  ,
DMA_PUSH_DESC_STA_RD   
)

◆ getFlags()

char* getFlags ( u32  stat,
char  buf[],
int  maxbuf 
)

Definition at line 222 of file afhba_sysfs.c.

Variable Documentation

◆ buffer_len

int buffer_len

Definition at line 77 of file afhba_stream_drv.c.

afhba_lookupDeviceFromClass
struct AFHBA_DEV * afhba_lookupDeviceFromClass(struct device *dev)
Definition: afhba_devman.c:52
DMA_DESC_FIFSTA_RD
#define DMA_DESC_FIFSTA_RD(adev)
Definition: afhba_stream_drv.h:239
DMA_DATA_FIFSTA_RD
#define DMA_DATA_FIFSTA_RD(adev)
Definition: afhba_stream_drv.h:238
AFHBA_DEV
Definition: acq-fiber-hba.h:111
DMA_CTRL_RD
#define DMA_CTRL_RD(adev)
Definition: afhba_stream_drv.h:182