www.usr.com/support/gpl/USR9113_release1.0.tar.gz
[bcm963xx.git] / bcmdrivers / broadcom / include / bcm963xx / atmapidrv.h
index 585a9fd..e55e14a 100755 (executable)
@@ -70,9 +70,18 @@ extern "C" {
     _IOWR(ATMDRV_MAJOR, 15, ATMDRV_OAM_LOOPBACK)
 #define ATMIOCTL_PORT_MIRRORING   \
     _IOWR(ATMDRV_MAJOR, 16, MirrorCfg)
+#define ATMIOCTL_GET_PRIORITY_PACKET_GROUP \
+    _IOWR(ATMDRV_MAJOR, 17, ATMDRV_PRIORITY_PACKET_GROUP)
+#define ATMIOCTL_SET_PRIORITY_PACKET_GROUP \
+    _IOWR(ATMDRV_MAJOR, 18, ATMDRV_PRIORITY_PACKET_GROUP)
+#define ATMIOCTL_SET_TRAFFIC_TYPE \
+    _IOWR(ATMDRV_MAJOR, 19, ATMDRV_TRAFFIC_TYPE)
+// USR9109/9113
+#define ATMIOCTL_NVRamCfg \
+    _IOWR(ATMDRV_MAJOR, 20, ATMDRV_SET_MAC)
 
 
-#define MAX_ATMDRV_IOCTL_COMMANDS   17
+#define MAX_ATMDRV_IOCTL_COMMANDS   21
 
 /* Typedefs. */
 typedef struct
@@ -85,6 +94,12 @@ typedef struct
     BCMATM_STATUS baStatus;
 } ATMDRV_INITIALIZE, *PATMDRV_INITIALIZE;
 
+// USR9109/9113
+typedef struct
+{   PATM_MAC_PARMS pMac;
+    BCMATM_STATUS baStatus;
+} ATMDRV_SET_MAC, *PATMDRV_SET_MAC;
+
 typedef struct
 {
     UINT8 ucPhyPort;
@@ -99,6 +114,14 @@ typedef struct
     BCMATM_STATUS baStatus;
 } ATMDRV_TRAFFIC_DESCR_TABLE_SIZE, *PATMDRV_TRAFFIC_DESCR_TABLE_SIZE;
 
+typedef struct
+{
+    UINT32 ulGroupNumber;
+    PATM_PRIORITY_PACKET_ENTRY pPriorityPackets;
+    UINT32 ulPriorityPacketsSize;
+    BCMATM_STATUS baStatus;
+} ATMDRV_PRIORITY_PACKET_GROUP, *PATMDRV_PRIORITY_PACKET_GROUP;
+
 typedef struct
 {
     PATM_TRAFFIC_DESCR_PARM_ENTRY pTrafficDescrTable;
@@ -159,11 +182,25 @@ typedef struct
     BCMATM_STATUS baStatus;
 } ATMDRV_TEST, *PATMDRV_TEST;
 
+typedef struct
+{
+    int ulTrafficType;
+    BCMATM_STATUS baStatus;
+}
+ATMDRV_TRAFFIC_TYPE, *PATMDRV_TRAFFIC_TYPE;
+
 typedef struct
 {
     ATM_VCC_ADDR VccAddr;
     UINT32 type;
     BCMATM_STATUS baStatus;
+    UINT32 repetition;
+    UINT32 timeout;
+    UINT32 sent;
+    UINT32 received;
+    UINT32 minResponseTime;
+    UINT32 maxResponseTime;
+    UINT32 avgResponseTime;
 } ATMDRV_OAM_LOOPBACK, *PATMDRV_OAM_LOOPBACK;
 
 #include "portMirror.h"
@@ -208,6 +245,10 @@ typedef struct
 #define RM_TYPE_DEFAULT                     0x20 /* forward/source_generated/congested */
 #define RM_UNUSED_BYTES_OFFSET              2
 #define RM_UNUSED_BYTES_LEN                 46
+#define OAM_LOOPBACK_DEFAULT_REPETITION     1
+#define OAM_LOOPBACK_DEFAULT_TIMEOUT        1000    /* msec */
+#define OAM_LOOPBACK_RX_TIMEOUT_INTERVAL    10     /* check receive of OAM response every 10 ms */
+
 #if defined(__cplusplus)
 }
 #endif