/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* atmdev.h - ATM device driver declarations and various related items */ /* Written 1995-2000 by Werner Almesberger, EPFL LRC/ICA */ #ifndef _UAPILINUX_ATMDEV_H #define _UAPILINUX_ATMDEV_H #include <linux/atmapi.h> #include <linux/atm.h> #include <linux/atmioc.h> #define ESI_LEN … #define ATM_OC3_PCR … /* OC3 link rate: 155520000 bps SONET overhead: /270*260 (9 section, 1 path) bits per cell: /8/53 max cell rate: 353207.547 cells/sec */ #define ATM_25_PCR … /* 25 Mbps ATM cell rate (59111) */ #define ATM_OC12_PCR … /* OC12 link rate: 622080000 bps SONET overhead: /1080*1040 bits per cell: /8/53 max cell rate: 1412830.188 cells/sec */ #define ATM_DS3_PCR … /* DS3: 12 cells in a 125 usec time slot */ #define __AAL_STAT_ITEMS … struct atm_aal_stats { … }; struct atm_dev_stats { … } __ATM_API_ALIGN; #define ATM_GETLINKRATE … /* get link rate */ #define ATM_GETNAMES … /* get interface names (numbers) */ #define ATM_GETTYPE … /* get interface type name */ #define ATM_GETESI … /* get interface ESI */ #define ATM_GETADDR … /* get itf's local ATM addr. list */ #define ATM_RSTADDR … /* reset itf's ATM address list */ #define ATM_ADDADDR … /* add a local ATM address */ #define ATM_DELADDR … /* remove a local ATM address */ #define ATM_GETCIRANGE … /* get connection identifier range */ #define ATM_SETCIRANGE … /* set connection identifier range */ #define ATM_SETESI … /* set interface ESI */ #define ATM_SETESIF … /* force interface ESI */ #define ATM_ADDLECSADDR … /* register a LECS address */ #define ATM_DELLECSADDR … /* unregister a LECS address */ #define ATM_GETLECSADDR … /* retrieve LECS address(es) */ #define ATM_GETSTAT … /* get AAL layer statistics */ #define ATM_GETSTATZ … /* get AAL layer statistics and zero */ #define ATM_GETLOOP … /* get loopback mode */ #define ATM_SETLOOP … /* set loopback mode */ #define ATM_QUERYLOOP … /* query supported loopback modes */ #define ATM_SETSC … /* enable or disable single-copy */ #define ATM_SETBACKEND … /* set backend handler */ #define ATM_NEWBACKENDIF … /* use backend to make new if */ #define ATM_ADDPARTY … /* add party to p2mp call */ #define ATM_DROPPARTY … /* drop party from p2mp call */ /* * These are backend handkers that can be set via the ATM_SETBACKEND call * above. In the future we may support dynamic loading of these - for now, * they're just being used to share the ATMIOC_BACKEND ioctls */ #define ATM_BACKEND_RAW … #define ATM_BACKEND_PPP … #define ATM_BACKEND_BR2684 … /* for ATM_GETTYPE */ #define ATM_ITFTYP_LEN … /* * Loopback modes for ATM_{PHY,SAR}_{GET,SET}LOOP */ /* Point of loopback CPU-->SAR-->PHY-->line--> ... */ #define __ATM_LM_NONE … #define __ATM_LM_AAL … #define __ATM_LM_ATM … /* RESERVED 4 loop back on PHY side ---' */ #define __ATM_LM_PHY … #define __ATM_LM_ANALOG … /* Direction of loopback */ #define __ATM_LM_MKLOC(n) … #define __ATM_LM_MKRMT(n) … #define __ATM_LM_XTLOC(n) … #define __ATM_LM_XTRMT(n) … #define ATM_LM_NONE … #define ATM_LM_LOC_AAL … #define ATM_LM_LOC_ATM … #define ATM_LM_LOC_PHY … #define ATM_LM_LOC_ANALOG … #define ATM_LM_RMT_AAL … #define ATM_LM_RMT_ATM … #define ATM_LM_RMT_PHY … #define ATM_LM_RMT_ANALOG … /* * Note: ATM_LM_LOC_* and ATM_LM_RMT_* can be combined, provided that * __ATM_LM_XTLOC(x) <= __ATM_LM_XTRMT(x) */ struct atm_iobuf { … }; /* for ATM_GETCIRANGE / ATM_SETCIRANGE */ #define ATM_CI_MAX … struct atm_cirange { … }; /* for ATM_SETSC; actually taken from the ATM_VF number space */ #define ATM_SC_RX … #define ATM_SC_TX … #define ATM_BACKLOG_DEFAULT … /* MF: change_qos (Modify) flags */ #define ATM_MF_IMMED … #define ATM_MF_INC_RSV … #define ATM_MF_INC_SHP … #define ATM_MF_DEC_RSV … #define ATM_MF_DEC_SHP … #define ATM_MF_BWD … #define ATM_MF_SET … /* * ATM_VS_* are used to express VC state in a human-friendly way. */ #define ATM_VS_IDLE … #define ATM_VS_CONNECTED … #define ATM_VS_CLOSING … #define ATM_VS_LISTEN … #define ATM_VS_INUSE … #define ATM_VS_BOUND … #define ATM_VS2TXT_MAP … #define ATM_VF2TXT_MAP … #endif /* _UAPILINUX_ATMDEV_H */