IStax代码 函数

#define INITFUN(x)   {x, #x},
// #表示宏变量加上了"" ,输出字符,如 "x"
// ##表示连字符

static struct {
    mesa_rc           (*func)(vtss_init_data_t *data);
    const char        *name;
    vtss_tick_count_t max_callback_ticks;
    init_cmd_t        max_callback_cmd;
} initfun[] = {
    INITFUN(vtss_trace_init)
    INITFUN(critd_module_init)
#ifdef VTSS_SW_OPTION_TIMER
    INITFUN(vtss_timer_init)
#endif
#ifdef VTSS_SW_OPTION_THREAD_LOAD_MONITOR
    INITFUN(thread_load_monitor_init)
#endif
    INITFUN(conf_init)
    INITFUN(vtss_api_if_init)
#ifdef VTSS_SW_OPTION_ALARM
     INITFUN(alarm_init)
#endif
#ifdef VTSS_SW_OPTION_ICFG
    INITFUN(vtss_icfg_early_init)
#endif
    INITFUN(msg_init)
    INITFUN(port_init)
    INITFUN(interrupt_init)
#ifdef VTSS_SW_OPTION_CONSOLE
    INITFUN(console_start)
#endif
#if defined(CYGPKG_FS_RAM) && defined(VTSS_SW_OPTION_ICFG)
    INITFUN(os_file_init)
#endif
#ifdef VTSS_SW_OPTION_ICLI
    INITFUN(icli_init)
#endif
#ifdef VTSS_SW_OPTION_CLI
    INITFUN(cli_io_init)
#endif
#ifdef VTSS_SW_OPTION_PHY
    INITFUN(phy_init)
#endif
#if defined(VTSS_SW_OPTION_SYSLOG)
    INITFUN(syslog_init)
#endif



#ifdef VTSS_SW_OPTION_PSEC
    INITFUN(psec_init)
#endif
#ifdef VTSS_SW_OPTION_VLAN
    INITFUN(vlan_init)
#endif
    INITFUN(led_init)



    INITFUN(misc_init)






#ifdef VTSS_SW_OPTION_MEP
    INITFUN(mep_init) // Depends upon misc module
#endif



    INITFUN(standalone_init)
#ifdef VTSS_SW_OPTION_ACCESS_MGMT
    INITFUN(access_mgmt_init)
#endif
#ifdef VTSS_SW_OPTION_WEB
    INITFUN(web_init)
#endif
#ifdef VTSS_SW_OPTION_PACKET
    INITFUN(packet_init)
#endif
#ifdef VTSS_SW_OPTION_SYSUTIL
    INITFUN(system_init)
#endif
#ifdef VTSS_SW_OPTION_DHCP_CLIENT
    INITFUN(vtss_dhcp_client_init)
#endif
#if defined(VTSS_SW_OPTION_IP)
    INITFUN(ping_init)
    INITFUN(traceroute_init)
#endif
#ifdef VTSS_SW_OPTION_IP
    INITFUN(vtss_ip_init)
#ifndef VTSS_SW_OPTION_NTP
#endif
#endif
#ifdef VTSS_SW_OPTION_DHCP6_CLIENT
    INITFUN(dhcp6_client_init)
#endif



#ifdef VTSS_SW_OPTION_ACL
    INITFUN(acl_init)
#endif
#ifdef VTSS_SW_OPTION_MIRROR
    INITFUN(mirror_basic_init)
    INITFUN(mirror_init)
#endif
#ifdef VTSS_SW_OPTION_LOOP_DETECT
    INITFUN(vtss_lb_init)
#endif
#ifdef VTSS_SW_OPTION_MAC
    INITFUN(mac_init)
#endif
#ifdef VTSS_SW_OPTION_QOS
    INITFUN(qos_init)
#endif
#ifdef VTSS_SW_OPTION_AGGR
    INITFUN(aggr_init)
#endif
#ifdef VTSS_SW_OPTION_PVLAN
    INITFUN(pvlan_init)
#endif
#ifdef VTSS_SW_OPTION_FIRMWARE
    INITFUN(firmware_init)
#endif
#ifdef VTSS_SW_OPTION_SYNCE_DPLL
    INITFUN(synce_dpll_init)  // Depends upon misc module
#endif
#ifdef VTSS_SW_OPTION_SYNCE
    INITFUN(synce_init)  // Depends upon synce_dpll module
#endif
#if defined(VTSS_SW_OPTION_MSTP) || defined(VTSS_SW_OPTION_DOT1X) || defined(VTSS_SW_OPTION_LACP) || defined(VTSS_SW_OPTION_SNMP)
    INITFUN(l2_init)
#endif
#ifdef VTSS_SW_OPTION_EPS
    INITFUN(eps_init) // Depends upon misc module
#endif
#ifdef VTSS_SW_OPTION_MSTP
    INITFUN(mstp_init)
#endif
#ifdef VTSS_SW_OPTION_PTP
    INITFUN(ptp_init)
#endif
#ifdef VTSS_SW_OPTION_LACP
    INITFUN(lacp_init)
#endif
#ifdef VTSS_SW_OPTION_DOT1X
    INITFUN(dot1x_init)
#endif
#ifdef VTSS_SW_OPTION_LLDP
    INITFUN(lldp_init)
#endif
#ifdef VTSS_SW_OPTION_EEE
    INITFUN(eee_init)
#endif
#ifdef VTSS_SW_OPTION_FAN
    INITFUN(fan_init)
#endif
#ifdef VTSS_SW_OPTION_THERMAL_PROTECT
    INITFUN(thermal_protect_init)
#endif
#ifdef VTSS_SW_OPTION_LED_POW_REDUC
    INITFUN(led_pow_reduc_init)
#endif
#if defined(VTSS_SW_OPTION_SNMP)
    INITFUN(snmp_init)
#endif
#ifdef VTSS_SW_OPTION_RMON
    INITFUN(rmon_init)
#endif
#ifdef VTSS_SW_OPTION_DNS
    INITFUN(ip_dns_init)
#endif
#ifdef VTSS_SW_OPTION_POE
    INITFUN(poe_init)
#endif
#ifdef VTSS_SW_OPTION_AUTH
    INITFUN(vtss_auth_init)
#endif
#ifdef VTSS_SW_OPTION_UPNP
    INITFUN(upnp_init)
#endif
#ifdef VTSS_SW_OPTION_RADIUS
    INITFUN(vtss_radius_init)
#endif
#ifdef VTSS_SW_OPTION_DHCP_HELPER
    INITFUN(dhcp_helper_init)
#endif
#ifdef VTSS_SW_OPTION_DHCP_SNOOPING
    INITFUN(dhcp_snooping_init)
    INITFUN(dhcp6_snooping_init)
#endif
#ifdef VTSS_SW_OPTION_DHCP_RELAY
    INITFUN(dhcp_relay_init)
#endif
#ifdef VTSS_SW_OPTION_NTP
    INITFUN(ntp_init)
#endif
#ifdef VTSS_SW_OPTION_USERS
    INITFUN(vtss_users_init)
#endif
#ifdef VTSS_SW_OPTION_PRIV_LVL
    INITFUN(vtss_priv_init)
#endif
#ifdef VTSS_SW_OPTION_ARP_INSPECTION
    INITFUN(arp_inspection_init)
#endif
#ifdef VTSS_SW_OPTION_IP_SOURCE_GUARD
    INITFUN(ip_source_guard_init)
#endif
#ifdef VTSS_SW_OPTION_IPV6_SOURCE_GUARD
    INITFUN(ipv6_source_guard_init)
#endif
#ifdef VTSS_SW_OPTION_PSEC_LIMIT
    INITFUN(psec_limit_init)
#endif
#ifdef VTSS_SW_OPTION_IPMC_LIB
    INITFUN(ipmc_lib_init)
#endif
#ifdef VTSS_SW_OPTION_MVR
    INITFUN(mvr_init)
#endif
#ifdef VTSS_SW_OPTION_IPMC
    INITFUN(ipmc_init)
#endif
#ifdef VTSS_SW_OPTION_IGMP_HELPER
    INITFUN(vtss_igmp_helper_init)
#endif
#ifdef VTSS_SW_OPTION_IGMPS
    INITFUN(igmps_init)
#endif
#ifdef VTSS_SW_OPTION_MLDSNP
    INITFUN(mldsnp_init)
#endif
#ifdef VTSS_SW_OPTION_VOICE_VLAN
    INITFUN(voice_vlan_init)
#endif
#ifdef VTSS_SW_OPTION_ERPS
    INITFUN(erps_init)
#endif
#ifdef VTSS_SW_OPTION_ETH_LINK_OAM
    INITFUN(eth_link_oam_init)
#endif
#ifdef VTSS_SW_OPTION_TOD
    INITFUN(tod_init)
#endif
#ifdef VTSS_SW_OPTION_MPLS
    INITFUN(mpls_init)
#endif



#ifdef VTSS_SW_OPTION_SFLOW
    INITFUN(sflow_init)
#endif
#ifdef VTSS_SW_OPTION_VCL
    INITFUN(vcl_init)
#endif
#ifdef VTSS_SW_OPTION_SYMREG
    INITFUN(symreg_init)
#endif
#ifdef VTSS_SW_OPTION_AFI
    INITFUN(afi_init)
#endif
#ifdef VTSS_SW_OPTION_VLAN_TRANSLATION
    INITFUN(vlan_trans_init)
#endif



#ifdef VTSS_SW_OPTION_XXRP
    INITFUN(xxrp_init)
#endif
#ifdef VTSS_SW_OPTION_LOOP_PROTECTION
    INITFUN(loop_protect_init)
#endif
#ifdef VTSS_SW_OPTION_DAYLIGHT_SAVING
    INITFUN(time_dst_init)
#endif
#if defined(VTSS_SW_OPTION_ZLS30387)
    INITFUN(zl_3038x_pdv_init)
#endif



#ifdef VTSS_SW_OPTION_JSON_RPC
    INITFUN(vtss_json_rpc_init)
#endif
#ifdef VTSS_SW_OPTION_JSON_RPC_NOTIFICATION
    INITFUN(vtss_json_rpc_notification_init)
#endif
#ifdef VTSS_SW_OPTION_SNMP_DEMO
    INITFUN(vtss_snmp_demo_init)
#endif



#if defined(VTSS_SW_OPTION_DDMI)
    INITFUN(ddmi_init)
#endif
#if defined(VTSS_SW_OPTION_SUBJECT)
    INITFUN(vtss_subject_init)
#endif
#ifdef VTSS_SW_OPTION_FRR
    INITFUN(frr_init)
#endif
#ifdef VTSS_SW_OPTION_DHCP_SERVER
    INITFUN(dhcp_server_init)
#endif
#if defined(VTSS_SW_OPTION_UDLD)
    INITFUN(udld_init)
#endif






#ifdef VTSS_SW_OPTION_NTP_LINUX
    INITFUN(ntp_linux_init)
#endif
#if defined(VTSS_SW_OPTION_FAST_CGI)
    INITFUN(vtss_fast_cgi_init)
#endif
#if defined(VTSS_SW_OPTION_JSON_IPC)
    INITFUN(json_ipc_init)
#endif





#if defined(VTSS_SW_OPTION_OPTIONAL_MODULES)
    INITFUN(vtss_optional_modules_init)
#endif

// **** NOTE: vtss_icfg_late_init must be last in this list ****
#ifdef VTSS_SW_OPTION_ICFG
    INITFUN(vtss_icfg_late_init)
#endif

// **** NOTE: sw_push_button_init() is a special case need to process behind vtss_icfg_late_init()
// because the startup configuration will be reset to factory default when press this button and holding over 5 seconds. ****
// 注意: sw_push_button_init() 是需要在 vtss_icfg_late_init() 后面处理的特殊情况,因为按下此按钮并按住 5 秒以上时启动配置将重置为出厂默认设置


};

//

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值