亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? enable_gmacs.c

?? hifn ipsec固件下載工具
?? C
?? 第 1 頁 / 共 4 頁
字號:
/*----------------------------------------------------------------------------*  Copyright (c) 2006 by Hifn, Inc, Los Gatos, CA, U.S.A.  All Rights Reserved.  This  software is furnished to licensee under a software license  agreement  and may be used and copied only in accordance with the terms and conditions  of such license and with the inclusion of the above Copyright Notice.  This  software  or  any  other  copies  thereof may not be provided or  otherwise  made  available  to any  other person.  No title to and  ownership  of  the  software   is   hereby   transferred   and   licensee  is  subject  to  all  confidentiality  provisions set forth in the  software  license  agreement.  The information in this software is  subject to change without notice.*-----------------------------------------------------------------------------*/static char const hftc_id[] = "$Id: @(#) enable_gmacs.c 1.11@(#) $";/*----------------------------------------------------------------------------* * @file enable_gmacs.c * @brief Enable the gmacs. * * This program is similar to the code in the startup utility enable_gmacs. * *----------------------------------------------------------------------------*//* @defgroup CD_API_UTIL *//*------------------------------------* * Header Include *------------------------------------*//* Standard includes */#include <stdio.h>#include <string.h>#include <stdlib.h>/* API specific includes */#include "download.h"#include "hftc_pub_common.h"#include "hftc_pub_types.h"#include "hftc_pub_errors.h"#include "hftc_pub_gmac.h"#include "hftc_pub_service.h"#include "hftc_pub_os_common.h"#include "hftc_pub_translate_enums.h"#include "hftc_pub_app_utils.h"/*------------------------------------* * Constants and Types *------------------------------------*/#define  DL_DEBUG   0     /* Set = 1 to get debug output, 0 for none. *//*   We are currently enabling the transmit and recieve, and setting the GMACs   into a MAC filtering mode.  If your situation requires customization, this   is a place it can be done.  The ROM currently sets up the GMAC registers   as follows:   1) The DPU Boot ROM code will set up Host 0 / register 1 based on   the boot config pin and pp_gpio_7   2) The DPU Init code will set up the rest as follows:   Register 0: For Host 1, Network 0, and Network 1      If operating in GMII mode : PLL_MODE_1 == "1"      Config register 0 = WATCHDOG_DIS | JABBER_DIS | FRMBURST_EN |                          JUMBOFRM_EN | BIGENDIAN_EN | RX_OWN_DIS |                          FULLDPLX_EN | DEFERRAL_CHK_EN      If operating in MII mode : PLL_MODE_1 == "0"      Config register 0 = WATCHDOG_DIS | JABBER_DIS | FRMBURST_EN |                          JUMBOFRM_EN | BIGENDIAN_EN | RX_OWN_DIS |                          FULLDPLX_EN | DEFERRAL_CHK_EN |                          MIIMODE_DIS   Note: The MIIMODE_DIS bit will be controlled by the station         manager at run time.   Register 1: For Host 0, Host 1      Config register 1 = PROMISC_MODE   Register 1: For Network 0, Network 1 (Address Filter Mode)         Config register 1 = 0   Note: This is the preferred mode where user has 16 progammable         MAC addresses for each GMAC for programming unicast and         multicast addresses.  However, for ease of initial setup         the GMAC is being set into in promiscuous mode.   Register 6 : For H0, H1, N0,  N1      Config register 6 = RX_PAUSE_EN | TX_PAUSE_EN | Pause time (0x10000000)                        = 0x00 0x10 0x00 0x06   3) Additional Host programming:      1) Register 6 should be left alone      2) Register 0 :         a) For any ports that the user wants to enable the user can            read the value and OR in the TX and RX enable bits.         b) If the user knows that the packets, with all headers (i.e.            PPCI and IPSec ) will not exceed 1522 bytes, the JUMBOFRM,            WATCHDOG and JABBER can be clear.      3) Register 1 may need to be programmed in the following cases:         (This helps reduce the number of pause frames that pass         to the DPU caused by the Pause Frame errata ER-17 -- this is         43x0/83x0 specific).         a) If no multicast addresses are needed:            - Put the host side GMACs into inverse filter mode.            - Put the network side GMACs into address filter mode             (allow up to 16 unicast addresses.)         b) On a 43x0/83x0 if multicast is needed and the multicast            addresses used don't hash to the pause address (there is no            issue with pause address on the 44x0/84x0):            - Put the host side GMACs into promiscuous mode.            - Put the network side GMACs into hash mode (set the              appropriate hash bits in the hash register and leave bit 3              reset. The pause address hashes to bit 3.         c) On a 43x0/83x0 if multicast is needed and the address does hash            to the pause address (there is no issue with pause address on            the 44x0/84x0):            - Put the host side GMACs into promiscuous mode.            - Put the network side GMACs into address filter mode for              both unicast and multicast (you will be limited to 16 of              these filters).         d) If multicast is needed and more than 16 MAC addresses            are needed:            - Put the host side GMACs into promiscuous mode            - Put the net side GMACs into promiscuous mode              or  enable multicast.              or  enable promiscuous mode.         On the 44x0/84x0 to allow the neighbor discovery address (a         multicast address) to go through, we use promiscuous mode on         the host ports, and set the allow multicast bit on the network         side ports.   --------------------------------------------------      This code sets TX and RX enable bits in register 0.      It is allowing the possibility of jumbo packets.      When using MAC filtering, the code will set the HOST side GMACs to use      inverse filtering on an invalid MAC address.  This will prevent the      pause frames from being received as they are multicast.  It will also      program the IKE MAC addresses from the configparams file into the MAC      filtering addresses on the NETWORK side.      When setting promiscuous mode, the code will set the MAC Frame Filter      register into Promiscous mode.      Register 0 is the MAC Configuration Register register                 (HFTC_GMAC_SYN_MAC_CONFIG)      Register 1 is the MAC Frame Filter Register register                 (HFTC_GMAC_SYN_MAC_FRAME_FILTER)      Register 6 is the Flow Control Register                 (HFTC_GMAC_SYN_FLOW_CONTROL)      Register 16 is a MAC address filter register for the right-most                  network order bytes.  See hftc_pub_gmac.h                 (HFTC_GMAC_SYN_MAC_ADDR0_LO)      Register 17 is a MAC address filter register for the left-most                  network order bytes.                 (HFTC_GMAC_SYN_MAC_ADDR0_HI)      Register 18 is a MAC address filter register for the right-most                  network order bytes.                 (HFTC_GMAC_SYN_MAC_ADDR1_LO)      Register 19 is a MAC address filter register for the left-most                  network order bytes.                 (HFTC_GMAC_SYN_MAC_ADDR1_HI)      The TX enable bit is bit 3 in HFTC_GMAC_SYN_MAC_CONFIG      The RX enable bit is bit 2 in HFTC_GMAC_SYN_MAC_CONFIG      This code is enabling both Host 0 and 1, and Network 0 and 1*//*   The origin of the values below can be found in UG-0039 Hipp III 43x0 83x0   User's Guide.*/#define CONFIG_ENABLE                   0x0000000C#define FILTER_MASK                     0x0000003F#define FILTER_PERFECT                  0x00000000#define FILTER_ALLOW_MULTICAST          0x00000010#define FILTER_PROMISC                  0x00000001#define FILTER_INVERSE                  0x00000008/*   This is the typedef for the table used to configure the gmacs.*/typedef struct{   HFTC_GMACReg_t             gmac;   HFTC_GMACIndex_t           index;   uint32_t                   config;} gmac_config_t;/*   This is how many entries are used in the gmac_config_table.   For a 4300 or 8300 we only configure HOST0, NET0, so the number is half   that of the x350 or x450 units.   Although NET1 can be enabled on a 4300 or 8300 (it may be present for   failover use) it is not present on all boards.  It is not enabled here.*/#define GMAC_CONFIG_TABLE_SIZE          12#define GMAC_CONFIG_TABLE_SIZE_x300     (GMAC_CONFIG_TABLE_SIZE/2)/*   This is the typedef for the table used add MAC addresses for MAC   filtering.*/typedef struct{   HFTC_GMACReg_t             lo;   HFTC_GMACReg_t             hi;} gmac_filtering_t;/*------------------------------------* * External Variables *------------------------------------*//*------------------------------------* * File-Scope Variables *------------------------------------*//*   This table defines what gmac registers we are configuring and how.   The table is also used for setting the address filtering modes.  If   promiscous mode is being used, the config value is overwritten - that is a   FILTER_INVERSE is overwritten with FILTER_PROMISC, etc.  The value for   the mac frame filter is also overwritten for the 44x0/84x0.  The value being   written into the 0 MAC address is the invalid MAC address for inverse   filtering.  The order of the bytes are reversed and the high bit of the   low address is set (it is the enable bit).  Thus a MAC address of   11:22:33:44:55:66 will be written as 0x80006655 0x44332211*/static gmac_config_t gmac_config_table[GMAC_CONFIG_TABLE_SIZE] ={  {HFTC_GMAC_HOST0_CONTROL, HFTC_GMAC_SYN_MAC_ADDR0_LO,     0x80000000},  {HFTC_GMAC_HOST0_CONTROL, HFTC_GMAC_SYN_MAC_ADDR0_HI,     0x00000001},  {HFTC_GMAC_HOST0_CONTROL, HFTC_GMAC_SYN_MAC_FRAME_FILTER, FILTER_INVERSE},  {HFTC_GMAC_NET0_CONTROL,  HFTC_GMAC_SYN_MAC_FRAME_FILTER, FILTER_PERFECT},  {HFTC_GMAC_HOST0_CONTROL, HFTC_GMAC_SYN_MAC_CONFIG,       CONFIG_ENABLE},  {HFTC_GMAC_NET0_CONTROL,  HFTC_GMAC_SYN_MAC_CONFIG,       CONFIG_ENABLE},  {HFTC_GMAC_HOST1_CONTROL, HFTC_GMAC_SYN_MAC_ADDR0_LO,     0x80000000},  {HFTC_GMAC_HOST1_CONTROL, HFTC_GMAC_SYN_MAC_ADDR0_HI,     0x00000001},  {HFTC_GMAC_HOST1_CONTROL, HFTC_GMAC_SYN_MAC_FRAME_FILTER, FILTER_INVERSE},  {HFTC_GMAC_NET1_CONTROL,  HFTC_GMAC_SYN_MAC_FRAME_FILTER, FILTER_PERFECT},  {HFTC_GMAC_NET1_CONTROL,  HFTC_GMAC_SYN_MAC_CONFIG,       CONFIG_ENABLE},  {HFTC_GMAC_HOST1_CONTROL, HFTC_GMAC_SYN_MAC_CONFIG,       CONFIG_ENABLE}};/*   This table is used to map a "slot" where we append a GMAC address in to   the MAC filtering table into the register pair used for the   HFTC_WriteGMACRegister calls into the API.*/static gmac_filtering_t gmac_filter_table[] ={   {HFTC_GMAC_SYN_MAC_ADDR0_LO, HFTC_GMAC_SYN_MAC_ADDR0_HI},   {HFTC_GMAC_SYN_MAC_ADDR1_LO, HFTC_GMAC_SYN_MAC_ADDR1_HI},   {HFTC_GMAC_SYN_MAC_ADDR2_LO, HFTC_GMAC_SYN_MAC_ADDR2_HI},   {HFTC_GMAC_SYN_MAC_ADDR3_LO, HFTC_GMAC_SYN_MAC_ADDR3_HI},   {HFTC_GMAC_SYN_MAC_ADDR4_LO, HFTC_GMAC_SYN_MAC_ADDR4_HI},   {HFTC_GMAC_SYN_MAC_ADDR5_LO, HFTC_GMAC_SYN_MAC_ADDR5_HI},   {HFTC_GMAC_SYN_MAC_ADDR6_LO, HFTC_GMAC_SYN_MAC_ADDR6_HI},   {HFTC_GMAC_SYN_MAC_ADDR7_LO, HFTC_GMAC_SYN_MAC_ADDR7_HI},   {HFTC_GMAC_SYN_MAC_ADDR8_LO, HFTC_GMAC_SYN_MAC_ADDR8_HI},   {HFTC_GMAC_SYN_MAC_ADDR9_LO, HFTC_GMAC_SYN_MAC_ADDR9_HI},   {HFTC_GMAC_SYN_MAC_ADDR10_LO, HFTC_GMAC_SYN_MAC_ADDR10_HI},   {HFTC_GMAC_SYN_MAC_ADDR11_LO, HFTC_GMAC_SYN_MAC_ADDR11_HI},   {HFTC_GMAC_SYN_MAC_ADDR12_LO, HFTC_GMAC_SYN_MAC_ADDR12_HI},   {HFTC_GMAC_SYN_MAC_ADDR13_LO, HFTC_GMAC_SYN_MAC_ADDR13_HI},   {HFTC_GMAC_SYN_MAC_ADDR14_LO, HFTC_GMAC_SYN_MAC_ADDR14_HI},   {HFTC_GMAC_SYN_MAC_ADDR15_LO, HFTC_GMAC_SYN_MAC_ADDR15_HI}};/*   This is the size of the above table.  It is the number of pairs.*/#define NUM_SYN_MAC_ADDRESS_PAIRS       \        (sizeof(gmac_filter_table)/sizeof(gmac_filtering_t))/*------------------------------------* * Implementation *------------------------------------*//*----------------------------------------------------------------------------* * findParameterValue *----------------------------------------------------------------------------* * @ingroup startup * @brief Find the value of the given parameter in the configparams data. * * @param configParams_p       RO: configparams data. * @param parameter             RO: Parameter to find. * @param value_pp              WO: Pointer to pointer value (gets filled in) * * @par Externals: * * @return *    HFTC_STATUS_OK            Parsing ok, parameter found. * * @par Errors: *    HFTC_NOT_FOUND            Parsing problem, parameter not found. * * @par Locks: *    None. * * @par Assumptions: *    Assumes valid input (configparams file is good, parameter is good) * *----------------------------------------------------------------------------*/staticHFTC_Status_t findParameterValue(HFTC_ConfigParameters_t     *configParams_p,                                 HFTC_Parameter_t             parameter,                                 HFTC_ConfigParameterValue_t **value_pp){   HFTC_Status_t        status = HFTC_NOT_FOUND;   uint32_t             i;   do   {      for (i = 0; i < HFTC_CONFIG_PARAMETER_TABLE_SIZE; i++)      {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
极品少妇一区二区| 欧美一区二区三区不卡| 国产精品视频观看| 欧美大片在线观看一区| 国产成人综合在线| 久久99精品久久久久久国产越南| 久久久久久9999| 精品国产免费一区二区三区四区 | 国产精品另类一区| 日韩欧美一二三区| 9191国产精品| 91精品国产综合久久久蜜臀图片| 国产一本一道久久香蕉| 九色综合国产一区二区三区| 另类小说视频一区二区| 麻豆一区二区三区| 久久97超碰色| 国产福利精品导航| 成人h版在线观看| 色综合久久88色综合天天6 | 亚洲卡通欧美制服中文| 国产精品国产三级国产普通话99 | 色综合久久久久久久久久久| av亚洲精华国产精华精| 日本va欧美va精品发布| 亚洲三级久久久| 一区二区三区四区不卡在线| 一区二区三区中文字幕电影| 一区二区三区.www| 国产精品国产馆在线真实露脸 | 五月婷婷色综合| 亚洲午夜精品在线| 日韩精品一二三区| 国产在线一区观看| 国产乱子轮精品视频| 99热精品一区二区| 在线观看91视频| 91精品国产综合久久精品麻豆 | 精品国内二区三区| 欧美色图激情小说| 精品卡一卡二卡三卡四在线| 国产精品毛片无遮挡高清| 精品国产一区久久| 国产精品无码永久免费888| 一区二区三区 在线观看视频| 国产精品丝袜久久久久久app| 精品国产亚洲在线| 亚洲视频狠狠干| 奇米精品一区二区三区四区 | 中文一区在线播放| 亚洲国产一区二区三区青草影视| 中文字幕欧美日本乱码一线二线 | 欧美日韩精品免费| 久久午夜电影网| 最新久久zyz资源站| 日韩精品电影在线观看| 婷婷一区二区三区| 成人免费精品视频| 欧美一区二区观看视频| 国产精品福利一区二区| 亚洲国产精品久久久久秋霞影院| 亚洲成人一区二区在线观看| 国产伦精品一区二区三区在线观看| 蜜桃视频免费观看一区| 久久国产精品一区二区| 欧美午夜精品免费| 中文字幕第一区综合| 伦理电影国产精品| 在线观看视频91| 欧美色成人综合| 欧美高清一级片在线观看| 日韩**一区毛片| 久久99精品久久只有精品| 在线视频国内自拍亚洲视频| 亚洲国产成人午夜在线一区| 精品一区免费av| 国产老妇另类xxxxx| 91精品国产综合久久久久久久久久| 日韩欧美的一区二区| 亚洲1区2区3区4区| 91女人视频在线观看| 国产欧美一区二区精品秋霞影院| 国产精品蜜臀在线观看| 另类中文字幕网| 精品久久久久久久久久久久包黑料| 国产日产精品一区| 日本三级韩国三级欧美三级| 欧美中文字幕一区二区三区亚洲| 日韩午夜三级在线| 亚洲制服丝袜av| 91精品福利视频| 亚洲日本在线天堂| 一本到不卡免费一区二区| 国产免费成人在线视频| 国产在线视频精品一区| 91丝袜高跟美女视频| 欧美极品aⅴ影院| 不卡的av网站| 亚洲伦理在线精品| 91久久精品一区二区二区| 亚洲黄色尤物视频| 欧美无砖专区一中文字| 久久精品日产第一区二区三区高清版| 中文字幕一区二区三区在线不卡| 日韩av一区二区在线影视| 日韩一区二区视频| 精品一区免费av| 欧美吞精做爰啪啪高潮| 午夜伦理一区二区| 欧美一区二区精品久久911| 中文字幕综合网| 欧美亚一区二区| 美女视频一区二区三区| 久久精品人人爽人人爽| 成人福利在线看| 一区二区三区中文免费| 欧美精品在线视频| 全国精品久久少妇| 欧美午夜片在线观看| 三级欧美韩日大片在线看| 色婷婷av一区| 免费在线观看日韩欧美| 欧美性生活一区| 美女视频网站久久| 国产精品久99| 制服丝袜一区二区三区| 东方aⅴ免费观看久久av| 亚洲成人福利片| 欧美精品一区在线观看| 97久久精品人人澡人人爽| 国产精品三级av| 成人精品小蝌蚪| 日韩精品五月天| 亚洲欧洲美洲综合色网| 91美女在线视频| 国产伦精品一区二区三区视频青涩| 日韩一区和二区| 色综合久久久网| 亚洲最大成人综合| 精品国产乱码久久久久久影片| 日本亚洲电影天堂| 亚洲色图丝袜美腿| 亚洲精品在线观| 欧美日韩国产片| 日本亚洲最大的色成网站www| 日韩视频免费观看高清完整版| 热久久免费视频| 婷婷久久综合九色综合绿巨人| 95精品视频在线| 久久精品国产精品亚洲综合| 亚洲视频在线一区| 337p粉嫩大胆色噜噜噜噜亚洲| 国产在线精品不卡| 中文字幕国产一区二区| 91精品国产91久久综合桃花 | 欧美一级片在线| 91免费版在线| voyeur盗摄精品| 亚洲精品欧美在线| 国产精品理伦片| 国产女人水真多18毛片18精品视频 | 久99久精品视频免费观看| 亚洲激情六月丁香| 中文字幕一区日韩精品欧美| 精品99999| 一本一道综合狠狠老| 粉嫩嫩av羞羞动漫久久久| 久久精品999| 日韩精品91亚洲二区在线观看 | 色综合久久天天| 波多野结衣的一区二区三区| 韩国v欧美v亚洲v日本v| 麻豆传媒一区二区三区| 日本一不卡视频| 日韩在线一区二区三区| 视频一区视频二区在线观看| 亚洲午夜成aⅴ人片| 亚洲午夜影视影院在线观看| 精品国产污污免费网站入口 | 亚洲欧美另类综合偷拍| 国产精品不卡一区| 欧美成人欧美edvon| 精品国产乱码久久| 亚洲国产视频一区| 亚洲第一久久影院| 亚洲一区二区三区在线播放| 一区二区三区视频在线看| 亚洲亚洲人成综合网络| 欧美高清在线一区| 亚洲欧美一区二区视频| 亚洲女厕所小便bbb| 亚洲国产欧美日韩另类综合| 日韩欧美国产一二三区| 久久在线观看免费| 欧美精品一级二级三级| 欧美一区二区免费视频| 欧美日韩一区视频| 日韩欧美国产一区二区三区| 久久久国产午夜精品| 欧美色综合网站|