bcmenetrxh.h
上传用户:yuanda199
上传日期:2022-06-26
资源大小:412k
文件大小:2k
源码类别:

VxWorks

开发平台:

C/C++

  1. /*
  2.     EXTERNAL SOURCE RELEASE on 12/03/2001 3.0 - Subject to change without notice.
  3. */
  4. /*
  5.     Copyright 2001, Broadcom Corporation
  6.     All Rights Reserved.
  7.     
  8.     This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
  9.     the contents of this file may not be disclosed to third parties, copied or
  10.     duplicated in any form, in whole or in part, without the prior written
  11.     permission of Broadcom Corporation.
  12. */
  13. /*
  14.  * Hardware-specific Receive Data Header for the
  15.  * Broadcom Home Networking Division
  16.  * BCM44XX and BCM47XX 10/100 Mbps Ethernet cores.
  17.  *
  18.  * Copyright(c) 2001 Broadcom Corporation
  19.  * $Id: bcmenetrxh.h,v 1.1 Broadcom SDK $
  20.  */
  21. #ifndef _bcmenetrxh_h_
  22. #define _bcmenetrxh_h_
  23. /*
  24.  * The Ethernet MAC core returns an 8-byte Receive Frame Data Header
  25.  * with every frame consisting of
  26.  * 16bits of frame length, followed by
  27.  * 16bits of EMAC rx descriptor info, followed by 32bits of undefined.
  28.  */
  29. typedef volatile struct {
  30. uint16 len;
  31. uint16 flags;
  32. uint16 pad[12];
  33. } bcmenetrxh_t;
  34. #define RXHDR_LEN 28
  35. #define RXF_L ((uint16)1 << 11) /* last buffer in a frame */
  36. #define RXF_MISS ((uint16)1 << 7) /* received due to promisc mode */
  37. #define RXF_BRDCAST ((uint16)1 << 6) /* dest is broadcast address */
  38. #define RXF_MULT ((uint16)1 << 5) /* dest is multicast address */
  39. #define RXF_LG ((uint16)1 << 4) /* frame length > rxmaxlength */
  40. #define RXF_NO ((uint16)1 << 3) /* odd number of nibbles */
  41. #define RXF_RXER ((uint16)1 << 2) /* receive symbol error */
  42. #define RXF_CRC ((uint16)1 << 1) /* crc error */
  43. #define RXF_OV ((uint16)1 << 0) /* fifo overflow */
  44. #endif /* _bcmenetrxh_h_ */