Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*
0003  * Copyright (c) 2014-2015 Hisilicon Limited.
0004  */
0005 
0006 #ifndef _HNS_GMAC_H
0007 #define _HNS_GMAC_H
0008 
0009 #include "hns_dsaf_mac.h"
0010 
0011 enum hns_port_mode {
0012     GMAC_10M_MII = 0,
0013     GMAC_100M_MII,
0014     GMAC_1000M_GMII,
0015     GMAC_10M_RGMII,
0016     GMAC_100M_RGMII,
0017     GMAC_1000M_RGMII,
0018     GMAC_10M_SGMII,
0019     GMAC_100M_SGMII,
0020     GMAC_1000M_SGMII,
0021     GMAC_10000M_SGMII   /* 10GE */
0022 };
0023 
0024 enum hns_gmac_duplex_mdoe {
0025     GMAC_HALF_DUPLEX_MODE = 0,
0026     GMAC_FULL_DUPLEX_MODE
0027 };
0028 
0029 struct hns_gmac_port_mode_cfg {
0030     enum hns_port_mode port_mode;
0031     u32 max_frm_size;
0032     u32 short_runts_thr;
0033     u32 pad_enable;
0034     u32 crc_add;
0035     u32 an_enable;  /*auto-nego enable  */
0036     u32 runt_pkt_en;
0037     u32 strip_pad_en;
0038 };
0039 
0040 #define ETH_GMAC_DUMP_NUM       96
0041 #endif              /* __HNS_GMAC_H__ */