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

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

?? skaddr.h

?? 基于華恒2410板子的uboot代碼
?? H
字號:
/****************************************************************************** * * Name:	skaddr.h * Project:	GEnesis, PCI Gigabit Ethernet Adapter * Version:	$Revision: 1.26 $ * Date:	$Date: 2002/11/15 07:24:42 $ * Purpose:	Header file for Address Management (MC, UC, Prom). * ******************************************************************************//****************************************************************************** * *	(C)Copyright 1998-2001 SysKonnect GmbH. * *	This program is free software; you can redistribute it and/or modify *	it under the terms of the GNU General Public License as published by *	the Free Software Foundation; either version 2 of the License, or *	(at your option) any later version. * *	The information in this file is provided "AS IS" without warranty. * ******************************************************************************//****************************************************************************** * * History: * *	$Log: skaddr.h,v $ *	Revision 1.26  2002/11/15 07:24:42  tschilli *	SK_ADDR_EQUAL macro fixed. * *	Revision 1.25  2002/06/10 13:55:18  tschilli *	Changes for handling YUKON. *	All changes are internally and not visible to the programmer *	using this module. * *	Revision 1.24  2001/01/22 13:41:34  rassmann *	Supporting two nets on dual-port adapters. * *	Revision 1.23  2000/08/10 11:27:50  rassmann *	Editorial changes. *	Preserving 32-bit alignment in structs for the adapter context. * *	Revision 1.22  2000/08/07 11:10:40  rassmann *	Editorial changes. * *	Revision 1.21  2000/05/04 09:39:59  rassmann *	Editorial changes. *	Corrected multicast address hashing. * *	Revision 1.20  1999/11/22 13:46:14  cgoos *	Changed license header to GPL. *	Allowing overwrite for SK_ADDR_EQUAL. * *	Revision 1.19  1999/05/28 10:56:07  rassmann *	Editorial changes. * *	Revision 1.18  1999/04/06 17:22:04  rassmann *	Added private "ActivePort". * *	Revision 1.17  1999/01/14 16:18:19  rassmann *	Corrected multicast initialization. * *	Revision 1.16  1999/01/04 10:30:36  rassmann *	SkAddrOverride only possible after SK_INIT_IO phase. * *	Revision 1.15  1998/12/29 13:13:11  rassmann *	An address override is now preserved in the SK_INIT_IO phase. *	All functions return an int now. *	Extended parameter checking. * *	Revision 1.14  1998/11/24 12:39:45  rassmann *	Reserved multicast entry for BPDU address. *	13 multicast entries left for protocol. * *	Revision 1.13  1998/11/13 17:24:32  rassmann *	Changed return value of SkAddrOverride to int. * *	Revision 1.12  1998/11/13 16:56:19  rassmann *	Added macro SK_ADDR_COMPARE. *	Changed return type of SkAddrOverride to SK_BOOL. * *	Revision 1.11  1998/10/28 18:16:35  rassmann *	Avoiding I/Os before SK_INIT_RUN level. *	Aligning InexactFilter. * *	Revision 1.10  1998/10/22 11:39:10  rassmann *	Corrected signed/unsigned mismatches. * *	Revision 1.9  1998/10/15 15:15:49  rassmann *	Changed Flags Parameters from SK_U8 to int. *	Checked with lint. * *	Revision 1.8  1998/09/24 19:15:12  rassmann *	Code cleanup. * *	Revision 1.7  1998/09/18 20:22:13  rassmann *	Added HW access. * *	Revision 1.6  1998/09/04 19:40:20  rassmann *	Interface enhancements. * *	Revision 1.5  1998/09/04 12:40:57  rassmann *	Interface cleanup. * *	Revision 1.4  1998/09/04 12:14:13  rassmann *	Interface cleanup. * *	Revision 1.3  1998/09/02 16:56:40  rassmann *	Updated interface. * *	Revision 1.2  1998/08/27 14:26:09  rassmann *	Updated interface. * *	Revision 1.1  1998/08/21 08:31:08  rassmann *	First public version. * ******************************************************************************//****************************************************************************** * * Description: * * This module is intended to manage multicast addresses and promiscuous mode * on GEnesis adapters. * * Include File Hierarchy: * *	"skdrv1st.h" *	... *	"sktypes.h" *	"skqueue.h" *	"skaddr.h" *	... *	"skdrv2nd.h" * ******************************************************************************/#ifndef __INC_SKADDR_H#define __INC_SKADDR_H#ifdef __cplusplus#error C++ is not yet supported.extern "C" {#endif	/* cplusplus *//* defines ********************************************************************/#define SK_MAC_ADDR_LEN				6	/* Length of MAC address. */#define	SK_MAX_ADDRS				14	/* #Addrs for exact match. *//* ----- Common return values ----- */#define SK_ADDR_SUCCESS				0	/* Function returned successfully. */#define SK_ADDR_ILLEGAL_PORT			100	/* Port number too high. */#define SK_ADDR_TOO_EARLY			101	/* Function called too early. *//* ----- Clear/Add flag bits ----- */#define SK_ADDR_PERMANENT			1	/* RLMT Address *//* ----- Additional Clear flag bits ----- */#define SK_MC_SW_ONLY				2	/* Do not update HW when clearing. *//* ----- Override flag bits ----- */#define SK_ADDR_LOGICAL_ADDRESS		0#define SK_ADDR_VIRTUAL_ADDRESS		(SK_ADDR_LOGICAL_ADDRESS)	/* old */#define SK_ADDR_PHYSICAL_ADDRESS	1#define SK_ADDR_CLEAR_LOGICAL		2#define SK_ADDR_SET_LOGICAL			4/* ----- Override return values ----- */#define SK_ADDR_OVERRIDE_SUCCESS	(SK_ADDR_SUCCESS)#define SK_ADDR_DUPLICATE_ADDRESS	1#define SK_ADDR_MULTICAST_ADDRESS	2/* ----- Partitioning of excact match table ----- */#define SK_ADDR_EXACT_MATCHES		16	/* #Exact match entries. */#define SK_ADDR_FIRST_MATCH_RLMT	1#define SK_ADDR_LAST_MATCH_RLMT		2#define SK_ADDR_FIRST_MATCH_DRV		3#define SK_ADDR_LAST_MATCH_DRV		(SK_ADDR_EXACT_MATCHES - 1)/* ----- SkAddrMcAdd/SkAddrMcUpdate return values ----- */#define SK_MC_FILTERING_EXACT		0	/* Exact filtering. */#define SK_MC_FILTERING_INEXACT		1	/* Inexact filtering. *//* ----- Additional SkAddrMcAdd return values ----- */#define SK_MC_ILLEGAL_ADDRESS		2	/* Illegal address. */#define SK_MC_ILLEGAL_PORT			3	/* Illegal port (not the active one). */#define SK_MC_RLMT_OVERFLOW			4	/* Too many RLMT mc addresses. *//* Promiscuous mode bits ----- */#define SK_PROM_MODE_NONE			0	/* Normal receive. */#define SK_PROM_MODE_LLC			1	/* Receive all LLC frames. */#define SK_PROM_MODE_ALL_MC			2	/* Receive all multicast frames. *//* #define SK_PROM_MODE_NON_LLC		4 */	/* Receive all non-LLC frames. *//* Macros */#if 0#ifndef SK_ADDR_EQUAL/* * "&" instead of "&&" allows better optimization on IA-64. * The replacement is safe here, as all bytes exist. */#ifndef SK_ADDR_DWORD_COMPARE#define SK_ADDR_EQUAL(A1,A2)	( \	(((SK_U8 *)(A1))[5] == ((SK_U8 *)(A2))[5]) & \	(((SK_U8 *)(A1))[4] == ((SK_U8 *)(A2))[4]) & \	(((SK_U8 *)(A1))[3] == ((SK_U8 *)(A2))[3]) & \	(((SK_U8 *)(A1))[2] == ((SK_U8 *)(A2))[2]) & \	(((SK_U8 *)(A1))[1] == ((SK_U8 *)(A2))[1]) & \	(((SK_U8 *)(A1))[0] == ((SK_U8 *)(A2))[0]))#else	/* SK_ADDR_DWORD_COMPARE */#define SK_ADDR_EQUAL(A1,A2)	( \	(*(SK_U32 *)&(((SK_U8 *)(A1))[2]) == *(SK_U32 *)&(((SK_U8 *)(A2))[2])) & \	(*(SK_U32 *)&(((SK_U8 *)(A1))[0]) == *(SK_U32 *)&(((SK_U8 *)(A2))[0])))#endif	/* SK_ADDR_DWORD_COMPARE */#endif	/* SK_ADDR_EQUAL */#endif /* 0 */#ifndef SK_ADDR_EQUAL#ifndef SK_ADDR_DWORD_COMPARE#define SK_ADDR_EQUAL(A1,A2)	( \	(((SK_U8 *)(A1))[5] == ((SK_U8 *)(A2))[5]) & \	(((SK_U8 *)(A1))[4] == ((SK_U8 *)(A2))[4]) & \	(((SK_U8 *)(A1))[3] == ((SK_U8 *)(A2))[3]) & \	(((SK_U8 *)(A1))[2] == ((SK_U8 *)(A2))[2]) & \	(((SK_U8 *)(A1))[1] == ((SK_U8 *)(A2))[1]) & \	(((SK_U8 *)(A1))[0] == ((SK_U8 *)(A2))[0]))#else	/* SK_ADDR_DWORD_COMPARE */#define SK_ADDR_EQUAL(A1,A2)	( \	(*(SK_U16 *)&(((SK_U8 *)(A1))[4]) == *(SK_U16 *)&(((SK_U8 *)(A2))[4])) && \	(*(SK_U32 *)&(((SK_U8 *)(A1))[0]) == *(SK_U32 *)&(((SK_U8 *)(A2))[0])))#endif	/* SK_ADDR_DWORD_COMPARE */#endif	/* SK_ADDR_EQUAL *//* typedefs *******************************************************************/typedef struct s_MacAddr {	SK_U8	a[SK_MAC_ADDR_LEN];} SK_MAC_ADDR;/* SK_FILTER is used to ensure alignment of the filter. */typedef union s_InexactFilter {	SK_U8	Bytes[8];	SK_U64	Val;	/* Dummy entry for alignment only. */} SK_FILTER64;typedef struct s_AddrNet SK_ADDR_NET;typedef struct s_AddrPort {/* ----- Public part (read-only) ----- */	SK_MAC_ADDR	CurrentMacAddress;	/* Current physical MAC Address. */	SK_MAC_ADDR	PermanentMacAddress;	/* Permanent physical MAC Address. */	int		PromMode;		/* Promiscuous Mode. *//* ----- Private part ----- */	SK_MAC_ADDR	PreviousMacAddress;	/* Prev. phys. MAC Address. */	SK_BOOL		CurrentMacAddressSet;	/* CurrentMacAddress is set. */	SK_U8		Align01;	SK_U32		FirstExactMatchRlmt;	SK_U32		NextExactMatchRlmt;	SK_U32		FirstExactMatchDrv;	SK_U32		NextExactMatchDrv;	SK_MAC_ADDR	Exact[SK_ADDR_EXACT_MATCHES];	SK_FILTER64	InexactFilter;			/* For 64-bit hash register. */	SK_FILTER64	InexactRlmtFilter;		/* For 64-bit hash register. */	SK_FILTER64	InexactDrvFilter;		/* For 64-bit hash register. */} SK_ADDR_PORT;struct s_AddrNet {/* ----- Public part (read-only) ----- */	SK_MAC_ADDR		CurrentMacAddress;	/* Logical MAC Address. */	SK_MAC_ADDR		PermanentMacAddress;	/* Logical MAC Address. *//* ----- Private part ----- */	SK_U32			ActivePort;		/* View of module ADDR. */	SK_BOOL			CurrentMacAddressSet;	/* CurrentMacAddress is set. */	SK_U8			Align01;	SK_U16			Align02;};typedef struct s_Addr {/* ----- Public part (read-only) ----- */	SK_ADDR_NET		Net[SK_MAX_NETS];	SK_ADDR_PORT	Port[SK_MAX_MACS];/* ----- Private part ----- */} SK_ADDR;/* function prototypes ********************************************************/#ifndef SK_KR_PROTO/* Functions provided by SkAddr *//* ANSI/C++ compliant function prototypes */extern	int	SkAddrInit(	SK_AC	*pAC,	SK_IOC	IoC,	int	Level);extern	int	SkAddrMcClear(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	Flags);extern	int	SkAddrXmacMcClear(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	Flags);extern	int	SkAddrGmacMcClear(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	Flags);extern	int	SkAddrMcAdd(	SK_AC		*pAC,	SK_IOC		IoC,	SK_U32		PortNumber,	SK_MAC_ADDR	*pMc,	int		Flags);extern	int	SkAddrXmacMcAdd(	SK_AC		*pAC,	SK_IOC		IoC,	SK_U32		PortNumber,	SK_MAC_ADDR	*pMc,	int		Flags);extern	int	SkAddrGmacMcAdd(	SK_AC		*pAC,	SK_IOC		IoC,	SK_U32		PortNumber,	SK_MAC_ADDR	*pMc,	int		Flags);extern	int	SkAddrMcUpdate(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber);extern	int	SkAddrXmacMcUpdate(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber);extern	int	SkAddrGmacMcUpdate(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber);extern	int	SkAddrOverride(	SK_AC		*pAC,	SK_IOC		IoC,	SK_U32		PortNumber,	SK_MAC_ADDR	*pNewAddr,	int		Flags);extern	int	SkAddrPromiscuousChange(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	NewPromMode);extern	int	SkAddrXmacPromiscuousChange(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	NewPromMode);extern	int	SkAddrGmacPromiscuousChange(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	PortNumber,	int	NewPromMode);extern	int	SkAddrSwap(	SK_AC	*pAC,	SK_IOC	IoC,	SK_U32	FromPortNumber,	SK_U32	ToPortNumber);#else	/* defined(SK_KR_PROTO)) *//* Non-ANSI/C++ compliant function prototypes */#error KR-style prototypes are not yet provided.#endif	/* defined(SK_KR_PROTO)) */#ifdef __cplusplus}#endif	/* __cplusplus */#endif	/* __INC_SKADDR_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女免费视频一区二区| 高清视频一区二区| 综合自拍亚洲综合图不卡区| 欧美美女视频在线观看| 高清成人在线观看| 蜜臀va亚洲va欧美va天堂| 亚洲精品水蜜桃| 久久综合网色—综合色88| 欧美日本一区二区三区四区 | 亚洲成人三级小说| 日本一区二区免费在线| 日韩一区二区三区视频在线观看| 一本一道久久a久久精品 | 日韩影院在线观看| 18涩涩午夜精品.www| 久久久精品国产免费观看同学| 91精品国产综合久久久蜜臀粉嫩| 91视频观看视频| 成人免费视频国产在线观看| 久久国产精品免费| 免费观看在线综合| 日韩精品亚洲一区二区三区免费| 一区二区在线观看av| 亚洲欧洲一区二区在线播放| 国产亚洲精品免费| 国产亚洲一区字幕| 日韩欧美电影一二三| 在线电影院国产精品| 欧美在线观看一区| 一本久久a久久免费精品不卡| 成人午夜激情在线| 高清国产一区二区三区| 岛国一区二区在线观看| 狠狠色丁香久久婷婷综| 欧美aaa在线| 蜜臀国产一区二区三区在线播放| 婷婷综合久久一区二区三区| 一个色综合av| 亚洲成人一区二区| 日韩专区中文字幕一区二区| 日韩国产高清在线| 毛片不卡一区二区| 国产米奇在线777精品观看| 久久aⅴ国产欧美74aaa| 黑人巨大精品欧美一区| 国产精品综合二区| 成人av免费在线播放| 成人免费毛片aaaaa**| 成人av网在线| 日本道精品一区二区三区| 欧美色网一区二区| 8x福利精品第一导航| 欧美变态凌虐bdsm| 欧美激情综合五月色丁香| 中文字幕中文字幕一区二区| 亚洲激情自拍偷拍| 亚洲成人动漫在线免费观看| 久草中文综合在线| 成人午夜视频网站| 色噜噜夜夜夜综合网| 欧美少妇xxx| 精品久久免费看| 国产欧美一区二区精品性色| 亚洲欧美综合色| 亚洲国产中文字幕| 激情都市一区二区| 不卡一区中文字幕| 欧美裸体bbwbbwbbw| 精品第一国产综合精品aⅴ| 中文久久乱码一区二区| 一区二区免费在线| 精品一区二区三区香蕉蜜桃| yourporn久久国产精品| 97久久超碰国产精品| 欧美高清hd18日本| 久久久不卡网国产精品二区| 亚洲精品va在线观看| 另类人妖一区二区av| 99久久99久久精品免费观看| 91精品国产综合久久蜜臀 | 日韩一区二区在线观看视频| 久久久久久久久久久99999| 亚洲女人的天堂| 久久97超碰色| 色8久久精品久久久久久蜜| 欧美变态tickle挠乳网站| 国产精品白丝在线| 久久精品国产99久久6| 91一区二区在线观看| 欧美成人伊人久久综合网| 亚洲欧洲精品一区二区三区| 欧美a级一区二区| 日本久久精品电影| www国产亚洲精品久久麻豆| 亚洲国产日韩在线一区模特 | 欧美视频三区在线播放| 国产亚洲精品超碰| 午夜久久久久久久久久一区二区| 国产999精品久久久久久| 日韩一级精品视频在线观看| 综合电影一区二区三区 | 精品粉嫩aⅴ一区二区三区四区| 亚洲日本在线看| 国产精品一级在线| 欧美精品久久一区| 亚洲综合小说图片| 成人精品视频一区二区三区尤物| 日韩欧美电影一区| 三级成人在线视频| 在线观看区一区二| 成人欧美一区二区三区小说 | 这里只有精品免费| 亚洲精品ww久久久久久p站| 粉嫩欧美一区二区三区高清影视| 欧美一级电影网站| 天天色天天爱天天射综合| 色先锋久久av资源部| 国产精品视频yy9299一区| 九一久久久久久| 777精品伊人久久久久大香线蕉| 一级中文字幕一区二区| 99国产精品久久久久久久久久久| 久久久久久免费毛片精品| 免播放器亚洲一区| 欧美伦理影视网| 丝袜美腿亚洲一区二区图片| 91一区二区在线观看| 亚洲人亚洲人成电影网站色| 丁香婷婷综合色啪| 国产欧美中文在线| 国产成人在线视频网址| 久久久久九九视频| 国产91富婆露脸刺激对白| 久久嫩草精品久久久精品| 国产米奇在线777精品观看| xf在线a精品一区二区视频网站| 美女看a上一区| 精品伦理精品一区| 精品一区二区三区视频在线观看| 精品少妇一区二区三区在线播放| 三级久久三级久久久| 欧美一级精品大片| 国产在线视频精品一区| 国产婷婷色一区二区三区四区| 国产盗摄一区二区三区| 国产日韩欧美a| 国产精品护士白丝一区av| 在线观看亚洲精品视频| 亚洲自拍偷拍网站| 一本大道久久a久久精二百| 一区二区免费视频| 欧美一区二区三区成人| 激情综合亚洲精品| 欧美国产日本韩| 日本丶国产丶欧美色综合| 性感美女极品91精品| 日韩美女视频一区二区在线观看| 国内不卡的二区三区中文字幕| 国产日韩av一区| 99国产精品久久久久久久久久 | 久久久精品国产99久久精品芒果| 国产高清久久久| 亚洲女厕所小便bbb| 欧美视频完全免费看| 免费看欧美美女黄的网站| 久久美女艺术照精彩视频福利播放| 丁香激情综合国产| 亚洲高清免费观看高清完整版在线观看| 欧美一区午夜视频在线观看| 国产精品夜夜嗨| 亚洲色图制服诱惑| 日韩欧美国产高清| 91网页版在线| 久久国内精品自在自线400部| 国产精品免费免费| 91精品国模一区二区三区| 不卡av在线免费观看| 亚洲小说欧美激情另类| 精品国产sm最大网站免费看| 97aⅴ精品视频一二三区| 日本欧美在线看| 综合在线观看色| 欧美一级在线视频| 99久久精品一区| 看电影不卡的网站| 亚洲男同性视频| 久久日韩粉嫩一区二区三区| 欧美在线三级电影| 国产激情视频一区二区三区欧美 | 亚洲高清不卡在线观看| 久久久99精品久久| 欧美日韩亚洲高清一区二区| 国产91丝袜在线18| 日韩av中文字幕一区二区 | 国产亚洲制服色| 欧美一级免费大片| 欧美性大战久久| 成人av网站免费| 国产伦精品一区二区三区在线观看 | 色美美综合视频|