phyconfig.h (1287B)
1 /* 2 * 3 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 4 * 5 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 6 * 7 * This file defines PHY configuration modes. 8 * 9 * Its contents are not used directly by applications; it is used only 10 * by header files of parent APIs which need to define port modes. 11 */ 12 13 #ifndef _SHR_PHYCONFIG_H 14 #define _SHR_PHYCONFIG_H 15 16 #include <shared/port.h> 17 #include <shared/portmode.h> 18 #include <shared/port_ability.h> 19 20 /* 21 * Structure: 22 * _shr_phy_config_t 23 * Purpose: 24 * Defines the operating mode of a PHY. 25 */ 26 27 typedef struct _shr_phy_config_s { 28 int enable; 29 int preferred; 30 int autoneg_enable; 31 _shr_port_mode_t autoneg_advert; 32 _shr_port_ability_t advert_ability; 33 int force_speed; 34 int force_duplex; 35 int master; 36 _shr_port_mdix_t mdix; 37 } _shr_phy_config_t; 38 39 typedef int (*_shr_port_phy_reset_cb_t)(int unit, _shr_port_t port, 40 void *user_data); 41 42 typedef void (*_shr_port_medium_status_cb_t)(int unit, int port, 43 _shr_port_medium_t medium, 44 void *user_arg); 45 46 #endif /* !_SHR_PHYCONFIG_H */