http://downloads.netgear.com/files/GPL/DM111PSP_v3.61d_GPL.tar.gz
[bcm963xx.git] / bcmdrivers / broadcom / include / bcm963xx / adsldrv.h
index 66e8f8a..888bd09 100755 (executable)
@@ -81,8 +81,9 @@ extern "C" {
     _IOR(ADSLDRV_MAJOR, 20, ADSLDRV_BERT_EX)
 #define ADSLIOCTL_STOP_BERT_EX \
     _IOR(ADSLDRV_MAJOR, 21, ADSLDRV_STATUS_ONLY)
-
-#define MAX_ADSLDRV_IOCTL_COMMANDS   22
+#define ADSLIOCTL_SET_OBJ_VALUE \
+    _IOR(ADSLDRV_MAJOR, 22, ADSLDRV_GET_OBJ)
+#define MAX_ADSLDRV_IOCTL_COMMANDS   23
 
 /* Typedefs. */
 typedef struct
@@ -92,10 +93,10 @@ typedef struct
 
 typedef struct
 {
-    ADSL_FN_NOTIFY_CB  pFnNotifyCb;
-    UINT32                             ulParm;
-       adslCfgProfile          *pAdslCfg;
-    BCMADSL_STATUS             bvStatus;
+    ADSL_FN_NOTIFY_CB pFnNotifyCb;
+    UINT32 ulParm;
+    adslCfgProfile *pAdslCfg;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_INITIALIZE, *PADSLDRV_INITIALIZE;
 
 typedef struct
@@ -106,8 +107,8 @@ typedef struct
 
 typedef struct
 {
-       UINT16 usAtmFastPortId;
-       UINT16 usAtmInterleavedPortId;
+    UINT16 usAtmFastPortId;
+    UINT16 usAtmInterleavedPortId;
     BCMADSL_STATUS bvStatus;
 } ADSLDRV_MAP_ATM_PORT, *PADSLDRV_MAP_ATM_PORT;
 
@@ -119,85 +120,103 @@ typedef struct
 
 typedef struct
 {
-    int                                diagCmd;
-    int                                diagMap;
-    int                                logTime;
-       int                             srvIpAddr;
-       int                             gwIpAddr;
-    BCMADSL_STATUS     bvStatus;
+    int diagCmd;
+    int diagMap;
+    int logTime;
+    int srvIpAddr;
+    int gwIpAddr;
+    BCMADSL_STATUS      bvStatus;
 } ADSLDRV_DIAG, *PADSLDRV_DIAG;
 
 typedef struct
 {
-       char                    *objId;
-       int                             objIdLen;
-       char                    *dataBuf;
-       long                    dataBufLen;
-    BCMADSL_STATUS     bvStatus;
+    char *objId;
+    int  objIdLen;
+    char *dataBuf;
+    long dataBufLen;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_GET_OBJ, *PADSLDRV_GET_OBJ;
 
 typedef struct
 {
-       unsigned long   totalBits;
-    BCMADSL_STATUS     bvStatus;
+    unsigned long totalBits;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_BERT, *PADSLDRV_BERT;
 
 typedef struct
 {
-       unsigned long   totalSec;
-    BCMADSL_STATUS     bvStatus;
+    unsigned long totalSec;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_BERT_EX, *PADSLDRV_BERT_EX;
 
 typedef struct
 {
-       adslCfgProfile          *pAdslCfg;
-    BCMADSL_STATUS             bvStatus;
+    adslCfgProfile *pAdslCfg;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_CONFIGURE, *PADSLDRV_CONFIGURE;
 
 typedef struct
 {
-       unsigned long   testCmd;
-       unsigned long   xmtStartTone;
-       unsigned long   xmtNumTones;
-       unsigned long   rcvStartTone;
-       unsigned long   rcvNumTones;
-    char                       *xmtToneMap;
-    char                       *rcvToneMap;
-    BCMADSL_STATUS     bvStatus;
+    unsigned long   testCmd;
+    unsigned long   xmtStartTone;
+    unsigned long   xmtNumTones;
+    unsigned long   rcvStartTone;
+    unsigned long   rcvNumTones;
+    char *xmtToneMap;
+    char *rcvToneMap;
+    BCMADSL_STATUS      bvStatus;
 } ADSLDRV_TEST, *PADSLDRV_TEST;
 
 typedef struct
 {
-       int                             toneId;
-       ADSL_CONSTELLATION_POINT        *pointBuf;
-       int                             numPoints;
-    BCMADSL_STATUS     bvStatus;
+    int toneId;
+    ADSL_CONSTELLATION_POINT *pointBuf;
+    int numPoints;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_GET_CONSTEL_POINTS, *PADSLDRV_GET_CONSTEL_POINTS;
 
 typedef struct
 {
-       adslVersionInfo         *pAdslVer;
-    BCMADSL_STATUS             bvStatus;
+    adslVersionInfo *pAdslVer;
+    BCMADSL_STATUS  bvStatus;
 } ADSLDRV_GET_VERSION, *PADSLDRV_GET_VERSION;
 
 typedef struct
 {
-       unsigned long   sdramBaseAddr;
-    BCMADSL_STATUS     bvStatus;
+    unsigned long sdramBaseAddr;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_SET_SDRAM_BASE, *PADSLDRV_SET_SDRAM_BASE;
 
 
 typedef struct
 {
-       int                             paramId;
-       void                    *buf;
-       int                             len;
-    BCMADSL_STATUS     bvStatus;
+    int paramId;
+    void *buf;
+    int len;
+    BCMADSL_STATUS bvStatus;
 } ADSLDRV_SET_OEM_PARAM, *PADSLDRV_SET_OEM_PARAM;
 
 #if defined(__cplusplus)
 }
 #endif
 
+
+/* declaration for read, write, poll operations */
+#define ADSL_EOC_FRAME_RCVD         (1 << BCM_ADSL_G997_FRAME_RECEIVED)
+#define ADSL_EOC_FRAME_SENT         (1 << BCM_ADSL_G997_FRAME_SENT)
+#define ADSL_LINK_DROPPED           (1 << BCM_ADSL_LINK_DOWN)
+#define ADSL_EOC_ANY_EVENT          (ADSL_EOC_FRAME_RCVD | ADSL_EOC_FRAME_SENT | ADSL_LINK_DROPPED)
+#define ADSL_EOC_RDWR_EVENT         (ADSL_EOC_FRAME_RCVD | ADSL_EOC_FRAME_SENT)
+
+#define ADSL_EOC_HDR                {0xff, 0x03, 0x81, 0x4c}
+#define ADSL_2P_HDR_OFFSET          2  /* 0x81, 4c */
+#define ADSL_HDR_OFFSET             0  /* 0xff, 0x3, 0x81, 4c */
+#define ADSL_EOC_HDR_LEN            4
+#define ADSL_2P_EOC_HDR_LEN         2
+#define ADSL_EOC_ENABLE             {0xff, 0x03, 0x00, 0x57}
+
+void AdslCheckLinkupMsg(void);
+void snmp_adsl_eoc_event(void);
+
 #endif // _ADSLDRV_H_