Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 /* atm_zatm.h - Driver-specific declarations of the ZATM driver (for use by
0003         driver-specific utilities) */
0004 
0005 /* Written 1995-1999 by Werner Almesberger, EPFL LRC/ICA */
0006 
0007 
0008 #ifndef LINUX_ATM_ZATM_H
0009 #define LINUX_ATM_ZATM_H
0010 
0011 /*
0012  * Note: non-kernel programs including this file must also include
0013  * sys/types.h for struct timeval
0014  */
0015 
0016 #include <linux/atmapi.h>
0017 #include <linux/atmioc.h>
0018 
0019 #define ZATM_GETPOOL    _IOW('a',ATMIOC_SARPRV+1,struct atmif_sioc)
0020                         /* get pool statistics */
0021 #define ZATM_GETPOOLZ   _IOW('a',ATMIOC_SARPRV+2,struct atmif_sioc)
0022                         /* get statistics and zero */
0023 #define ZATM_SETPOOL    _IOW('a',ATMIOC_SARPRV+3,struct atmif_sioc)
0024                         /* set pool parameters */
0025 
0026 struct zatm_pool_info {
0027     int ref_count;          /* free buffer pool usage counters */
0028     int low_water,high_water;   /* refill parameters */
0029     int rqa_count,rqu_count;    /* queue condition counters */
0030     int offset,next_off;        /* alignment optimizations: offset */
0031     int next_cnt,next_thres;    /* repetition counter and threshold */
0032 };
0033 
0034 struct zatm_pool_req {
0035     int pool_num;           /* pool number */
0036     struct zatm_pool_info info; /* actual information */
0037 };
0038 
0039 #define ZATM_OAM_POOL       0   /* free buffer pool for OAM cells */
0040 #define ZATM_AAL0_POOL      1   /* free buffer pool for AAL0 cells */
0041 #define ZATM_AAL5_POOL_BASE 2   /* first AAL5 free buffer pool */
0042 #define ZATM_LAST_POOL  ZATM_AAL5_POOL_BASE+10 /* max. 64 kB */
0043 
0044 #define ZATM_TIMER_HISTORY_SIZE 16  /* number of timer adjustments to
0045                        record; must be 2^n */
0046 
0047 #endif