111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef LINUX_ATMDEV_H 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LINUX_ATMDEV_H 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/atmapi.h> 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/atm.h> 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/atmioc.h> 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ESI_LEN 6 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_OC3_PCR (155520000/270*260/8/53) 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_25_PCR ((25600000/8-8000)/54) 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_OC12_PCR (622080000/1080*1040/8/53) 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_DS3_PCR (8000*12) 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __AAL_STAT_ITEMS __HANDLE_ITEM(tx); __HANDLE_ITEM(tx_err); __HANDLE_ITEM(rx); __HANDLE_ITEM(rx_err); __HANDLE_ITEM(rx_drop); 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct atm_aal_stats { 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __HANDLE_ITEM(i) int i 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __AAL_STAT_ITEMS 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#undef __HANDLE_ITEM 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct atm_dev_stats { 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct atm_aal_stats aal0; 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct atm_aal_stats aal34; 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct atm_aal_stats aal5; 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} __ATM_API_ALIGN; 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETLINKRATE _IOW('a',ATMIOC_ITF+1,struct atmif_sioc) 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETNAMES _IOW('a',ATMIOC_ITF+3,struct atm_iobuf) 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETTYPE _IOW('a',ATMIOC_ITF+4,struct atmif_sioc) 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETESI _IOW('a',ATMIOC_ITF+5,struct atmif_sioc) 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETADDR _IOW('a',ATMIOC_ITF+6,struct atmif_sioc) 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_RSTADDR _IOW('a',ATMIOC_ITF+7,struct atmif_sioc) 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_ADDADDR _IOW('a',ATMIOC_ITF+8,struct atmif_sioc) 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_DELADDR _IOW('a',ATMIOC_ITF+9,struct atmif_sioc) 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETCIRANGE _IOW('a',ATMIOC_ITF+10,struct atmif_sioc) 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETCIRANGE _IOW('a',ATMIOC_ITF+11,struct atmif_sioc) 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETESI _IOW('a',ATMIOC_ITF+12,struct atmif_sioc) 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETESIF _IOW('a',ATMIOC_ITF+13,struct atmif_sioc) 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_ADDLECSADDR _IOW('a', ATMIOC_ITF+14, struct atmif_sioc) 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_DELLECSADDR _IOW('a', ATMIOC_ITF+15, struct atmif_sioc) 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETLECSADDR _IOW('a', ATMIOC_ITF+16, struct atmif_sioc) 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETSTAT _IOW('a',ATMIOC_SARCOM+0,struct atmif_sioc) 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETSTATZ _IOW('a',ATMIOC_SARCOM+1,struct atmif_sioc) 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_GETLOOP _IOW('a',ATMIOC_SARCOM+2,struct atmif_sioc) 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETLOOP _IOW('a',ATMIOC_SARCOM+3,struct atmif_sioc) 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_QUERYLOOP _IOW('a',ATMIOC_SARCOM+4,struct atmif_sioc) 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETSC _IOW('a',ATMIOC_SPECIAL+1,int) 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SETBACKEND _IOW('a',ATMIOC_SPECIAL+2,atm_backend_t) 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_NEWBACKENDIF _IOW('a',ATMIOC_SPECIAL+3,atm_backend_t) 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_ADDPARTY _IOW('a', ATMIOC_SPECIAL+4,struct atm_iobuf) 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_DROPPARTY _IOW('a', ATMIOC_SPECIAL+5,int) 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_BACKEND_RAW 0 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_BACKEND_PPP 1 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_BACKEND_BR2684 2 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_ITFTYP_LEN 8 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_NONE 0 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_AAL 1 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_ATM 2 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_PHY 8 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_ANALOG 16 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_MKLOC(n) ((n)) 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_MKRMT(n) ((n) << 8) 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_XTLOC(n) ((n) & 0xff) 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define __ATM_LM_XTRMT(n) (((n) >> 8) & 0xff) 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_NONE 0 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_LOC_AAL __ATM_LM_MKLOC(__ATM_LM_AAL) 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_LOC_ATM __ATM_LM_MKLOC(__ATM_LM_ATM) 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_LOC_PHY __ATM_LM_MKLOC(__ATM_LM_PHY) 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_LOC_ANALOG __ATM_LM_MKLOC(__ATM_LM_ANALOG) 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_RMT_AAL __ATM_LM_MKRMT(__ATM_LM_AAL) 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_RMT_ATM __ATM_LM_MKRMT(__ATM_LM_ATM) 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_RMT_PHY __ATM_LM_MKRMT(__ATM_LM_PHY) 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_LM_RMT_ANALOG __ATM_LM_MKRMT(__ATM_LM_ANALOG) 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct atm_iobuf { 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int length; 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert void __user *buffer; 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_CI_MAX -1 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct atm_cirange { 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert signed char vpi_bits; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert signed char vci_bits; 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SC_RX 1024 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_SC_TX 2048 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_BACKLOG_DEFAULT 32 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_IMMED 1 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_INC_RSV 2 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_INC_SHP 4 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_DEC_RSV 8 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_DEC_SHP 16 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_BWD 32 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_MF_SET (ATM_MF_INC_RSV | ATM_MF_INC_SHP | ATM_MF_DEC_RSV | ATM_MF_DEC_SHP | ATM_MF_BWD) 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_IDLE 0 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_CONNECTED 1 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_CLOSING 2 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_LISTEN 3 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_INUSE 4 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS_BOUND 5 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VS2TXT_MAP "IDLE", "CONNECTED", "CLOSING", "LISTEN", "INUSE", "BOUND" 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ATM_VF2TXT_MAP "ADDR", "READY", "PARTIAL", "REGIS", "RELEASED", "HASQOS", "LISTEN", "META", "256", "512", "1024", "2048", "SESSION", "HASSAP", "BOUND", "CLOSE" 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 162