#ifndef RTK_RG_DEFINE_H #define RTK_RG_DEFINE_H #if defined(CONFIG_APOLLO) #include <hal/chipdef/chip.h> //for chip id and sub type #endif #ifdef __KERNEL__ #if defined(CONFIG_DEFAULTS_KERNEL_3_18) #else #include <linux/config.h> #endif #endif #define __IRAM_FWDENG __attribute__ ((section(".iram-fwd"))) #define __IRAM_FWDENG_L2 __attribute__ ((section(".iram-l2-fwd"))) #define __IRAM_FWDENG_L34 __attribute__ ((section(".iram-l34-fwd"))) #define __IRAM_FWDENG_SLOWPATH __attribute__ ((section(".iram-l34-fwd"))) #define __SRAM_FWDENG_SLOWPATH __attribute__ ((section(".sram_text"))) #define __SRAM_FWDENG_DATA __attribute__ ((section(".sram_data"))) /* for SMP */ #ifdef CONFIG_SMP /* tasklet */ #define MAX_RG_TASKLET_QUEUE_SIZE 1024 //must power of 2 #define rg_tasklet_queue_lock_irqsave(lock, flags) \ do { \ if(atomic_read(&rg_kernel.rg_tasklet_queue_entrance)>=1) \ WARNING("RG TASKLET QUEUE LOCK REDUPLICATE ENTRANCE!!"); \ atomic_inc(&rg_kernel.rg_tasklet_queue_entrance); \ preempt_disable(); \ local_bh_disable(); \ spin_lock_irqsave(lock, flags); \ } while (0) #define rg_tasklet_queue_unlock_irqrestore(lock, flags) \ do { \ spin_unlock_irqrestore(lock, flags); \ preempt_enable(); \ local_bh_enable(); \ atomic_dec(&rg_kernel.rg_tasklet_queue_entrance); \ if(atomic_read(&rg_kernel.rg_tasklet_queue_entrance)<0) \ WARNING("RG TASKLET QUEUE UNLOCK REDUPLICATE RELEASE!!"); \ } while (0) #endif #if defined(CONFIG_RTL9607C_SERIES) #ifdef CONFIG_RTL9600_SERIES #undef CONFIG_RTL9600_SERIES #endif #endif /* ysleu:For OpenWRT RG, if WLAN client mode is enabled, the specific CONFIG_MASTER_WLAN0_ENABLE must be enabled too but OpenWRT wireless driver(linux 3.18) does not define it.*/ #if defined(CONFIG_OPENWRT_RG) && defined(CONFIG_RTL_CLIENT_MODE_SUPPORT) #define CONFIG_MASTER_WLAN0_ENABLE #endif #define CONFIG_WIFI_REF_IGMP 1 #define RESERVED_FREE_RAM_SIZE (5*1024*1024) //reserved free ram size( 5M bytes ) #define DEFAULT_L2_LANIF_IDX 0 #define DEFAULT_L2_WANIF_IDX 0 #define DEFAULT_MC_WANIF_IDX 14 /* for gpon FPGA testing */ //#define CONFIG_APOLLO_GPON_FPGATEST /*Switch for NAPT and routing shortcut function */ #define CONFIG_ROME_NAPT_SHORTCUT /*Switch for NAPT table refresh by LRU */ #define CONFIG_ROME_NAPT_LRU /*Switch for NEIGHBOR table refresh by LRU */ #define CONFIG_ROME_NEIGHBOR_LRU /* System Module */ #define DEFAULT_CPU_VLAN 1 #if defined(CONFIG_RTL9600_SERIES) #else #define DEFAULT_CPU_SVLAN 2 #endif #ifdef CONFIG_RG_WAN_PORT_ISOLATE #if defined(CONFIG_RTL9600_SERIES) #define DEFAULT_WAN_VLAN 2 #else #define DEFAULT_WAN_VLAN 3 #endif #endif #define DEFAULT_PROTO_BLOCK_VLAN 4000 //used for IP_version only_mode, as PVID to block traffic to other port #define DEFAULT_BIND_INTERNET 4005 #define DEFAULT_BIND_OTHER 4012 //this will use 4012~4012+DEFAULT_BIND_LAN_OFFSET+DEFAULT_BIND_WLAN_OFFSET #ifdef CONFIG_MASTER_WLAN0_ENABLE #ifdef CONFIG_RTL_WDS_SUPPORT #ifdef CONFIG_RTL_VAP_SUPPORT #define DEFAULT_BIND_LAN_OFFSET 18 //0,1,2,3 ext-0, ext-1, root, vap1, vap2, vap3, vap4, wds5, wds6, wds7 ,wds8, wds9, wds10, wds11, wds12 #else #define DEFAULT_BIND_LAN_OFFSET 14 //0,1,2,3 ext-0, ext-1, root, wds1, wds2, wds3 ,wds4, wds5, wds6, wds7, wds8 #endif #else #ifdef CONFIG_RTL_VAP_SUPPORT #define DEFAULT_BIND_LAN_OFFSET 10 //0,1,2,3 ext-0, ext-1, root, vap1, vap2, vap3, vap4 #else #define DEFAULT_BIND_LAN_OFFSET 5 //0,1,2,3 ext-0, ext-1 #endif #endif #else #define DEFAULT_BIND_LAN_OFFSET 5 //0,1,2,3 ext-0, ext-1 #endif //#define DEFAULT_WAN_PVID 4001 //#define DEFAULT_PPB_VLAN_WAN 4002 //used for wan port //#define DEFAULT_PPB_VLAN_START 4003 //used for each lan #if defined(CONFIG_RTL9607C_SERIES) #define HOST_POLICING_TABLE_SIZE 32 #define V4_DEFAULT_ROUTE_IDX 15 #define V6_DEFAULT_ROUTE_IDX 7 #define V6_HW_DEFAULT_ROUTE_IDX 7 #elif defined(CONFIG_RTL9602C_SERIES) #define HOST_POLICING_TABLE_SIZE 8 #define V4_DEFAULT_ROUTE_IDX 15 #define V6_DEFAULT_ROUTE_IDX 7 #define V6_HW_DEFAULT_ROUTE_IDX 7 #elif defined(CONFIG_RTL9600_SERIES) #define V4_DEFAULT_ROUTE_IDX 7 #ifdef CONFIG_RG_IPV6_NAPT_SUPPORT #define V6_DEFAULT_ROUTE_IDX 7 #else #define V6_DEFAULT_ROUTE_IDX 3 #endif #define V6_HW_DEFAULT_ROUTE_IDX 3 #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define V4_DEFAULT_ROUTE_IDX 7 #define V6_DEFAULT_ROUTE_IDX 7 #define V6_HW_DEFAULT_ROUTE_IDX 3 #endif #ifdef CONFIG_DUALBAND_CONCURRENT #define SLAVE_WIFI_ROUTE_IDX 6 #define SLAVE_SSID_TAG_ETH 0x889a #define SLAVE_SSID_TAG_LEN 4 #endif #if defined(CONFIG_RTL9607C_SERIES) #define DEFAULT_L3MCR_IDX 0 #define LAN_FID 1 #define WAN_FID 1 #define Layer2HOUSE_KEEP_NUM 264 //how many entries should be check at once, MUST be the common divisor of LUT table #elif defined(CONFIG_RTL9602C_SERIES) #define DEFAULT_L3MCR_IDX 0 #define LAN_FID 1 #define WAN_FID 1 #define Layer2HOUSE_KEEP_NUM 136 //how many entries should be check at once, MUST be the common divisor of LUT table #elif defined(CONFIG_RTL9600_SERIES) #define LAN_FID 2 #define WAN_FID 2 #define Layer2HOUSE_KEEP_NUM 264 //how many entries should be check at once, MUST be the common divisor of LUT table #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) && defined(CONFIG_XDSL_ROMEDRIVER) #define LAN_FID 0 #define WAN_FID 0 #define Layer2HOUSE_KEEP_NUM 256 //how many entries should be check at once, MUST be the common divisor of LUT table #endif #define NIC_RX_PRIORITY 16 //used to nic register for RX #define WanAccessCategoryNum 8 #define MAX_WanAccessARPCount 1 //means we only send "MAX_WanAccessARPCount" times to check host on-line or not, each count will ask for THREE times. //#define RTK_RG_EGRESS_QOS_TEST_PATCH 0 //#define RTK_RG_INGRESS_QOS_TEST_PATCH 0 #define RG_MIN_MRU 60 //#define PPPOE_DISCOVERY_GROUPID 0 //#define PPPOE_SESSION_GROUPID 1 /* Port and Protocol VLAN Group */ #define MAX_PORT_PROTO_GROUP_SIZE 4 #define RG_IPV4_GROUPID 0 #define RG_ARP_GROUPID 1 #define RG_IPV6_GROUPID 2 #define RG_IPV4_ETHERTYPE 0x0800 #define RG_ARP_ETHERTYPE 0x0806 #define RG_IPV6_ETHERTYPE 0x86dd #define RG_PPPOED_ETHERTYPE 0x8863 #define RG_PPPOES_ETHERTYPE 0x8864 #define RG_IPV4_PPP_PROTOCOL 0x0021 #define RG_IPV6_PPP_PROTOCOL 0x0057 #define RG_IP_PROTO_HOPOPT 0x00 #define RG_IP_PROTO_ICMP 0x01 #define RG_IP_PROTO_IGMP 0x02 #define RG_IP_PROTO_IPinIP 0x04 #define RG_IP_PROTO_TCP 0x06 #define RG_IP_PROTO_IGP 0x09 #define RG_IP_PROTO_UDP 0x11 #define RG_IP_PROTO_IPv6_Route 0x2b #define RG_IP_PROTO_IPv6_Frag 0x2c #define RG_IP_PROTO_IPv6 0x29 #define RG_IP_PROTO_IDRP 0x2d #define RG_IP_PROTO_RSVP 0x2e #define RG_IP_PROTO_GRE 0x2f #define RG_IP_PROTO_ESP 0x32 #define RG_IP_PROTO_AH 0x33 #define RG_IP_PROTO_ICMPv6 0x3a #define RG_IP_PROTO_IPv6_NoNxt 0x3b #define RG_IP_PROTO_IPV6_OPTS 0x3c #define RG_IP_PROTO_EIGRP 0x58 #define RG_IP_PROTO_OSPF 0x59 #define RG_IP_PROTO_PIM 0x67 #define RG_IP_PROTO_IPComp 0x6c #define RG_IP_PROTO_L2TP 0x73 #define RG_IP_PROTO_SCTP 0x84 #define RG_IP_PROTO_Mob_Header 0x87 #define RG_IP_PROTO_HIP 0x8b #define RG_IP_PROTO_Shim6 0x8c #define FRAGMENT_LIST_TIMEOUT 60 #define FRAGMENT_QUEUE_TIMEOUT 60 #if 0 #define APOLLO_SWITCH_CHIP 0x6266 #define APOLLO_SWITCH_CHIP_REV_B 0x3 #define APOLLO_SWITCH_CHIP_REV_C 0x4 //#define APOLLO_SWITCH_CHIP_REV_C 0x0 //only for debug (don't patch old ic function) #define APOLLO_SWITCH_CHIP_REV_D 0x5 #endif #define PATCH_6266_MTU_PPPOE 8 #define PATCH_6266_MTU_BINDING 2 //rtk_rg_skb_preallocate for apollo only #ifdef CONFIG_APOLLO #define RTK_RG_SKB_PREALLOCATE 1 #else #ifdef RTK_RG_SKB_PREALLOCATE #undef RTK_RG_SKB_PREALLOCATE #endif #if defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define RTK_RG_SKB_PREALLOCATE 0 #endif // defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #endif #if defined(CONFIG_DUALBAND_CONCURRENT) #define SKB_BUF_SIZE 1800 #else #define SKB_BUF_SIZE 1600 #endif /* RTK RG Timeout Defination */ #ifdef __KERNEL__ #define TICKTIME_PERIOD (CONFIG_HZ) //How many jiffies per second #endif #define RTK_RG_DEFAULT_HOUSE_KEEP_SECOND 2 //secs #define RTK_RG_DEFAULT_ARP_REQUEST_INTERVAL_SECOND 1 // 1 secs #define RTK_RG_DEFAULT_AUTO_TEST_FAIL_ARP_INTERVAL_SECOND 4 //unit: (1/10)sec #define RTK_RG_DEFAULT_MCAST_QUERY_INTERVAL 30 //secs #define RTK_RG_DEFAULT_IGMP_SYS_TIMER_INTERVAL 10 //secs #define RTK_RG_DEFAULT_IGMP_SYS_MAX_SIMULTANEOUS_GROUP_SIZE_UNLIMIT 0 //0 means unlimited size #define RTK_RG_SWRATELIMIT_SECOND 1 //unit: (1/16)sec #if defined(CONFIG_ROME_NAPT_SHORTCUT) #define RTK_RG_DEFAULT_V4_SHORTCUT_TIMEOUT 3600 // 1 hour #define V4_SHORTCUT_KEEP_NUM (MAX_NAPT_SHORTCUT_SIZE>>4) // how many entries should be check at once, MUST be the common divisor of v4 shortcut table size #endif #if defined(CONFIG_RG_IPV6_SOFTWARE_SHORTCUT_SUPPORT) #define RTK_RG_DEFAULT_V6_SHORTCUT_TIMEOUT 3600 // 1 hour #define V6_SHORTCUT_KEEP_NUM (MAX_NAPT_V6_SHORTCUT_SIZE) // how many entries should be check at once, MUST be the common divisor of v6 shortcut table size #endif #if defined(CONFIG_RG_FLOW_AUTO_AGEOUT) #define RTK_RG_DEFAULT_FLOW_TIMEOUT 3600 // 1 hour #if defined(CONFIG_RG_FLOW_4K_MODE) #define FLOW_KEEP_NUM MAX_FLOW_HW_TABLE_SIZE // how many entries should be check at once, MUST be the common divisor of MAX_FLOW_HW_TABLE_SIZE #else #define FLOW_KEEP_NUM 4096 // how many entries should be check at once, MUST be the common divisor of MAX_FLOW_HW_TABLE_SIZE #endif #endif #define RTK_RG_DEFAULT_TCP_LONG_TIMEOUT 3600 // 1 hour #define RTK_RG_DEFAULT_TCP_SHORT_TIMEOUT 20 // 20 secs #define RTK_RG_DEFAULT_UDP_LONG_TIMEOUT 600 // 10 mins #define RTK_RG_DEFAULT_UDP_SHORT_TIMEOUT 20 // 20 secs #define RTK_RG_DEFAULT_ARP_TIMEOUT 300 // 300 secs #define RTK_RG_DEFAULT_NEIGHBOR_TIMEOUT 300 // 300 secs #if defined(CONFIG_RTL9600_SERIES) #else //support lut traffic bit #define RTK_RG_DEFAULT_L2_TIMEOUT 300 // 300 secs #endif /* RTK RG API */ #if defined(CONFIG_RTL9607C_SERIES) #define RTK_RG_MAX_MAC_PORT 11 #define RTK_RG_MAX_EXT_PORT (RTK_RG_PORT_MAX - RTK_RG_EXT_PORT0) #define RTK_RG_ALL_MAC_PORTMASK ((1<<RTK_RG_MAC_PORT_MAX) - 1) #define RTK_RG_ALL_MAC_PORTMASK_WITHOUT_CPU ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT_PON)) #define RTK_RG_ALL_CPU_PORTMASK ((1<<RTK_RG_PORT_SLAVECPU) | (1<<RTK_RG_PORT_MASTERCPU_CORE0) | (1<<RTK_RG_PORT_MASTERCPU_CORE1)) #define RTK_RG_ALL_EXT_PORTMASK ((1<<RTK_RG_EXT_PORT0)|(1<<RTK_RG_EXT_PORT1)|(1<<RTK_RG_EXT_PORT2)|(1<<RTK_RG_EXT_PORT3)|(1<<RTK_RG_EXT_PORT4)|(1<<RTK_RG_EXT_PORT5)) #define RTK_RG_ALL_VIRUAL_PORTMASK ((1<<(RTK_RG_PORT_MAX-RTK_RG_EXT_PORT0))-1) #define RTK_RG_ALL_USED_VIRUAL_PORTMASK RTK_RG_ALL_VIRUAL_PORTMASK // T.B.D. #define RTK_RG_ALL_LAN_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT4)) #elif defined(CONFIG_RTL9602C_SERIES) #define RTK_RG_MAX_MAC_PORT 4 #define RTK_RG_MAX_EXT_PORT (RTK_RG_PORT_MAX - RTK_RG_PORT_CPU) #define RTK_RG_ALL_MAC_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT_PON)|(1<<RTK_RG_MAC_PORT_CPU)) #define RTK_RG_ALL_MAC_PORTMASK_WITHOUT_CPU ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT_PON)) #define RTK_RG_ALL_EXT_PORTMASK ((1<<RTK_RG_EXT_PORT0)|(1<<RTK_RG_EXT_PORT1)|(1<<RTK_RG_EXT_PORT2)|(1<<RTK_RG_EXT_PORT3)|(1<<RTK_RG_EXT_PORT4)|(1<<RTK_RG_EXT_PORT5)) #define RTK_RG_ALL_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT2-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT3-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT4-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT5-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_USED_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_LAN_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)) #elif defined(CONFIG_RTL9600_SERIES) #define RTK_RG_MAX_MAC_PORT 7 #define RTK_RG_MAX_EXT_PORT (RTK_RG_PORT_MAX - RTK_RG_PORT_CPU) #define RTK_RG_ALL_MAC_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT_PON)|(1<<RTK_RG_MAC_PORT_RGMII)|(1<<RTK_RG_MAC_PORT_CPU)) #define RTK_RG_ALL_MAC_PORTMASK_WITHOUT_CPU ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT_PON)|(1<<RTK_RG_MAC_PORT_RGMII)) #define RTK_RG_ALL_EXT_PORTMASK ((1<<RTK_RG_EXT_PORT0)|(1<<RTK_RG_EXT_PORT1)|(1<<RTK_RG_EXT_PORT2)|(1<<RTK_RG_EXT_PORT3)|(1<<RTK_RG_EXT_PORT4)) #define RTK_RG_ALL_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT2-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT3-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT4-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_USED_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_LAN_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)) #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define RTK_RG_MAX_MAC_PORT 7 #define RTK_RG_MAX_EXT_PORT (RTK_RG_PORT_MAX - RTK_RG_PORT_CPU) #define RTK_RG_ALL_MAC_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT_PON)|(1<<RTK_RG_MAC_PORT_RGMII)|(1<<RTK_RG_MAC_PORT_CPU)) #define RTK_RG_ALL_MAC_PORTMASK_WITHOUT_CPU ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)|(1<<RTK_RG_MAC_PORT_PON)|(1<<RTK_RG_MAC_PORT_RGMII)) #define RTK_RG_ALL_EXT_PORTMASK ((1<<RTK_RG_EXT_PORT0)|(1<<RTK_RG_EXT_PORT1)|(1<<RTK_RG_EXT_PORT2)|(1<<RTK_RG_EXT_PORT3)|(1<<RTK_RG_EXT_PORT4)) #define RTK_RG_ALL_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT2-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT3-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT4-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_USED_VIRUAL_PORTMASK (1|(1<<(RTK_RG_EXT_PORT0-RTK_RG_PORT_CPU))|(1<<(RTK_RG_EXT_PORT1-RTK_RG_PORT_CPU))) #define RTK_RG_ALL_LAN_PORTMASK ((1<<RTK_RG_MAC_PORT0)|(1<<RTK_RG_MAC_PORT1)|(1<<RTK_RG_MAC_PORT2)|(1<<RTK_RG_MAC_PORT3)) #endif //#define MAX_ASIC_NXTHOP_TBL_SIZE 32 //#define MAX_ASIC_NETIF_TBL_SIZE 8 //20141219LUKE: used to transform egress WAN intf to ingress pattern #define CONFIG_ACL_EGRESS_WAN_INTF_TRANSFORM 1 //NAPT filter for priority (pure software) #define MAX_NAPT_FILER_SW_ENTRY_SIZE 128 //GPON Broadcast to Lan filter and REmarking #define MAX_GPON_DS_BC_FILTER_SW_ENTRY_SIZE 128 /*StormControl*/ #define MAX_STORMCONTROL_ENTRY_SIZE 32 /* Queue weights structure */ #define RTK_RG_MAX_NUM_OF_QUEUE 8 #define RTK_RG_MAX_NUM_OF_GPON_QUEUE 128 /* SVLAN Module*/ /* SVlan */ #define SVLANMBRTBL_SIZE 64 // 64 member config #define SVLANMC2STBL_SIZE 8 // 8 MC2S, Multicast to SVID #define SVLANC2STBL_SIZE 128 // 128 C2S, CVID/PVID to SVID #define SVLANSP2CTBL_SIZE 128 // 128 SP2C, SVID to CVID/PVID /* ALG Module */ #define MAX_ALG_FUNCTIONS 32 //#define FTP_PORT_STR 0x504f5254 //LUKE20130816: move to separate ALG file //#define FTP_PASV_RESP_STR 0x32323720 //LUKE20130816: move to separate ALG file #define L2TP_CTRL_MSG_STR 0xc802 //#define MAX_FTP_CTRL_FLOW_SIZE 32 //LUKE20130816: move to separate ALG file #define ALG_SRV_IN_LAN_IDX 8 #define MAX_L2TP_CTRL_FLOW_SIZE 32 #define ALG_RTSP_UPNP_TIMEOUT 300 #define ALG_H323_UPNP_TIMEOUT 300 #define ALG_FTP_PASV_UPNP_TIMEOUT 30 //secs #define ALG_FTP_ACTIVE_UPNP_TIMEOUT 30 //secs #define ALG_SIP_UPNP_TIMEOUT 30 #define ALG_BATTLENET_UPNP_TIMEOUT 30000 #define PPTP_CTRL_MSG_TYPE 1 // 1 for Control Message #define PPTP_MAGIC 0x1a2b3c4d #define MAX_PPTP_SESSION_SIZE 16 #define MAX_ALG_SERV_IN_LAN_NUM 8 #define MAX_ALG_DYNAMIC_PORT_NUM 256 #define CONFIG_RG_ROMEDRIVER_ALG_BATTLENET_SUPPORT 1 #define RTK_RG_MAX_SC_CLIENT 1 #if defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_V4MULTICAST_HW_TABLE_SIZE 256 #define MAX_V6MULTICAST_HW_TABLE_SIZE 256 #endif /* HW & SW Combine tables */ #define MAX_VLAN_SW_TABLE_SIZE 4096 #define MAX_VLAN_HW_TABLE_SIZE 4096 #define MAX_LUT_SW_LIST_SIZE 512 //used for access WAN limit //-------------------------------------------------------------- #ifdef CONFIG_RTL9607C_SERIES #define MAX_LUT_BCAM_TABLE_SIZE_SHIFT 6 #define LUT_HW_TABLE_SIZE_SHIFT 11 #define LUT_HW_TABLE_SIZE (1 << LUT_HW_TABLE_SIZE_SHIFT) #define MAX_NETIF_SW_TABLE_SIZE_SHIFT 4 #define MAX_NETIF_HW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_SW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_HW_TABLE_SIZE_SHIFT 0 #define MAX_L3_SW_TABLE_SIZE_SHIFT 4 #define MAX_L3_HW_TABLE_SIZE_SHIFT 0 #define MAX_ARP_SW_TABLE_SIZE_SHIFT 10 #define MAX_ARP_HW_TABLE_SIZE_SHIFT 0 #if defined(CONFIG_APOLLO_FPGA_PHY_TEST) #define MAX_LUT_BCAM_TABLE_SIZE_FPGA 8 #endif //-------------------------------------------------------------- #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_LUT_BCAM_TABLE_SIZE_SHIFT 6 #define LUT_HW_TABLE_SIZE_SHIFT 10 #define LUT_HW_TABLE_SIZE (1 << LUT_HW_TABLE_SIZE_SHIFT) #define MAX_NETIF_SW_TABLE_SIZE_SHIFT 4 #define MAX_NETIF_HW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_SW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_HW_TABLE_SIZE_SHIFT 3 #define MAX_L3_SW_TABLE_SIZE_SHIFT 4 #define MAX_L3_HW_TABLE_SIZE_SHIFT 4 #define MAX_ARP_SW_TABLE_SIZE_SHIFT 10 #if defined(CONFIG_APOLLO_FPGA_PHY_TEST) #define MAX_LUT_BCAM_TABLE_SIZE_FPGA 8 #define MAX_ARP_HW_TABLE_SIZE_FPGA 16 #define MAX_ARP_HW_TABLE_SIZE_SHIFT 5 //FPGA only 32 entries, but real IC is 128 entries. #else #define MAX_ARP_HW_TABLE_SIZE_SHIFT 7 #endif #define MAX_DSLITE_SW_TABLE_SIZE 4 #define MAX_DSLITE_HW_TABLE_SIZE 4 #define MAX_IPMV6_L3MCR_TABL_SIZE 8 //each entry per port point to multicast routing translate table (for rtk_l34_ip6mcRoutingTransIdx_set/get) //-------------------------------------------------------------- #elif defined(CONFIG_RTL9600_SERIES) #define MAX_LUT_BCAM_TABLE_SIZE_SHIFT 6 #define LUT_HW_TABLE_SIZE_SHIFT 11 #define LUT_HW_TABLE_SIZE (1 << LUT_HW_TABLE_SIZE_SHIFT) #define MAX_NETIF_SW_TABLE_SIZE_SHIFT 4 #define MAX_NETIF_HW_TABLE_SIZE_SHIFT 3 #define MAX_EXTIP_SW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_HW_TABLE_SIZE_SHIFT 3 #define MAX_L3_SW_TABLE_SIZE_SHIFT 4 #define MAX_L3_HW_TABLE_SIZE_SHIFT 3 #define MAX_ARP_SW_TABLE_SIZE_SHIFT 10 #if defined(CONFIG_APOLLO_FPGA_PHY_TEST) #define MAX_ARP_HW_TABLE_SIZE_FPGA 16 #define MAX_ARP_HW_TABLE_SIZE_SHIFT 5 //FPGA only 32 entries, but real IC is 128 entries. #else #define MAX_ARP_HW_TABLE_SIZE_SHIFT 9 #endif //-------------------------------------------------------------- #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_LUT_BCAM_TABLE_SIZE_SHIFT 0 #define LUT_HW_TABLE_SIZE (RTL8651_L2TBL_ROW*RTL8651_L2TBL_COLUMN) #define MAX_NETIF_SW_TABLE_SIZE_SHIFT 4 #define MAX_NETIF_HW_TABLE_SIZE_SHIFT 3 #define MAX_EXTIP_SW_TABLE_SIZE_SHIFT 4 #define MAX_EXTIP_HW_TABLE_SIZE_SHIFT 3 #define MAX_L3_SW_TABLE_SIZE_SHIFT 4 #define MAX_L3_HW_TABLE_SIZE_SHIFT 3 #define MAX_ARP_SW_TABLE_SIZE_SHIFT 10 #if defined(CONFIG_APOLLO_FPGA_PHY_TEST) #define MAX_ARP_HW_TABLE_SIZE_FPGA 16 #define MAX_ARP_HW_TABLE_SIZE_SHIFT 5 //FPGA only 32 entries, but real IC is 128 entries. #else #define MAX_ARP_HW_TABLE_SIZE_SHIFT 9 #endif //-------------------------------------------------------------- #endif // lut table #if defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_LUT_BCAM_TABLE_SIZE 0 #else #define MAX_LUT_BCAM_TABLE_SIZE (1 << MAX_LUT_BCAM_TABLE_SIZE_SHIFT) #endif #define MAX_LUT_HW_TABLE_SIZE (LUT_HW_TABLE_SIZE+MAX_LUT_BCAM_TABLE_SIZE) #ifdef CONFIG_XDSL_NEW_HWNAT_DRIVER #define MAX_LUT_SW_TABLE_SIZE ((MAX_OF_RTL865x_L2TBL_ROW*RTL8651_L2TBL_COLUMN)+MAX_LUT_SW_LIST_SIZE) //2048+MAX_LUT_SW_LIST_SIZE #else #define MAX_LUT_SW_TABLE_SIZE (MAX_LUT_HW_TABLE_SIZE+MAX_LUT_SW_LIST_SIZE) #endif // netif table #define MAX_NETIF_SW_TABLE_SIZE (1 << MAX_NETIF_SW_TABLE_SIZE_SHIFT) //please check MAX_NETIF_SW_TABLE_SIZE= (SC_BFW_INTFIDX -1) #define MAX_NETIF_HW_TABLE_SIZE (1 << MAX_NETIF_HW_TABLE_SIZE_SHIFT) // external ip table #define MAX_EXTIP_SW_TABLE_SIZE (1 << MAX_EXTIP_SW_TABLE_SIZE_SHIFT) //please check MAX_EXTIP_SW_TABLE_SIZE= 1<<(SC_BFW_EIPIDX-1) #if defined(CONFIG_RTL9607C_SERIES) #define MAX_EXTIP_HW_TABLE_SIZE 0 #else #define MAX_EXTIP_HW_TABLE_SIZE (1 << MAX_EXTIP_HW_TABLE_SIZE_SHIFT) #endif // arp table #define MAX_ARP_SW_TABLE_SIZE (1 << MAX_ARP_SW_TABLE_SIZE_SHIFT) #if defined(CONFIG_RTL9607C_SERIES) #define MAX_ARP_HW_TABLE_SIZE 0 #else #define MAX_ARP_HW_TABLE_SIZE (1 << MAX_ARP_HW_TABLE_SIZE_SHIFT) #endif // l3 table #define MAX_L3_SW_TABLE_SIZE (1 << MAX_L3_SW_TABLE_SIZE_SHIFT) #if defined(CONFIG_RTL9607C_SERIES) #define MAX_L3_HW_TABLE_SIZE 0 #else #define MAX_L3_HW_TABLE_SIZE (1 << MAX_L3_HW_TABLE_SIZE_SHIFT) #endif #define MAX_PPPOE_SW_TABLE_SIZE 16 #define MAX_NEXTHOP_SW_TABLE_SIZE 32 #define MAX_DSLITEMC_SW_TABLE_SIZE 4 #if defined(CONFIG_RTL9607C_SERIES) #define MAX_PPPOE_HW_TABLE_SIZE 0 #define MAX_NEXTHOP_HW_TABLE_SIZE 0 #define MAX_DSLITEMC_HW_TABLE_SIZE 0 #else #define MAX_PPPOE_HW_TABLE_SIZE 8 #define MAX_NEXTHOP_HW_TABLE_SIZE 16 #define MAX_DSLITEMC_HW_TABLE_SIZE 4 #endif #define MAX_STATIC_ROUTE_SIZE MAX_L3_SW_TABLE_SIZE #define MAX_DSLITE_MTU_SIZE 1460 //1500 pre-minus IPV6 headers #define MAX_PPPOEDSLITE_MTU_SIZE 1452 //1492 pre-minus IPV6 headers #if defined(CONFIG_RTL9602C_SERIES) || defined(CONFIG_RTL9600_SERIES) || defined(CONFIG_RTL9607C_SERIES) #ifdef CONFIG_RG_SW_NAPT_SIZE_L #define MAX_NAPT_IN_SW_TABLE_SHIFT 16 #else #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_IN_SW_TABLE_SHIFT 13 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_NAPT_IN_SW_TABLE_SHIFT 13 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_NAPT_IN_SW_TABLE_SHIFT 12 #endif #endif #define MAX_NAPT_IN_SW_TABLE_SIZE (1 << MAX_NAPT_IN_SW_TABLE_SHIFT) #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_IN_HW_TABLE_SHIFT 0 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_NAPT_IN_HW_TABLE_SHIFT 12 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_NAPT_IN_HW_TABLE_SHIFT 10 #endif #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_IN_HW_TABLE_SIZE 0 #define MAX_NAPT_IN_HASH_SIZE 1024 #else #define MAX_NAPT_IN_HW_TABLE_SIZE (1 << MAX_NAPT_IN_HW_TABLE_SHIFT) #define MAX_NAPT_IN_HASH_SIZE (MAX_NAPT_IN_HW_TABLE_SIZE>>2) #endif #ifdef CONFIG_RG_SW_NAPT_SIZE_L #define MAX_NAPT_OUT_SW_TABLE_SHIFT 16 #else #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_OUT_SW_TABLE_SHIFT 13 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_NAPT_OUT_SW_TABLE_SHIFT 13 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_NAPT_OUT_SW_TABLE_SHIFT 12 #endif #endif #define MAX_NAPT_OUT_SW_TABLE_SIZE (1 << MAX_NAPT_OUT_SW_TABLE_SHIFT) #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_OUT_HW_TABLE_SHIFT 0 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_NAPT_OUT_HW_TABLE_SHIFT 12 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_NAPT_OUT_HW_TABLE_SHIFT 11 #endif #if defined(CONFIG_RTL9607C_SERIES) #define MAX_NAPT_OUT_HW_TABLE_SIZE 0 #define MAX_NAPT_OUT_HASH_SIZE 1024 #else #define MAX_NAPT_OUT_HW_TABLE_SIZE (1 << MAX_NAPT_OUT_HW_TABLE_SHIFT) #define MAX_NAPT_OUT_HASH_SIZE (MAX_NAPT_OUT_HW_TABLE_SIZE>>2) #endif #if defined(CONFIG_RTL9607C_SERIES) #define MAX_SHAREMETER_TABLE_SIZE 48 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_SHAREMETER_TABLE_SIZE 16 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_SHAREMETER_TABLE_SIZE 32 #endif #ifdef CONFIG_RG_SW_NAPT_SIZE_L #if MAX_NAPT_OUT_SW_TABLE_SIZE > 65536 #error "Out of FwdEngine NAPT flow size" #endif #else #if MAX_NAPT_OUT_SW_TABLE_SIZE > 32767 #error "Out of FwdEngine NAPT flow size" #endif #endif #if MAX_NAPT_OUT_HW_TABLE_SIZE > MAX_NAPT_OUT_SW_TABLE_SIZE #error "NAPT SW/HW table size configure error!" #endif #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_NAPT_IN_SW_TABLE_SHIFT 12 #define MAX_NAPT_IN_SW_TABLE_SIZE (1 << MAX_NAPT_IN_SW_TABLE_SHIFT) #define MAX_NAPT_IN_HW_TABLE_SHIFT 10 #define MAX_NAPT_IN_HW_TABLE_SIZE (1 << MAX_NAPT_IN_HW_TABLE_SHIFT) #define MAX_NAPT_OUT_SW_TABLE_SHIFT 12 #define MAX_NAPT_OUT_SW_TABLE_SIZE (1 << MAX_NAPT_OUT_SW_TABLE_SHIFT) #define MAX_NAPT_OUT_HW_TABLE_SHIFT 10 #define MAX_NAPT_OUT_HW_TABLE_SIZE (1 << MAX_NAPT_OUT_HW_TABLE_SHIFT) #define MAX_SHAREMETER_TABLE_SIZE 32 #if MAX_NAPT_IN_HW_TABLE_SIZE != 1024 #error "NAPT-R H/W table size error!" #endif #if MAX_NAPT_OUT_SW_TABLE_SIZE > 32767 #error "Out of FwdEngine NAPT flow size" #endif #if MAX_NAPT_OUT_HW_TABLE_SIZE != 1024 #error "NAPT H/W table size error!" #endif #if MAX_NAPT_OUT_HW_TABLE_SIZE > MAX_NAPT_OUT_SW_TABLE_SIZE #error "NAPT SW/HW table size configure error!" #endif #endif #if defined(CONFIG_RG_FLOW_BASED_PLATFORM) #if defined(CONFIG_RTL9607C_SERIES) #if defined(CONFIG_RG_FLOW_4K_MODE) #define MAX_FLOW_TABLE_SIZE RTL9607C_TABLESIZE_FLOWSRAM #define MAX_FLOW_TCAM_TABLE_SIZE RTL9607C_TABLESIZE_FLOWTCAM #elif defined(CONFIG_RG_FLOW_8K_MODE) #define MAX_FLOW_TABLE_SIZE FLOWTABLE_DDR_8K #elif defined(CONFIG_RG_FLOW_16K_MODE) #define MAX_FLOW_TABLE_SIZE FLOWTABLE_DDR_16K #elif defined(CONFIG_RG_FLOW_32K_MODE) #define MAX_FLOW_TABLE_SIZE FLOWTABLE_DDR_32K #endif #if defined(CONFIG_RG_FLOW_4K_MODE) #define MAX_FLOW_WAYS_SHIFT 2 #else #define MAX_FLOW_WAYS_SHIFT 0 #endif #define MAX_FLOW_WAYS (1<<MAX_FLOW_WAYS_SHIFT) #if defined(CONFIG_RG_FLOW_4K_MODE) #define MAX_FLOW_HW_TABLE_SIZE (MAX_FLOW_TABLE_SIZE+MAX_FLOW_TCAM_TABLE_SIZE) #else #define MAX_FLOW_HW_TABLE_SIZE MAX_FLOW_TABLE_SIZE #endif #define MAX_FLOW_SW_TABLE_SIZE MAX_FLOW_HW_TABLE_SIZE #define MAX_EXTPORT_TABLE_SIZE RTL9607C_TABLESIZE_EXTPORT #define MAX_INDMAC_TABLE_SIZE RTL9607C_TABLESIZE_MACIND #define MAX_ETHTYPE_TABLE_SIZE RTL9607C_TABLESIZE_ETHERTYPE #define EXTPTBL_RSVED_ENTRY 1 // reserve entry[0] to indicate none extension port setting #endif //CONFIG_RTL9607C_SERIES #endif //CONFIG_RG_FLOW_BASED_PLATFORM #if defined(CONFIG_RTL9607C_SERIES) #define MAX_BIND_SW_TABLE_SIZE 32 #define MAX_BIND_HW_TABLE_SIZE 0 #define MAX_WANTYPE_SW_TABLE_SIZE 16 #define MAX_WANTYPE_HW_TABLE_SIZE 0 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_BIND_SW_TABLE_SIZE 32 #define MAX_BIND_HW_TABLE_SIZE 32 #define MAX_WANTYPE_SW_TABLE_SIZE 16 #define MAX_WANTYPE_HW_TABLE_SIZE 16 #elif defined(CONFIG_RTL9600_SERIES) || defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_BIND_SW_TABLE_SIZE 32 #define MAX_BIND_HW_TABLE_SIZE 32 #define MAX_WANTYPE_SW_TABLE_SIZE 16 #define MAX_WANTYPE_HW_TABLE_SIZE 8 #endif #if defined(CONFIG_RTL9607C_SERIES) #define MAX_IPMCGRP_HW_TABLE_SIZE 64 #define MAX_IPMCGRP_NON_HW_TABLE_SIZE 0 //not support #define MAX_IPMCFILTER_HW_TABLE_SIZE 0 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_IPMCGRP_HW_TABLE_SIZE 0 //not support #define MAX_IPMCGRP_NON_HW_TABLE_SIZE 64 #define MAX_IPMCFILTER_HW_TABLE_SIZE 16 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_IPMCGRP_HW_TABLE_SIZE 64 #define MAX_IPMCGRP_NON_HW_TABLE_SIZE 0 #define MAX_IPMCFILTER_HW_TABLE_SIZE 0 //not support #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_IPMCGRP_HW_TABLE_SIZE 0 //not support #define MAX_IPMCGRP_NON_HW_TABLE_SIZE 64 #define MAX_IPMCFILTER_HW_TABLE_SIZE 0 //not support #endif #define MAX_IPMCGRP_SW_TABLE_SIZE (MAX_IPMCGRP_HW_TABLE_SIZE+MAX_IPMCGRP_NON_HW_TABLE_SIZE) /* debug flags */ // for bit field width checking of shortcut table //#define SHORTCUT_BITFILED_DEBUG // for napt table entry width //#define NAPT_TABLE_SIZE_DEBUG // rtk_rg_table_naptIn_t #define MAX_NAPT_SW_ENTRY_WAYS_SHIFT 2 #define MAX_NAPT_IN_SW_ENTRY_WIDTH (MAX_NAPT_IN_SW_TABLE_SHIFT-MAX_NAPT_SW_ENTRY_WAYS_SHIFT) #define MAX_NAPT_IN_IDLESEC_WIDTH 12 #define MAX_NAPT_IN_REFCOUNT_WIDTH 1 #define MAX_NAPT_IN_CONETYPE_WIDTH 2 #define MAX_NAPT_IN_NAPTOUTIDX_WIDTH MAX_NAPT_OUT_SW_TABLE_SHIFT #define MAX_NAPT_IN_CANBEREPLACE_WIDTH 1 #define MAX_NAPT_IN_PRIVALID_WIDTH 1 #define MAX_NAPT_IN_PRIVALUE_WIDTH 3 #define MAX_NAPT_IN_CANTADDTOHW_WIDTH 1 // rtk_rg_table_naptOut_t #define MAX_NAPT_OUT_SW_ENTRY_WIDTH (MAX_NAPT_OUT_SW_TABLE_SHIFT-MAX_NAPT_SW_ENTRY_WAYS_SHIFT) #define MAX_NAPT_OUT_STATE_WIDTH 4 #define MAX_NAPT_OUT_PORT_WIDTH 16 #define MAX_NAPT_OUT_IDLESEC_WIDTH 12 #define MAX_NAPT_OUT_CANTADDTOHW_WIDTH 1 #define MAX_NAPT_OUT_PRIVALID_WIDTH 1 #define MAX_NAPT_OUT_PRIVALUE_WIDTH 3 #define MAX_NAPT_OUT_CANBEREPLACE_WIDTH 1 #if defined(CONFIG_RG_FLOW_BASED_PLATFORM) #define MAX_FLOW_SW_ENTRY_WIDTH 15 #define MAX_FLOW_NAPT_IDX_WIDTH (MAX_NAPT_OUT_SW_TABLE_SHIFT+1) #define MAX_FLOW_ARP_IDX_WIDTH (MAX_ARP_SW_TABLE_SIZE_SHIFT+1) #define MAX_FLOW_IDLESEC_WIDTH 12 #endif #if defined(CONFIG_RTL9607C_SERIES) #define MAX_IPV6_ROUTING_HW_TABLE_SIZE 0 #elif defined(CONFIG_RTL9602C_SERIES) #define MAX_IPV6_ROUTING_HW_TABLE_SIZE 8 #elif defined(CONFIG_RTL9600_SERIES) #define MAX_IPV6_ROUTING_HW_TABLE_SIZE 4 #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_IPV6_ROUTING_HW_TABLE_SIZE 8 #endif #if defined(CONFIG_RTL9607C_SERIES) #ifdef CONFIG_RG_IPV6_NAPT_SUPPORT #define MAX_IPV6_ROUTING_SW_TABLE_SIZE 16 #else #define MAX_IPV6_ROUTING_SW_TABLE_SIZE 8 #endif #else #ifdef CONFIG_RG_IPV6_NAPT_SUPPORT #define MAX_IPV6_ROUTING_SW_TABLE_SIZE (MAX_IPV6_ROUTING_HW_TABLE_SIZE<<1) #else #define MAX_IPV6_ROUTING_SW_TABLE_SIZE (MAX_IPV6_ROUTING_HW_TABLE_SIZE) #endif #endif #define MAX_IPV6_NEIGHBOR_SW_TABLE_SIZE 128 #if defined(CONFIG_RTL9607C_SERIES) #define MAX_IPV6_NEIGHBOR_HW_TABLE_SIZE 0 #else #define MAX_IPV6_NEIGHBOR_HW_TABLE_SIZE 128 #endif #define MAX_WLAN_MBSSID_SW_TABLE_SIZE 64 #ifdef CONFIG_RTL_CLIENT_MODE_SUPPORT #define MAX_WLAN_DEVICE_NUM 28 //root(1)+vap(4)+wds(8)+vxd(1), support dualband at one cpu #define WLAN_DEVICE_NUM 14 #else #define MAX_WLAN_DEVICE_NUM 26 //root(1)+vap(4)+wds(8), support dualband at one cpu #define WLAN_DEVICE_NUM 13 #endif /* Software tables */ #define MAX_VIRTUAL_SERVER_SW_TABLE_SIZE 32 #define MAX_UPNP_SW_TABLE_SIZE 32 #define MAX_DMZ_TABLE_SIZE MAX_NETIF_SW_TABLE_SIZE #define MAX_GATEWAYSERVICEPORT_TABLE_SIZE 32 #define MAX_IPV4_FRAGMENT_QUEUE_SIZE 128 //TCP+UDP+ICMP #define MAX_NAPT_SHORTCUT_SIZE_SHFIT (MAX_NAPT_OUT_SW_TABLE_SHIFT+1) #define MAX_NAPT_SHORTCUT_SIZE (1<<MAX_NAPT_SHORTCUT_SIZE_SHFIT) //MAX_NAPT_OUT_SW_TABLE_SIZE*2 #define MAX_NAPT_SHORTCUT_WAYS_SHIFT 2 //must power of 2 #define MAX_NAPT_SHORTCUT_WAYS (1<<MAX_NAPT_SHORTCUT_WAYS_SHIFT) // 2==>4 #define FWD_SHORTCUT_BIT_NUM (MAX_NAPT_SHORTCUT_SIZE_SHFIT-MAX_NAPT_SHORTCUT_WAYS_SHIFT) //bit num of MAX_NAPT_SHORTCUT_SIZE #define MAX_NAPT_V6_SHORTCUT_SIZE_SHFIT 12 //4096 #define MAX_NAPT_V6_SHORTCUT_SIZE (1<<MAX_NAPT_V6_SHORTCUT_SIZE_SHFIT) //4096 #define MAX_NAPT_V6_SHORTCUT_WAYS_SHIFT 3 //must power of 2 #define MAX_NAPT_V6_SHORTCUT_WAYS (1<<MAX_NAPT_V6_SHORTCUT_WAYS_SHIFT) // 3==>8 #define FWD_V6_SHORTCUT_BIT_NUM (MAX_NAPT_V6_SHORTCUT_SIZE_SHFIT-MAX_NAPT_V6_SHORTCUT_WAYS_SHIFT) //bit num of MAX_NAPT_V6_SHORTCUT_SIZE #define MAX_ICMPCTRLFLOW_SIZE 32 #define MAX_FRAG_IN_FREE_TABLE_SIZE 128 #define MAX_FRAG_OUT_FREE_TABLE_SIZE 128 #define MAX_ARP_SW_TABLE_HEAD 256 #if defined(CONFIG_RTL9602C_SERIES) #define MAX_ARP_HW_TABLE_HEAD 256 #endif #define MAX_LUT_SW_TABLE_HEAD 512 #define ARP_SW_TABLE_THRESHOLD 180 #if defined(CONFIG_RTL9600_SERIES) || defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_ARP_FOR_LAN_INTF 256 //preserve 256 entries in hw table for LAN intfs #define MAX_ARP_FOR_WAN_INTF 256 //preserve 256 entries in hw table for WAN intfs #elif defined(CONFIG_RTL9602C_SERIES) || defined(CONFIG_RTL9607C_SERIES) #define MAX_ARP_FOR_LAN_INTF 128 //preserve 128 entries in hw table for LAN intfs (shared with LAN & WAN) #define MAX_ARP_FOR_WAN_INTF 128 //preserve 128 entries in hw table for WAN intfs (shared with LAN & WAN) #endif #define MAX_FRAGMENT_QUEUE_THRESHOLD 50 //if there are so many packets need to queue, the first packet may not come in anymore, so kick they all #define DEF_SOFTWARE_LEARNING_LIMIT -1 //default software lut learning limit #ifdef CONFIG_RG_IPV6_STATEFUL_ROUTING_SUPPORT #define v6StatefulHOUSE_KEEP_NUM 512 //how many entries should be check at once, MUST be the common divisor of list number #define v6StatefulHOUSE_THRESHOLD 1024 //when the active connection is over this threshold, the timeout check function will be STATIC period(at most v6StatefulHOUSE_KEEP_NUM each time) #define MAX_IPV6_STATEFUL_TABLE_SIZE 2048 //#define MAX_IPV6_STATEFUL_TABLE_SIZE 40 //test mode for LRU #define MAX_IPV6_STATEFUL_HASH_HEAD_SIZE 256 #define MAX_IPV6_FRAGMENT_QUEUE_SIZE 128 #endif #define MAX_CONGESTION_CTRL_RING_SIZE 1200 #define MAX_CONGESTION_CTRL_PORTS RTK_RG_PORT_PON+1 #define MAX_URL_FILTER_ENTRY_SIZE 100 #define MAX_URL_FILTER_BUF_LENGTH 1024 #define MAX_URL_FILTER_STR_LENGTH 128 #define MAX_URL_FILTER_PATH_LENGTH 256 #define MAX_MAC_FILTER_ENTRY_SIZE 30 #define MAX_IPMC_IP_LIST 8 #define MAX_FORCE_PORTAL_URL_NUM 8 #define MAX_REDIRECT_PUSH_WEB_SIZE 768 #define MAX_REDIRECT_URL_NUM 8 #define MAX_REDIRECT_WHITE_LIST_NUM 8 #if defined(CONFIG_APOLLO_GPON_FPGATEST) #define MAX_VMAC_SKB_QUEUE_SIZE 32 #endif #define MAX_LANNET_DEV_NAME_LENGTH 32 #define MAX_LANNET_BRAND_NAME_LENGTH 16 #define MAX_LANNET_MODEL_NAME_LENGTH 16 #define MAX_LANNET_OS_NAME_LENGTH 16 #define MAX_LANNET_SUB_BRAND_SIZE 10 #define MAX_LANNET_SUB_MODEL_SIZE 10 #define MAX_LANNET_SUB_OS_SIZE 10 #if defined(CONFIG_RTL9600_SERIES) || defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) #define MAX_WIFI_LIMIT_RATE 0xffff8 //0x1ffff << 3 #elif defined(CONFIG_RTL9602C_SERIES) || defined(CONFIG_RTL9607C_SERIES) #define MAX_WIFI_LIMIT_RATE 0x3ffff8 //0x7ffff << 3 #endif #define TC2DATA 0xb8003220 #define TC2CNT 0xb8003224 #define TC2CTL 0xb8003228 #define TC2INT 0xb800322c #define BSP_TC2_IRQ 45 /* IGMP/MLD snooping */ #define RTK_RG_MULTICAST_MODE_MACFID 0 /* USERSPACE HELPER */ #define CB_MAX_FILE_SIZE 1024 #define CB_MAX_FILE_LINE 10 #define CB_CMD_BUFF_SIZE 256 /* common */ #ifndef NULL #define NULL 0 #endif #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif #ifndef SUCCESS #define SUCCESS 0 #endif #ifndef FAIL #define FAIL -1 #endif #define IDX_UNHIT_DROP -1 #define IDX_UNHIT_PASS 0 extern char mt_watch_tmp[512]; void assert_ok_sub_func(int assert_ret, char *assert_str,const char *func,int line); void assert_sub_func(int assert_ret, char *assert_str,const char *func,int line); #if 0 #ifndef assert_ok #define assert_ok(x)\ { int assert_ret;\ assert_ret=(x);\ if(assert_ret!=0) { \ if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_WARN) {\ rtlglue_printf(assert_ok_str,#x,assert_ret,__FUNCTION__,__LINE__);\ }\ }\ } #endif #ifndef assert #define assert(x)\ if(!(x)) {\ if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_WARN) {\ rtlglue_printf(assert_str, #x,__FUNCTION__,__LINE__);\ }\ } #endif #else #ifndef assert_ok #define assert_ok(x) do { assert_ok_sub_func(x,#x,__FUNCTION__,__LINE__); } while(0) #endif #ifndef assert #define assert(x) do { assert_sub_func(x,#x,__FUNCTION__,__LINE__); } while(0) #endif #endif /* debug */ #if defined(CONFIG_RG_DEBUG) #ifndef DUMP_PACKET #define DUMP_PACKET(pkt,size,memo) dump_packet(pkt,size,memo) #endif #ifndef DEBUG #define DEBUG( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_DEBUG) common_dump(RTK_RG_DEBUG_LEVEL_DEBUG,__FUNCTION__,__LINE__,comment,##arg); }while(0) #endif #ifndef FIXME #define FIXME( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_FIXME) common_dump(RTK_RG_DEBUG_LEVEL_FIXME,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef CBACK #define CBACK( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_CALLBACK) common_dump(RTK_RG_DEBUG_LEVEL_CALLBACK,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef TRACE #define TRACE( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_TRACE) common_dump(RTK_RG_DEBUG_LEVEL_TRACE,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef ACL #define ACL( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_ACL) common_dump(RTK_RG_DEBUG_LEVEL_ACL,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef ACL_RSV #define ACL_RSV( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_ACL_RRESERVED) common_dump(RTK_RG_DEBUG_LEVEL_ACL_RRESERVED,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef WARNING #define WARNING( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_WARN) common_dump(RTK_RG_DEBUG_LEVEL_WARN,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef WMUX #define WMUX( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_WMUX) common_dump(RTK_RG_DEBUG_LEVEL_WMUX,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef MACLN #define MACLN( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_MACLEARN) common_dump(RTK_RG_DEBUG_LEVEL_MACLEARN,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef TABLE #define TABLE( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_TABLE) common_dump(RTK_RG_DEBUG_LEVEL_TABLE,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef ALG #define ALG( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_ALG) common_dump(RTK_RG_DEBUG_LEVEL_ALG,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef IGMP #define IGMP( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_IGMP) common_dump(RTK_RG_DEBUG_LEVEL_IGMP,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #ifndef RGAPI #define RGAPI( comment ,arg...) do { if(rg_kernel.debug_level&RTK_RG_DEBUG_LEVEL_RG_API) common_dump(RTK_RG_DEBUG_LEVEL_RG_API,__FUNCTION__,__LINE__,comment,##arg);}while(0) #endif #else //!defined(CONFIG_RG_DEBUG) #ifndef assert #define assert(x) #endif #ifndef COMMON_DUMP #define COMMON_DUMP( bitmask, string, color,bgcolor,comment ,arg...) #endif #ifndef DEBUG #define DEBUG( comment ,arg...) #endif #ifndef FIXME #define FIXME( comment ,arg...) #endif #ifndef CBACK #define CBACK( comment ,arg...) #endif #ifndef TRACE #define TRACE( comment ,arg...) #endif #ifndef ACL #define ACL( comment ,arg...) #endif #ifndef ACL_RSV #define ACL_RSV( comment ,arg...) #endif #ifndef WARNING #define WARNING( comment ,arg...) #endif #ifndef WMUX #define WMUX( comment ,arg...) #endif #ifndef MACLN #define MACLN( comment ,arg...) #endif #ifndef TABLE #define TABLE( comment ,arg...) #endif #ifndef ALG #define ALG( comment ,arg...) #endif #ifndef IGMP #define IGMP( comment ,arg...) #endif #ifndef RGAPI #define RGAPI( comment ,arg...) #endif #ifndef DUMP_PACKET #define DUMP_PACKET(pkt,size,memo) #endif #endif #if 0 #define RETURN_ERR(err_name) \ do{\ if(err_name!=RT_ERR_RG_OK) \ {\ extern char StringErrName[];\ if(memcmp(#err_name,"RTK_ERR_RG_",11)==0)\ strcpy(StringErrName,#err_name);\ else\ {\ _rtk_rg_error_id_mapping(err_name,StringErrName);\ }\ WARNING("Return Error (0x%x:%s)",err_name,StringErrName);\ }\ return err_name;\ }while(0) #else #define RETURN_ERR(err_name) do { return return_err_mapping(err_name,#err_name,__LINE__); } while(0) #endif #if defined(CONFIG_APOLLO) #undef PROFILE #define PROFILE int profile_idx; do { profile_idx=profile(__FUNCTION__); }while(0) #define PROFILE_END do { profile_end(profile_idx); }while(0) #define PROFILE_COUNT_START \ do{\ if(rg_kernel.cp3_execute_count>0){\ if(!rg_kernel.cp3_execute_count_state)\ rg_kernel.cp3_execute_count_state=profile(__FUNCTION__);\ rg_kernel.cp3_execute_count--;\ }\ }while(0) #define PROFILE_COUNT_END \ do{\ if(rg_kernel.cp3_execute_count_state && rg_kernel.cp3_execute_count==0){\ profile_end(rg_kernel.cp3_execute_count_state);\ rg_kernel.cp3_execute_count_state=0;\ }\ }while(0) #endif #ifdef CONFIG_APOLLO // L2 Switch: RTK APIs --> RG APIs //from stp.h #include<rtk/stp.h> #define rtk_rg_stp_init(arg,args...) rtk_stp_init(arg,##args) #define rtk_rg_stp_mstpState_get(arg,args...) rtk_stp_mstpState_get(arg,##args) #define rtk_rg_stp_mstpState_set(arg,args...) rtk_stp_mstpState_set(arg,##args) //from module/gpon/gpon.h #include<module/gpon/gpon.h> #define rtk_rg_gpon_activate(arg,args...) rtk_gpon_activate(arg,##args) #define rtk_rg_gpon_aesKeySwitch_get(arg,args...) rtk_gpon_aesKeySwitch_get(arg,##args) #define rtk_rg_gpon_aesKeySwitch_set(arg,args...) rtk_gpon_aesKeySwitch_set(arg,##args) #define rtk_rg_gpon_aesKeyWord_set(arg,args...) rtk_gpon_aesKeyWord_set(arg,##args) #define rtk_rg_gpon_alarmStatus_get(arg,args...) rtk_gpon_alarmStatus_get(arg,##args) #define rtk_rg_gpon_autoDisTx_set(arg,args...) rtk_gpon_autoDisTx_set(arg,##args) #define rtk_rg_gpon_berInterval_get(arg,args...) rtk_gpon_berInterval_get(arg,##args) #define rtk_rg_gpon_burstOverhead_set(arg,args...) rtk_gpon_burstOverhead_set(arg,##args) #define rtk_rg_gpon_cdrLosStatus_get(arg,args...) rtk_gpon_cdrLosStatus_get(arg,##args) #define rtk_rg_gpon_dataPath_reset(arg,args...) rtk_gpon_dataPath_reset(arg,##args) #define rtk_rg_gpon_dbruPeriod_get(arg,args...) rtk_gpon_dbruPeriod_get(arg,##args) #define rtk_rg_gpon_dbruPeriod_set(arg,args...) rtk_gpon_dbruPeriod_set(arg,##args) #define rtk_rg_gpon_dbruState_get(arg,args...) rtk_gpon_dbruState_get(arg,##args) #define rtk_rg_gpon_dbruState_set(arg,args...) rtk_gpon_dbruState_set(arg,##args) #define rtk_rg_gpon_deActivate(arg,args...) rtk_gpon_deActivate(arg,##args) #define rtk_rg_gpon_drainOutDefaultQueue_set(arg,args...) rtk_gpon_drainOutDefaultQueue_set(arg,##args) #define rtk_rg_gpon_dsBwmapCrcCheckState_get(arg,args...) rtk_gpon_dsBwmapCrcCheckState_get(arg,##args) #define rtk_rg_gpon_dsBwmapCrcCheckState_set(arg,args...) rtk_gpon_dsBwmapCrcCheckState_set(arg,##args) #define rtk_rg_gpon_dsBwmapFilterOnuIdState_get(arg,args...) rtk_gpon_dsBwmapFilterOnuIdState_get(arg,##args) #define rtk_rg_gpon_dsBwmapFilterOnuIdState_set(arg,args...) rtk_gpon_dsBwmapFilterOnuIdState_set(arg,##args) #define rtk_rg_gpon_dsEthPti_get(arg,args...) rtk_gpon_dsEthPti_get(arg,##args) #define rtk_rg_gpon_dsEthPti_set(arg,args...) rtk_gpon_dsEthPti_set(arg,##args) #define rtk_rg_gpon_dsFecBypass_get(arg,args...) rtk_gpon_dsFecBypass_get(arg,##args) #define rtk_rg_gpon_dsFecBypass_set(arg,args...) rtk_gpon_dsFecBypass_set(arg,##args) #define rtk_rg_gpon_dsFecThrd_get(arg,args...) rtk_gpon_dsFecThrd_get(arg,##args) #define rtk_rg_gpon_dsFecThrd_set(arg,args...) rtk_gpon_dsFecThrd_set(arg,##args) #define rtk_rg_gpon_usFecSts_get(arg,args...) rtk_gpon_usFecSts_get(arg,##args) #define rtk_rg_gpon_dsFecSts_get(arg,args...) rtk_gpon_dsFecSts_get(arg,##args) #define rtk_rg_gpon_dsFlow_get(arg,args...) rtk_gpon_dsFlow_get(arg,##args) #define rtk_rg_gpon_dsFlow_set(arg,args...) rtk_gpon_dsFlow_set(arg,##args) #define rtk_rg_gpon_dsGemPortBcPassState_get(arg,args...) rtk_gpon_dsGemPortBcPassState_get(arg,##args) #define rtk_rg_gpon_dsGemPortBcPassState_set(arg,args...) rtk_gpon_dsGemPortBcPassState_set(arg,##args) #define rtk_rg_gpon_dsGemPortByteCnt_get(arg,args...) rtk_gpon_dsGemPortByteCnt_get(arg,##args) #define rtk_rg_gpon_dsGemPortEthFwdCnt_get(arg,args...) rtk_gpon_dsGemPortEthFwdCnt_get(arg,##args) #define rtk_rg_gpon_dsGemPortEthRxCnt_get(arg,args...) rtk_gpon_dsGemPortEthRxCnt_get(arg,##args) #define rtk_rg_gpon_dsGemPortFcsCheckState_get(arg,args...) rtk_gpon_dsGemPortFcsCheckState_get(arg,##args) #define rtk_rg_gpon_dsGemPortFcsCheckState_set(arg,args...) rtk_gpon_dsGemPortFcsCheckState_set(arg,##args) #define rtk_rg_gpon_dsGemPortFrameTimeOut_get(arg,args...) rtk_gpon_dsGemPortFrameTimeOut_get(arg,##args) #define rtk_rg_gpon_dsGemPortFrameTimeOut_set(arg,args...) rtk_gpon_dsGemPortFrameTimeOut_set(arg,##args) #define rtk_rg_gpon_dsGemPortMacEntry_del(arg,args...) rtk_gpon_dsGemPortMacEntry_del(arg,##args) #define rtk_rg_gpon_dsGemPortMacEntry_get(arg,args...) rtk_gpon_dsGemPortMacEntry_get(arg,##args) #define rtk_rg_gpon_dsGemPortMacEntry_set(arg,args...) rtk_gpon_dsGemPortMacEntry_set(arg,##args) #define rtk_rg_gpon_dsGemPortMacFilterMode_get(arg,args...) rtk_gpon_dsGemPortMacFilterMode_get(arg,##args) #define rtk_rg_gpon_dsGemPortMacFilterMode_set(arg,args...) rtk_gpon_dsGemPortMacFilterMode_set(arg,##args) #define rtk_rg_gpon_dsGemPortMacForceMode_get(arg,args...) rtk_gpon_dsGemPortMacForceMode_get(arg,##args) #define rtk_rg_gpon_dsGemPortMacForceMode_set(arg,args...) rtk_gpon_dsGemPortMacForceMode_set(arg,##args) #define rtk_rg_gpon_dsGemPortMiscCnt_get(arg,args...) rtk_gpon_dsGemPortMiscCnt_get(arg,##args) #define rtk_rg_gpon_dsGemPortNonMcPassState_get(arg,args...) rtk_gpon_dsGemPortNonMcPassState_get(arg,##args) #define rtk_rg_gpon_dsGemPortNonMcPassState_set(arg,args...) rtk_gpon_dsGemPortNonMcPassState_set(arg,##args) #define rtk_rg_gpon_dsGemPortPktCnt_get(arg,args...) rtk_gpon_dsGemPortPktCnt_get(arg,##args) #define rtk_rg_gpon_dsGemPort_del(arg,args...) rtk_gpon_dsGemPort_del(arg,##args) #define rtk_rg_gpon_dsGemPort_get(arg,args...) rtk_gpon_dsGemPort_get(arg,##args) #define rtk_rg_gpon_dsGemPort_set(arg,args...) rtk_gpon_dsGemPort_set(arg,##args) #define rtk_rg_gpon_dsGtcMiscCnt_get(arg,args...) rtk_gpon_dsGtcMiscCnt_get(arg,##args) #define rtk_rg_gpon_dsOmciCnt_get(arg,args...) rtk_gpon_dsOmciCnt_get(arg,##args) #define rtk_rg_gpon_dsOmciPti_get(arg,args...) rtk_gpon_dsOmciPti_get(arg,##args) #define rtk_rg_gpon_dsOmciPti_set(arg,args...) rtk_gpon_dsOmciPti_set(arg,##args) #define rtk_rg_gpon_dsPlendStrictMode_get(arg,args...) rtk_gpon_dsPlendStrictMode_get(arg,##args) #define rtk_rg_gpon_dsPlendStrictMode_set(arg,args...) rtk_gpon_dsPlendStrictMode_set(arg,##args) #define rtk_rg_gpon_dsPloamBcAcceptState_get(arg,args...) rtk_gpon_dsPloamBcAcceptState_get(arg,##args) #define rtk_rg_gpon_dsPloamBcAcceptState_set(arg,args...) rtk_gpon_dsPloamBcAcceptState_set(arg,##args) #define rtk_rg_gpon_dsPloamDropCrcState_get(arg,args...) rtk_gpon_dsPloamDropCrcState_get(arg,##args) #define rtk_rg_gpon_dsPloamDropCrcState_set(arg,args...) rtk_gpon_dsPloamDropCrcState_set(arg,##args) #define rtk_rg_gpon_dsPloamNomsg_get(arg,args...) rtk_gpon_dsPloamNomsg_get(arg,##args) #define rtk_rg_gpon_dsPloamNomsg_set(arg,args...) rtk_gpon_dsPloamNomsg_set(arg,##args) #define rtk_rg_gpon_dsPloamOnuIdFilterState_get(arg,args...) rtk_gpon_dsPloamOnuIdFilterState_get(arg,##args) #define rtk_rg_gpon_dsPloamOnuIdFilterState_set(arg,args...) rtk_gpon_dsPloamOnuIdFilterState_set(arg,##args) #define rtk_rg_gpon_dsPloam_get(arg,args...) rtk_gpon_dsPloam_get(arg,##args) #define rtk_rg_gpon_dsScrambleState_get(arg,args...) rtk_gpon_dsScrambleState_get(arg,##args) #define rtk_rg_gpon_dsScrambleState_set(arg,args...) rtk_gpon_dsScrambleState_set(arg,##args) #define rtk_rg_gpon_eqd_set(arg,args...) rtk_gpon_eqd_set(arg,##args) #define rtk_rg_gpon_extraSnTxTimes_get(arg,args...) rtk_gpon_extraSnTxTimes_get(arg,##args) #define rtk_rg_gpon_extraSnTxTimes_set(arg,args...) rtk_gpon_extraSnTxTimes_set(arg,##args) #define rtk_rg_gpon_flowCounter_get(arg,args...) rtk_gpon_flowCounter_get(arg,##args) #define rtk_rg_gpon_forceLaser_get(arg,args...) rtk_gpon_forceLaser_get(arg,##args) #define rtk_rg_gpon_forceLaser_set(arg,args...) rtk_gpon_forceLaser_set(arg,##args) #define rtk_rg_gpon_gemUsDataByteCnt_get(arg,args...) rtk_gpon_gemUsDataByteCnt_get(arg,##args) #define rtk_rg_gpon_gemUsEthCnt_get(arg,args...) rtk_gpon_gemUsEthCnt_get(arg,##args) #define rtk_rg_gpon_gemUsForceIdleState_get(arg,args...) rtk_gpon_gemUsForceIdleState_get(arg,##args) #define rtk_rg_gpon_gemUsForceIdleState_set(arg,args...) rtk_gpon_gemUsForceIdleState_set(arg,##args) #define rtk_rg_gpon_gemUsGemCnt_get(arg,args...) rtk_gpon_gemUsGemCnt_get(arg,##args) #define rtk_rg_gpon_gemUsIdleByteCnt_get(arg,args...) rtk_gpon_gemUsIdleByteCnt_get(arg,##args) #define rtk_rg_gpon_gemUsIntrDlt_check(arg,args...) rtk_gpon_gemUsIntrDlt_check(arg,##args) #define rtk_rg_gpon_gemUsIntrMask_get(arg,args...) rtk_gpon_gemUsIntrMask_get(arg,##args) #define rtk_rg_gpon_gemUsIntrMask_set(arg,args...) rtk_gpon_gemUsIntrMask_set(arg,##args) #define rtk_rg_gpon_gemUsIntr_get(arg,args...) rtk_gpon_gemUsIntr_get(arg,##args) #define rtk_rg_gpon_gemUsPortCfg_get(arg,args...) rtk_gpon_gemUsPortCfg_get(arg,##args) #define rtk_rg_gpon_gemUsPortCfg_set(arg,args...) rtk_gpon_gemUsPortCfg_set(arg,##args) #define rtk_rg_gpon_gemUsPtiVector_get(arg,args...) rtk_gpon_gemUsPtiVector_get(arg,##args) #define rtk_rg_gpon_gemUsPtiVector_set(arg,args...) rtk_gpon_gemUsPtiVector_set(arg,##args) #define rtk_rg_gpon_globalCounter_get(arg,args...) rtk_gpon_globalCounter_get(arg,##args) #define rtk_rg_gpon_gtcDsIntrDlt_check(arg,args...) rtk_gpon_gtcDsIntrDlt_check(arg,##args) #define rtk_rg_gpon_gtcDsIntrDlt_get(arg,args...) rtk_gpon_gtcDsIntrDlt_get(arg,##args) #define rtk_rg_gpon_gtcDsIntrMask_get(arg,args...) rtk_gpon_gtcDsIntrMask_get(arg,##args) #define rtk_rg_gpon_gtcDsIntrMask_set(arg,args...) rtk_gpon_gtcDsIntrMask_set(arg,##args) #define rtk_rg_gpon_gtcDsIntr_get(arg,args...) rtk_gpon_gtcDsIntr_get(arg,##args) #define rtk_rg_gpon_gtcUsIntrDlt_check(arg,args...) rtk_gpon_gtcUsIntrDlt_check(arg,##args) #define rtk_rg_gpon_gtcUsIntrDlt_get(arg,args...) rtk_gpon_gtcUsIntrDlt_get(arg,##args) #define rtk_rg_gpon_gtcUsIntrMask_get(arg,args...) rtk_gpon_gtcUsIntrMask_get(arg,##args) #define rtk_rg_gpon_gtcUsIntrMask_set(arg,args...) rtk_gpon_gtcUsIntrMask_set(arg,##args) #define rtk_rg_gpon_gtcUsIntr_get(arg,args...) rtk_gpon_gtcUsIntr_get(arg,##args) #define rtk_rg_gpon_indNrmPloamState_get(arg,args...) rtk_gpon_indNrmPloamState_get(arg,##args) #define rtk_rg_gpon_indNrmPloamState_set(arg,args...) rtk_gpon_indNrmPloamState_set(arg,##args) #define rtk_rg_gpon_init(arg,args...) rtk_gpon_init(arg,##args) #define rtk_rg_gpon_ipv4McAddrPtn_get(arg,args...) rtk_gpon_ipv4McAddrPtn_get(arg,##args) #define rtk_rg_gpon_ipv4McAddrPtn_set(arg,args...) rtk_gpon_ipv4McAddrPtn_set(arg,##args) #define rtk_rg_gpon_ipv6McAddrPtn_get(arg,args...) rtk_gpon_ipv6McAddrPtn_get(arg,##args) #define rtk_rg_gpon_ipv6McAddrPtn_set(arg,args...) rtk_gpon_ipv6McAddrPtn_set(arg,##args) #define rtk_rg_gpon_irq_get(arg,args...) rtk_gpon_irq_get(arg,##args) #define rtk_rg_gpon_laserTime_get(arg,args...) rtk_gpon_laserTime_get(arg,##args) #define rtk_rg_gpon_laserTime_set(arg,args...) rtk_gpon_laserTime_set(arg,##args) #define rtk_rg_gpon_losCfg_get(arg,args...) rtk_gpon_losCfg_get(arg,##args) #define rtk_rg_gpon_losCfg_set(arg,args...) rtk_gpon_losCfg_set(arg,##args) #define rtk_rg_gpon_macVersion_get(arg,args...) rtk_gpon_macVersion_get(arg,##args) #define rtk_rg_gpon_onuId_get(arg,args...) rtk_gpon_onuId_get(arg,##args) #define rtk_rg_gpon_onuId_set(arg,args...) rtk_gpon_onuId_set(arg,##args) #define rtk_rg_gpon_onuState_get(arg,args...) rtk_gpon_onuState_get(arg,##args) #define rtk_rg_gpon_onuState_set(arg,args...) rtk_gpon_onuState_set(arg,##args) #define rtk_rg_gpon_optLosStatus_get(arg,args...) rtk_gpon_optLosStatus_get(arg,##args) #define rtk_rg_gpon_password_get(arg,args...) rtk_gpon_password_get(arg,##args) #define rtk_rg_gpon_password_set(arg,args...) rtk_gpon_password_set(arg,##args) #define rtk_rg_gpon_ploamState_get(arg,args...) rtk_gpon_ploamState_get(arg,##args) #define rtk_rg_gpon_ploamState_set(arg,args...) rtk_gpon_ploamState_set(arg,##args) #define rtk_rg_gpon_ponStatus_get(arg,args...) rtk_gpon_ponStatus_get(arg,##args) #define rtk_rg_gpon_portMacForceMode_set(arg,args...) rtk_gpon_portMacForceMode_set(arg,##args) #define rtk_rg_gpon_port_get(arg,args...) rtk_gpon_port_get(arg,##args) #define rtk_rg_gpon_rdi_get(arg,args...) rtk_gpon_rdi_get(arg,##args) #define rtk_rg_gpon_rdi_set(arg,args...) rtk_gpon_rdi_set(arg,##args) #define rtk_rg_gpon_resetDoneState_get(arg,args...) rtk_gpon_resetDoneState_get(arg,##args) #define rtk_rg_gpon_resetState_set(arg,args...) rtk_gpon_resetState_set(arg,##args) #define rtk_rg_gpon_rogueOnt_set(arg,args...) rtk_gpon_rogueOnt_set(arg,##args) #define rtk_rg_gpon_scheInfo_get(arg,args...) rtk_gpon_scheInfo_get(arg,##args) #define rtk_rg_gpon_serialNumber_get(arg,args...) rtk_gpon_serialNumber_get(arg,##args) #define rtk_rg_gpon_serialNumber_set(arg,args...) rtk_gpon_serialNumber_set(arg,##args) #define rtk_rg_gpon_tcontCounter_get(arg,args...) rtk_gpon_tcontCounter_get(arg,##args) #define rtk_rg_gpon_tcont_create(arg,args...) rtk_gpon_tcont_create(arg,##args) #define rtk_rg_gpon_tcont_destroy_logical(arg,args...) rtk_gpon_tcont_destroy_logical(arg,##args) #define rtk_rg_gpon_tcont_destroy(arg,args...) rtk_gpon_tcont_destroy(arg,##args) #define rtk_rg_gpon_tcont_get(arg,args...) rtk_gpon_tcont_get(arg,##args) #define rtk_rg_gpon_tcont_get_physical(arg,args...) rtk_gpon_tcont_get_physical(arg,##args) #define rtk_rg_gpon_test_get(arg,args...) rtk_gpon_test_get(arg,##args) #define rtk_rg_gpon_test_set(arg,args...) rtk_gpon_test_set(arg,##args) #define rtk_rg_gpon_topIntrMask_get(arg,args...) rtk_gpon_topIntrMask_get(arg,##args) #define rtk_rg_gpon_topIntrMask_set(arg,args...) rtk_gpon_topIntrMask_set(arg,##args) #define rtk_rg_gpon_topIntr_disableAll(arg,args...) rtk_gpon_topIntr_disableAll(arg,##args) #define rtk_rg_gpon_topIntr_get(arg,args...) rtk_gpon_topIntr_get(arg,##args) #define rtk_rg_gpon_usAutoPloam_set(arg,args...) rtk_gpon_usAutoPloam_set(arg,##args) #define rtk_rg_gpon_usBurstPolarity_get(arg,args...) rtk_gpon_usBurstPolarity_get(arg,##args) #define rtk_rg_gpon_usBurstPolarity_set(arg,args...) rtk_gpon_usBurstPolarity_set(arg,##args) #define rtk_rg_gpon_usFlow_get(arg,args...) rtk_gpon_usFlow_get(arg,##args) #define rtk_rg_gpon_usFlow_set(arg,args...) rtk_gpon_usFlow_set(arg,##args) #define rtk_rg_gpon_usGtcMiscCnt_get(arg,args...) rtk_gpon_usGtcMiscCnt_get(arg,##args) #define rtk_rg_gpon_usOmciCnt_get(arg,args...) rtk_gpon_usOmciCnt_get(arg,##args) #define rtk_rg_gpon_usPloamBuf_flush(arg,args...) rtk_gpon_usPloamBuf_flush(arg,##args) #define rtk_rg_gpon_usPloamCrcGenState_get(arg,args...) rtk_gpon_usPloamCrcGenState_get(arg,##args) #define rtk_rg_gpon_usPloamCrcGenState_set(arg,args...) rtk_gpon_usPloamCrcGenState_set(arg,##args) #define rtk_rg_gpon_usPloamOnuIdFilterState_set(arg,args...) rtk_gpon_usPloamOnuIdFilterState_set(arg,##args) #define rtk_rg_gpon_usPloamOnuIdFilter_get(arg,args...) rtk_gpon_usPloamOnuIdFilter_get(arg,##args) #define rtk_rg_gpon_usPloam_set(arg,args...) rtk_gpon_usPloam_set(arg,##args) #define rtk_rg_gpon_usScrambleState_get(arg,args...) rtk_gpon_usScrambleState_get(arg,##args) #define rtk_rg_gpon_usScrambleState_set(arg,args...) rtk_gpon_usScrambleState_set(arg,##args) #define rtk_rg_gpon_usSmalSstartProcState_get(arg,args...) rtk_gpon_usSmalSstartProcState_get(arg,##args) #define rtk_rg_gpon_usSmalSstartProcState_set(arg,args...) rtk_gpon_usSmalSstartProcState_set(arg,##args) #define rtk_rg_gpon_usSuppressLaserState_get(arg,args...) rtk_gpon_usSuppressLaserState_get(arg,##args) #define rtk_rg_gpon_usSuppressLaserState_set(arg,args...) rtk_gpon_usSuppressLaserState_set(arg,##args) #define rtk_rg_gpon_usTcont_del(arg,args...) rtk_gpon_usTcont_del(arg,##args) #define rtk_rg_gpon_usTcont_get(arg,args...) rtk_gpon_usTcont_get(arg,##args) #define rtk_rg_gpon_usTcont_set(arg,args...) rtk_gpon_usTcont_set(arg,##args) #define rtk_rg_gpon_evtHdlStateChange_reg(arg,args...) rtk_gponapp_evtHdlStateChange_reg(arg,##args) #define rtk_rg_gpon_evtHdlPloam_reg(arg,args...) rtk_gponapp_evtHdlPloam_reg(arg,##args) #define rtk_rg_gpon_evtHdlPloam_dreg(arg,args...) rtk_gponapp_evtHdlPloam_dreg(arg,##args) #define rtk_rg_gpon_evtHdlOmci_reg(arg,args...) rtk_gponapp_evtHdlOmci_reg(arg,##args) #define rtk_rg_gpon_callbackExtMsgSetHandle_reg(arg,args...) rtk_gponapp_callbackExtMsgSetHandle_reg(arg,##args) #define rtk_rg_gpon_callbackExtMsgGetHandle_reg(arg,args...) rtk_gponapp_callbackExtMsgGetHandle_reg(arg,##args) #define rtk_rg_gpon_parameter_set(arg,args...) rtk_gpon_parameter_set(arg,##args) #define rtk_rg_gpon_parameter_get(arg,args...) rtk_gpon_parameter_get(arg,##args) #define rtk_rg_gpon_omci_tx(arg,args...) rtk_gpon_omci_tx(arg,##args) #define rtk_rg_gpon_initial(arg,args...) rtk_gpon_initial(arg,##args) #define rtk_rg_gpon_deinitial(arg,args...) rtk_gpon_deinitial(arg,##args) #define rtk_rg_gpon_dbruBlockSize_get(arg,args...) rtk_gpon_dbruBlockSize_get(arg,##args) #define rtk_rg_gpon_dbruBlockSize_set(arg,args...) rtk_gpon_dbruBlockSize_set(arg,##args) //from epon.h #include<rtk/epon.h> #define rtk_rg_epon_churningKey_get(arg,args...) rtk_epon_churningKey_get(arg,##args) #define rtk_rg_epon_churningKey_set(arg,args...) rtk_epon_churningKey_set(arg,##args) #define rtk_rg_epon_churningStatus_get(arg,args...) rtk_epon_churningStatus_get(arg,##args) #define rtk_rg_epon_dsFecState_get(arg,args...) rtk_epon_dsFecState_get(arg,##args) #define rtk_rg_epon_dsFecState_set(arg,args...) rtk_epon_dsFecState_set(arg,##args) #define rtk_rg_epon_fecState_get(arg,args...) rtk_epon_fecState_get(arg,##args) #define rtk_rg_epon_fecState_set(arg,args...) rtk_epon_fecState_set(arg,##args) #define rtk_rg_epon_forceLaserState_get(arg,args...) rtk_epon_forceLaserState_get(arg,##args) #define rtk_rg_epon_forceLaserState_set(arg,args...) rtk_epon_forceLaserState_set(arg,##args) #define rtk_rg_epon_init(arg,args...) rtk_epon_init(arg,##args) #define rtk_rg_epon_intrMask_get(arg,args...) rtk_epon_intrMask_get(arg,##args) #define rtk_rg_epon_intrMask_set(arg,args...) rtk_epon_intrMask_set(arg,##args) #define rtk_rg_epon_intr_disableAll(arg,args...) rtk_epon_intr_disableAll(arg,##args) #define rtk_rg_epon_intr_get(arg,args...) rtk_epon_intr_get(arg,##args) #define rtk_rg_epon_laserTime_get(arg,args...) rtk_epon_laserTime_get(arg,##args) #define rtk_rg_epon_laserTime_set(arg,args...) rtk_epon_laserTime_set(arg,##args) #define rtk_rg_epon_llidEntryNum_get(arg,args...) rtk_epon_llidEntryNum_get(arg,##args) #define rtk_rg_epon_llid_entry_get(arg,args...) rtk_epon_llid_entry_get(arg,##args) #define rtk_rg_epon_llid_entry_set(arg,args...) rtk_epon_llid_entry_set(arg,##args) #define rtk_rg_epon_losState_get(arg,args...) rtk_epon_losState_get(arg,##args) #define rtk_rg_epon_mibCounter_get(arg,args...) rtk_epon_mibCounter_get(arg,##args) #define rtk_rg_epon_mibGlobal_reset(arg,args...) rtk_epon_mibGlobal_reset(arg,##args) #define rtk_rg_epon_mibLlidIdx_reset(arg,args...) rtk_epon_mibLlidIdx_reset(arg,##args) #define rtk_rg_epon_mpcpTimeoutVal_get(arg,args...) rtk_epon_mpcpTimeoutVal_get(arg,##args) #define rtk_rg_epon_mpcpTimeoutVal_set(arg,args...) rtk_epon_mpcpTimeoutVal_set(arg,##args) #define rtk_rg_epon_opticalPolarity_get(arg,args...) rtk_epon_opticalPolarity_get(arg,##args) #define rtk_rg_epon_opticalPolarity_set(arg,args...) rtk_epon_opticalPolarity_set(arg,##args) #define rtk_rg_epon_registerReq_get(arg,args...) rtk_epon_registerReq_get(arg,##args) #define rtk_rg_epon_registerReq_set(arg,args...) rtk_epon_registerReq_set(arg,##args) #define rtk_rg_epon_syncTime_get(arg,args...) rtk_epon_syncTime_get(arg,##args) #define rtk_rg_epon_thresholdReport_get(arg,args...) rtk_epon_thresholdReport_get(arg,##args) #define rtk_rg_epon_thresholdReport_set(arg,args...) rtk_epon_thresholdReport_set(arg,##args) #define rtk_rg_epon_usFecState_get(arg,args...) rtk_epon_usFecState_get(arg,##args) #define rtk_rg_epon_usFecState_set(arg,args...) rtk_epon_usFecState_set(arg,##args) //from i2c.h #include<rtk/i2c.h> #define rtk_rg_i2c_clock_get(arg,args...) rtk_i2c_clock_get(arg,##args) #define rtk_rg_i2c_clock_set(arg,args...) rtk_i2c_clock_set(arg,##args) #define rtk_rg_i2c_eepMirror_get(arg,args...) rtk_i2c_eepMirror_get(arg,##args) #define rtk_rg_i2c_eepMirror_read(arg,args...) rtk_i2c_eepMirror_read(arg,##args) #define rtk_rg_i2c_eepMirror_set(arg,args...) rtk_i2c_eepMirror_set(arg,##args) #define rtk_rg_i2c_eepMirror_write(arg,args...) rtk_i2c_eepMirror_write(arg,##args) #define rtk_rg_i2c_enable_get(arg,args...) rtk_i2c_enable_get(arg,##args) #define rtk_rg_i2c_enable_set(arg,args...) rtk_i2c_enable_set(arg,##args) #define rtk_rg_i2c_init(arg,args...) rtk_i2c_init(arg,##args) #define rtk_rg_i2c_read(arg,args...) rtk_i2c_read(arg,##args) #define rtk_rg_i2c_width_get(arg,args...) rtk_i2c_width_get(arg,##args) #define rtk_rg_i2c_width_set(arg,args...) rtk_i2c_width_set(arg,##args) #define rtk_rg_i2c_write(arg,args...) rtk_i2c_write(arg,##args) //from intr.h #include<rtk/intr.h> #define rtk_rg_intr_gphyStatus_clear(arg,args...) rtk_intr_gphyStatus_clear(arg,##args) #define rtk_rg_intr_gphyStatus_get(arg,args...) rtk_intr_gphyStatus_get(arg,##args) #define rtk_rg_intr_imr_get(arg,args...) rtk_intr_imr_get(arg,##args) #define rtk_rg_intr_imr_restore(arg,args...) rtk_intr_imr_restore(arg,##args) #define rtk_rg_intr_imr_set(arg,args...) rtk_intr_imr_set(arg,##args) #define rtk_rg_intr_ims_clear(arg,args...) rtk_intr_ims_clear(arg,##args) #define rtk_rg_intr_ims_get(arg,args...) rtk_intr_ims_get(arg,##args) #define rtk_rg_intr_init(arg,args...) rtk_intr_init(arg,##args) #define rtk_rg_intr_linkdownStatus_clear(arg,args...) rtk_intr_linkdownStatus_clear(arg,##args) #define rtk_rg_intr_linkdownStatus_get(arg,args...) rtk_intr_linkdownStatus_get(arg,##args) #define rtk_rg_intr_linkupStatus_clear(arg,args...) rtk_intr_linkupStatus_clear(arg,##args) #define rtk_rg_intr_linkupStatus_get(arg,args...) rtk_intr_linkupStatus_get(arg,##args) #define rtk_rg_intr_polarity_get(arg,args...) rtk_intr_polarity_get(arg,##args) #define rtk_rg_intr_polarity_set(arg,args...) rtk_intr_polarity_set(arg,##args) #define rtk_rg_intr_speedChangeStatus_clear(arg,args...) rtk_intr_speedChangeStatus_clear(arg,##args) #define rtk_rg_intr_speedChangeStatus_get(arg,args...) rtk_intr_speedChangeStatus_get(arg,##args) //from ponmac.h #include<rtk/ponmac.h> #define rtk_rg_ponmac_flow2Queue_get(arg,args...) rtk_ponmac_flow2Queue_get(arg,##args) #define rtk_rg_ponmac_flow2Queue_set(arg,args...) rtk_ponmac_flow2Queue_set(arg,##args) #define rtk_rg_ponmac_init(arg,args...) rtk_ponmac_init(arg,##args) #define rtk_rg_ponmac_losState_get(arg,args...) rtk_ponmac_losState_get(arg,##args) #define rtk_rg_ponmac_mode_get(arg,args...) rtk_ponmac_mode_get(arg,##args) #define rtk_rg_ponmac_mode_set(arg,args...) rtk_ponmac_mode_set(arg,##args) #define rtk_rg_ponmac_opticalPolarity_get(arg,args...) rtk_ponmac_opticalPolarity_get(arg,##args) #define rtk_rg_ponmac_opticalPolarity_set(arg,args...) rtk_ponmac_opticalPolarity_set(arg,##args) #define rtk_rg_ponmac_queueDrainOut_set(arg,args...) rtk_ponmac_queueDrainOut_set(arg,##args) #define rtk_rg_ponmac_queue_add(arg,args...) rtk_ponmac_queue_add(arg,##args) #define rtk_rg_ponmac_queue_del(arg,args...) rtk_ponmac_queue_del(arg,##args) #define rtk_rg_ponmac_queue_get(arg,args...) rtk_ponmac_queue_get(arg,##args) #define rtk_rg_ponmac_transceiver_get(arg,args...) rtk_ponmac_transceiver_get(arg,##args) #define rtk_rg_ponmac_bwThreshold_set(arg,args...) rtk_ponmac_bwThreshold_set(arg,##args) #define rtk_rg_ponmac_bwThreshold_get(arg,args...) rtk_ponmac_bwThreshold_get(arg,##args) //from port.h #include<rtk/port.h> #define rtk_rg_port_adminEnable_get(arg,args...) rtk_port_adminEnable_get(arg,##args) #define rtk_rg_port_adminEnable_set(arg,args...) rtk_port_adminEnable_set(arg,##args) #define rtk_rg_port_cpuPortId_get(arg,args...) rtk_port_cpuPortId_get(arg,##args) #define rtk_rg_port_enhancedFid_get(arg,args...) rtk_port_enhancedFid_get(arg,##args) #define rtk_rg_port_enhancedFid_set(arg,args...) rtk_port_enhancedFid_set(arg,##args) #define rtk_rg_port_flowctrl_get(arg,args...) rtk_port_flowctrl_get(arg,##args) #define rtk_rg_port_gigaLiteEnable_get(arg,args...) rtk_port_gigaLiteEnable_get(arg,##args) #define rtk_rg_port_gigaLiteEnable_set(arg,args...) rtk_port_gigaLiteEnable_set(arg,##args) #define rtk_rg_port_greenEnable_get(arg,args...) rtk_port_greenEnable_get(arg,##args) #define rtk_rg_port_greenEnable_set(arg,args...) rtk_port_greenEnable_set(arg,##args) #define rtk_rg_port_init(arg,args...) rtk_port_init(arg,##args) #define rtk_rg_port_isolationEntryExt_get(arg,args...) rtk_port_isolationEntryExt_get(arg,##args) #define rtk_rg_port_isolationEntryExt_set(arg,args...) rtk_port_isolationEntryExt_set(arg,##args) #define rtk_rg_port_link_get(arg,args...) rtk_port_link_get(arg,##args) #define rtk_rg_port_macExtMode_get(arg,args...) rtk_port_macExtMode_get(arg,##args) #define rtk_rg_port_macExtMode_set(arg,args...) rtk_port_macExtMode_set(arg,##args) #define rtk_rg_port_macExtRgmiiDelay_get(arg,args...) rtk_port_macExtRgmiiDelay_get(arg,##args) #define rtk_rg_port_macExtRgmiiDelay_set(arg,args...) rtk_port_macExtRgmiiDelay_set(arg,##args) #define rtk_rg_port_macForceAbilityState_get(arg,args...) rtk_port_macForceAbilityState_get(arg,##args) #define rtk_rg_port_macForceAbilityState_set(arg,args...) rtk_port_macForceAbilityState_set(arg,##args) #define rtk_rg_port_macForceAbility_get(arg,args...) rtk_port_macForceAbility_get(arg,##args) #define rtk_rg_port_macForceAbility_set(arg,args...) rtk_port_macForceAbility_set(arg,##args) #define rtk_rg_port_macLocalLoopbackEnable_get(arg,args...) rtk_port_macLocalLoopbackEnable_get(arg,##args) #define rtk_rg_port_macLocalLoopbackEnable_set(arg,args...) rtk_port_macLocalLoopbackEnable_set(arg,##args) #define rtk_rg_port_macRemoteLoopbackEnable_get(arg,args...) rtk_port_macRemoteLoopbackEnable_get(arg,##args) #define rtk_rg_port_macRemoteLoopbackEnable_set(arg,args...) rtk_port_macRemoteLoopbackEnable_set(arg,##args) #define rtk_rg_port_phyAutoNegoAbility_get(arg,args...) rtk_port_phyAutoNegoAbility_get(arg,##args) #define rtk_rg_port_phyAutoNegoAbility_set(arg,args...) rtk_port_phyAutoNegoAbility_set(arg,##args) #define rtk_rg_port_phyAutoNegoEnable_get(arg,args...) rtk_port_phyAutoNegoEnable_get(arg,##args) #define rtk_rg_port_phyAutoNegoEnable_set(arg,args...) rtk_port_phyAutoNegoEnable_set(arg,##args) #define rtk_rg_port_phyCrossOverMode_get(arg,args...) rtk_port_phyCrossOverMode_get(arg,##args) #define rtk_rg_port_phyCrossOverMode_set(arg,args...) rtk_port_phyCrossOverMode_set(arg,##args) #define rtk_rg_port_phyForceModeAbility_get(arg,args...) rtk_port_phyForceModeAbility_get(arg,##args) #define rtk_rg_port_phyForceModeAbility_set(arg,args...) rtk_port_phyForceModeAbility_set(arg,##args) #define rtk_rg_port_phyMasterSlave_get(arg,args...) rtk_port_phyMasterSlave_get(arg,##args) #define rtk_rg_port_phyMasterSlave_set(arg,args...) rtk_port_phyMasterSlave_set(arg,##args) #define rtk_rg_port_phyReg_get(arg,args...) rtk_port_phyReg_get(arg,##args) #define rtk_rg_port_phyReg_set(arg,args...) rtk_port_phyReg_set(arg,##args) #define rtk_rg_port_phyTestMode_get(arg,args...) rtk_port_phyTestMode_get(arg,##args) #define rtk_rg_port_phyTestMode_set(arg,args...) rtk_port_phyTestMode_set(arg,##args) #define rtk_rg_port_rtctResult_get(arg,args...) rtk_port_rtctResult_get(arg,##args) #define rtk_rg_port_rtct_start(arg,args...) rtk_port_rtct_start(arg,##args) #define rtk_rg_port_specialCongestStatus_clear(arg,args...) rtk_port_specialCongestStatus_clear(arg,##args) #define rtk_rg_port_specialCongestStatus_get(arg,args...) rtk_port_specialCongestStatus_get(arg,##args) #define rtk_rg_port_specialCongest_get(arg,args...) rtk_port_specialCongest_get(arg,##args) #define rtk_rg_port_specialCongest_set(arg,args...) rtk_port_specialCongest_set(arg,##args) #define rtk_rg_port_speedDuplex_get(arg,args...) rtk_port_speedDuplex_get(arg,##args) //from rate.h #include<rtk/rate.h> #define rtk_rg_rate_egrBandwidthCtrlIncludeIfg_get(arg,args...) rtk_rate_egrBandwidthCtrlIncludeIfg_get(arg,##args) #define rtk_rg_rate_egrBandwidthCtrlIncludeIfg_set(arg,args...) rtk_rate_egrBandwidthCtrlIncludeIfg_set(arg,##args) #define rtk_rg_rate_egrQueueBwCtrlEnable_get(arg,args...) rtk_rate_egrQueueBwCtrlEnable_get(arg,##args) #define rtk_rg_rate_egrQueueBwCtrlEnable_set(arg,args...) rtk_rate_egrQueueBwCtrlEnable_set(arg,##args) #define rtk_rg_rate_egrQueueBwCtrlMeterIdx_get(arg,args...) rtk_rate_egrQueueBwCtrlMeterIdx_get(arg,##args) #define rtk_rg_rate_egrQueueBwCtrlMeterIdx_set(arg,args...) rtk_rate_egrQueueBwCtrlMeterIdx_set(arg,##args) #define rtk_rg_rate_init(arg,args...) rtk_rate_init(arg,##args) #define rtk_rg_rate_portEgrBandwidthCtrlIncludeIfg_get(arg,args...) rtk_rate_portEgrBandwidthCtrlIncludeIfg_get(arg,##args) #define rtk_rg_rate_portEgrBandwidthCtrlIncludeIfg_set(arg,args...) rtk_rate_portEgrBandwidthCtrlIncludeIfg_set(arg,##args) #define rtk_rg_rate_portEgrBandwidthCtrlRate_get(arg,args...) rtk_rate_portEgrBandwidthCtrlRate_get(arg,##args) #define rtk_rg_rate_portEgrBandwidthCtrlRate_set(arg,args...) rtk_rate_portEgrBandwidthCtrlRate_set(arg,##args) #define rtk_rg_rate_portIgrBandwidthCtrlIncludeIfg_get(arg,args...) rtk_rate_portIgrBandwidthCtrlIncludeIfg_get(arg,##args) #define rtk_rg_rate_portIgrBandwidthCtrlIncludeIfg_set(arg,args...) rtk_rate_portIgrBandwidthCtrlIncludeIfg_set(arg,##args) #define rtk_rg_rate_portIgrBandwidthCtrlRate_get(arg,args...) rtk_rate_portIgrBandwidthCtrlRate_get(arg,##args) #define rtk_rg_rate_portIgrBandwidthCtrlRate_set(arg,args...) rtk_rate_portIgrBandwidthCtrlRate_set(arg,##args) #define rtk_rg_rate_shareMeterBucket_get(arg,args...) rtk_rate_shareMeterBucket_get(arg,##args) #define rtk_rg_rate_shareMeterBucket_set(arg,args...) rtk_rate_shareMeterBucket_set(arg,##args) #define rtk_rg_rate_shareMeterExceed_clear(arg,args...) rtk_rate_shareMeterExceed_clear(arg,##args) #define rtk_rg_rate_shareMeterExceed_get(arg,args...) rtk_rate_shareMeterExceed_get(arg,##args) #define rtk_rg_rate_shareMeterMode_get(arg,args...) rtk_rate_shareMeterMode_get(arg,##args) #define rtk_rg_rate_shareMeterMode_set(arg,args...) rtk_rate_shareMeterMode_set(arg,##args) #define rtk_rg_rate_shareMeter_get(arg,args...) rtk_rate_shareMeter_get(arg,##args) #define rtk_rg_rate_shareMeter_set(arg,args...) rtk_rate_shareMeter_set(arg,##args) #define rtk_rg_rate_stormBypass_get(arg,args...) rtk_rate_stormBypass_get(arg,##args) #define rtk_rg_rate_stormBypass_set(arg,args...) rtk_rate_stormBypass_set(arg,##args) #define rtk_rg_rate_stormControlEnable_get(arg,args...) rtk_rate_stormControlEnable_get(arg,##args) #define rtk_rg_rate_stormControlEnable_set(arg,args...) rtk_rate_stormControlEnable_set(arg,##args) #define rtk_rg_rate_stormControlMeterIdx_get(arg,args...) rtk_rate_stormControlMeterIdx_get(arg,##args) #define rtk_rg_rate_stormControlMeterIdx_set(arg,args...) rtk_rate_stormControlMeterIdx_set(arg,##args) #define rtk_rg_rate_stormControlPortEnable_get(arg,args...) rtk_rate_stormControlPortEnable_get(arg,##args) #define rtk_rg_rate_stormControlPortEnable_set(arg,args...) rtk_rate_stormControlPortEnable_set(arg,##args) #define rtk_rg_rate_hostMacAddr_get(arg,args...) rtk_rate_hostMacAddr_get(arg,##args) #define rtk_rg_rate_hostMacAddr_set(arg,args...) rtk_rate_hostMacAddr_set(arg,##args) #define rtk_rg_rate_hostBwCtrlMeterIdx_get(arg,args...) rtk_rate_hostBwCtrlMeterIdx_get(arg,##args) #define rtk_rg_rate_hostBwCtrlMeterIdx_set(arg,args...) rtk_rate_hostBwCtrlMeterIdx_set(arg,##args) #define rtk_rg_rate_hostEgrBwCtrlState_get(arg,args...) rtk_rate_hostEgrBwCtrlState_get(arg,##args) #define rtk_rg_rate_hostEgrBwCtrlState_set(arg,args...) rtk_rate_hostEgrBwCtrlState_set(arg,##args) #define rtk_rg_rate_hostIgrBwCtrlState_get(arg,args...) rtk_rate_hostIgrBwCtrlState_get(arg,##args) #define rtk_rg_rate_hostIgrBwCtrlState_set(arg,args...) rtk_rate_hostIgrBwCtrlState_set(arg,##args) //from rldp.h #include<rtk/rldp.h> #define rtk_rg_rldp_config_get(arg,args...) rtk_rldp_config_get(arg,##args) #define rtk_rg_rldp_config_set(arg,args...) rtk_rldp_config_set(arg,##args) #define rtk_rg_rldp_init(arg,args...) rtk_rldp_init(arg,##args) #define rtk_rg_rldp_portConfig_get(arg,args...) rtk_rldp_portConfig_get(arg,##args) #define rtk_rg_rldp_portConfig_set(arg,args...) rtk_rldp_portConfig_set(arg,##args) #define rtk_rg_rldp_portStatus_clear(arg,args...) rtk_rldp_portStatus_clear(arg,##args) #define rtk_rg_rldp_portStatus_get(arg,args...) rtk_rldp_portStatus_get(arg,##args) #define rtk_rg_rldp_status_get(arg,args...) rtk_rldp_status_get(arg,##args) #define rtk_rg_rlpp_init(arg,args...) rtk_rlpp_init(arg,##args) #define rtk_rg_rlpp_trapType_get(arg,args...) rtk_rlpp_trapType_get(arg,##args) #define rtk_rg_rlpp_trapType_set(arg,args...) rtk_rlpp_trapType_set(arg,##args) //from stat.h #include<rtk/stat.h> #define rtk_rg_stat_global_get(arg,args...) rtk_stat_global_get(arg,##args) #define rtk_rg_stat_global_getAll(arg,args...) rtk_stat_global_getAll(arg,##args) #define rtk_rg_stat_global_reset(arg,args...) rtk_stat_global_reset(arg,##args) #define rtk_rg_stat_init(arg,args...) rtk_stat_init(arg,##args) #define rtk_rg_stat_logCtrl_get(arg,args...) rtk_stat_logCtrl_get(arg,##args) #define rtk_rg_stat_logCtrl_set(arg,args...) rtk_stat_logCtrl_set(arg,##args) #define rtk_rg_stat_log_get(arg,args...) rtk_stat_log_get(arg,##args) #define rtk_rg_stat_log_reset(arg,args...) rtk_stat_log_reset(arg,##args) #define rtk_rg_stat_mibCntMode_get(arg,args...) rtk_stat_mibCntMode_get(arg,##args) #define rtk_rg_stat_mibCntMode_set(arg,args...) rtk_stat_mibCntMode_set(arg,##args) #define rtk_rg_stat_mibCntTagLen_get(arg,args...) rtk_stat_mibCntTagLen_get(arg,##args) #define rtk_rg_stat_mibCntTagLen_set(arg,args...) rtk_stat_mibCntTagLen_set(arg,##args) #define rtk_rg_stat_mibLatchTimer_get(arg,args...) rtk_stat_mibLatchTimer_get(arg,##args) #define rtk_rg_stat_mibLatchTimer_set(arg,args...) rtk_stat_mibLatchTimer_set(arg,##args) #define rtk_rg_stat_mibSyncMode_get(arg,args...) rtk_stat_mibSyncMode_get(arg,##args) #define rtk_rg_stat_mibSyncMode_set(arg,args...) rtk_stat_mibSyncMode_set(arg,##args) #define rtk_rg_stat_pktInfo_get(arg,args...) rtk_stat_pktInfo_get(arg,##args) #define rtk_rg_stat_port_get(arg,args...) rtk_stat_port_get(arg,##args) #define rtk_rg_stat_port_getAll(arg,args...) rtk_stat_port_getAll(arg,##args) #define rtk_rg_stat_port_reset(arg,args...) rtk_stat_port_reset(arg,##args) #define rtk_rg_stat_rstCntValue_get(arg,args...) rtk_stat_rstCntValue_get(arg,##args) #define rtk_rg_stat_rstCntValue_set(arg,args...) rtk_stat_rstCntValue_set(arg,##args) #define rtk_rg_stat_hostCnt_reset(arg,args...) rtk_stat_hostCnt_reset(arg,##args) #define rtk_rg_stat_hostCnt_get(arg,args...) rtk_stat_hostCnt_get(arg,##args) #define rtk_rg_stat_hostState_get(arg,args...) rtk_stat_hostState_get(arg,##args) #define rtk_rg_stat_hostState_set(arg,args...) rtk_stat_hostState_set(arg,##args) //from switch.h #include<rtk/switch.h> #define rtk_rg_switch_allExtPortMask_set(arg,args...) rtk_switch_allExtPortMask_set(arg,##args) #define rtk_rg_switch_allPortMask_set(arg,args...) rtk_switch_allPortMask_set(arg,##args) #define rtk_rg_switch_chip_reset(arg,args...) rtk_switch_chip_reset(arg,##args) #define rtk_rg_switch_deviceInfo_get(arg,args...) rtk_switch_deviceInfo_get(arg,##args) #define rtk_rg_switch_init(arg,args...) rtk_switch_init(arg,##args) #define rtk_rg_switch_logicalPort_get(arg,args...) rtk_switch_logicalPort_get(arg,##args) #define rtk_rg_switch_maxPktLenLinkSpeed_get(arg,args...) rtk_switch_maxPktLenLinkSpeed_get(arg,##args) #define rtk_rg_switch_maxPktLenLinkSpeed_set(arg,args...) rtk_switch_maxPktLenLinkSpeed_set(arg,##args) #define rtk_rg_switch_mgmtMacAddr_get(arg,args...) rtk_switch_mgmtMacAddr_get(arg,##args) #define rtk_rg_switch_mgmtMacAddr_set(arg,args...) rtk_switch_mgmtMacAddr_set(arg,##args) #define rtk_rg_switch_nextPortInMask_get(arg,args...) rtk_switch_nextPortInMask_get(arg,##args) #define rtk_rg_switch_phyPortId_get(arg,args...) rtk_switch_phyPortId_get(arg,##args) #define rtk_rg_switch_port2PortMask_clear(arg,args...) rtk_switch_port2PortMask_clear(arg,##args) #define rtk_rg_switch_port2PortMask_set(arg,args...) rtk_switch_port2PortMask_set(arg,##args) #define rtk_rg_switch_portIdInMask_check(arg,args...) rtk_switch_portIdInMask_check(arg,##args) #define rtk_rg_switch_portMask_Clear(arg,args...) rtk_switch_portMask_Clear(arg,##args) #define rtk_rg_switch_version_get(arg,args...) rtk_switch_version_get(arg,##args) #define rtk_rg_switch_maxPktLenByPort_get(arg,args...) rtk_switch_maxPktLenByPort_get(arg,##args) #define rtk_rg_switch_maxPktLenByPort_set(arg,args...) rtk_switch_maxPktLenByPort_set(arg,##args) #define rtk_rg_switch_version_get(arg,args...) rtk_switch_version_get(arg,##args) //from trap.h #include<rtk/trap.h> #define rtk_rg_trap_igmpCtrlPkt2CpuEnable_get(arg,args...) rtk_trap_igmpCtrlPkt2CpuEnable_get(arg,##args) #define rtk_rg_trap_igmpCtrlPkt2CpuEnable_set(arg,args...) rtk_trap_igmpCtrlPkt2CpuEnable_set(arg,##args) #define rtk_rg_trap_init(arg,args...) rtk_trap_init(arg,##args) #define rtk_rg_trap_ipMcastPkt2CpuEnable_get(arg,args...) rtk_trap_ipMcastPkt2CpuEnable_get(arg,##args) #define rtk_rg_trap_ipMcastPkt2CpuEnable_set(arg,args...) rtk_trap_ipMcastPkt2CpuEnable_set(arg,##args) #define rtk_rg_trap_l2McastPkt2CpuEnable_get(arg,args...) rtk_trap_l2McastPkt2CpuEnable_get(arg,##args) #define rtk_rg_trap_l2McastPkt2CpuEnable_set(arg,args...) rtk_trap_l2McastPkt2CpuEnable_set(arg,##args) #define rtk_rg_trap_mldCtrlPkt2CpuEnable_get(arg,args...) rtk_trap_mldCtrlPkt2CpuEnable_get(arg,##args) #define rtk_rg_trap_mldCtrlPkt2CpuEnable_set(arg,args...) rtk_trap_mldCtrlPkt2CpuEnable_set(arg,##args) #define rtk_rg_trap_oamPduAction_get(arg,args...) rtk_trap_oamPduAction_get(arg,##args) #define rtk_rg_trap_oamPduAction_set(arg,args...) rtk_trap_oamPduAction_set(arg,##args) #define rtk_rg_trap_oamPduPri_get(arg,args...) rtk_trap_oamPduPri_get(arg,##args) #define rtk_rg_trap_oamPduPri_set(arg,args...) rtk_trap_oamPduPri_set(arg,##args) #define rtk_rg_trap_portIgmpMldCtrlPktAction_get(arg,args...) rtk_trap_portIgmpMldCtrlPktAction_get(arg,##args) #define rtk_rg_trap_portIgmpMldCtrlPktAction_set(arg,args...) rtk_trap_portIgmpMldCtrlPktAction_set(arg,##args) #define rtk_rg_trap_reasonTrapToCpuPriority_get(arg,args...) rtk_trap_reasonTrapToCpuPriority_get(arg,##args) #define rtk_rg_trap_reasonTrapToCpuPriority_set(arg,args...) rtk_trap_reasonTrapToCpuPriority_set(arg,##args) #define rtk_rg_trap_rmaAction_get(arg,args...) rtk_trap_rmaAction_get(arg,##args) #define rtk_rg_trap_rmaAction_set(arg,args...) rtk_trap_rmaAction_set(arg,##args) #define rtk_rg_trap_rmaPri_get(arg,args...) rtk_trap_rmaPri_get(arg,##args) #define rtk_rg_trap_rmaPri_set(arg,args...) rtk_trap_rmaPri_set(arg,##args) #include "rtk/classify.h" #define rtk_rg_classify_unmatchAction_set(arg,args...) rtk_classify_unmatchAction_set(arg,##args) #include "rtk/vlan.h" #define rtk_rg_vlan_reservedVidAction_set(arg,args...) rtk_vlan_reservedVidAction_set(arg,##args) #define rtk_rg_vlan_vlanFunctionEnable_set(arg,args...) rtk_vlan_vlanFunctionEnable_set(arg,##args) #include "rtk/svlan.h" #define rtk_rg_svlan_svlanFunctionEnable_set(arg,args...) rtk_svlan_svlanFunctionEnable_set(arg,##args) #include "rtk/led.h" #define rtk_rg_led_pon_port_set(arg,args...) rtk_led_pon_port_set(arg,##args) #include "rtk/pon_led.h" #define rtk_rg_pon_led_status_set(arg,args...) rtk_pon_led_status_set(arg,##args) #include "rtk/qos.h" #define rtk_rg_qos_schedulingType_set(arg,args...) rtk_qos_schedulingType_set(arg,##args) #include "rtk/l2.h" #define rtk_rg_l2_portAgingEnable_set(arg,args...) rtk_l2_portAgingEnable_set(arg,##args) #define rtk_rg_l2_aging_set(arg,args...) rtk_l2_aging_set(arg,##args) #define rtk_rg_l2_portAgingEnable_get(arg,args...) rtk_l2_portAgingEnable_get(arg,##args) #define rtk_rg_l2_aging_get(arg,args...) rtk_l2_aging_get(arg,##args) #define rtk_rg_l2_ipmcMode_get(arg,args...) rtk_l2_ipmcMode_get(arg,##args) #define rtk_rg_l2_ipmcMode_set(arg,args...) rtk_l2_ipmcMode_set(arg,##args) #define rtk_rg_l2_ipmcGroupLookupMissHash_set(arg,args...) rtk_l2_ipmcGroupLookupMissHash_set(arg,##args) #elif defined(CONFIG_XDSL_NEW_HWNAT_DRIVER) //end CONFIG_APOLLO #define rtk_rg_l2_ipmcMode_get(arg,args...) rtk_l2_ipmcMode_get(arg,##args) #define rtk_rg_l2_ipmcMode_set(arg,args...) rtk_l2_ipmcMode_set(arg,##args) #define rtk_rg_l2_ipmcGroupLookupMissHash_set(arg,args...) rtk_l2_ipmcGroupLookupMissHash_set(arg,##args) #endif //end CONFIG_XDSL_NEW_HWNAT_DRIVER #endif