2008-04-27 15:55:59 +04:00
/****************************************************************************
2013-08-30 02:32:48 +04:00
* Driver for Solarflare network controllers and boards
2011-02-25 03:01:34 +03:00
* Copyright 2007 - 2010 Solarflare Communications Inc .
2008-04-27 15:55:59 +04:00
*
* This program is free software ; you can redistribute it and / or modify it
* under the terms of the GNU General Public License version 2 as published
* by the Free Software Foundation , incorporated herein by reference .
*/
# ifndef EFX_PHY_H
# define EFX_PHY_H
/****************************************************************************
2010-09-22 14:00:11 +04:00
* 10 Xpress ( SFX7101 ) PHY
2008-04-27 15:55:59 +04:00
*/
2011-04-14 09:50:12 +04:00
extern const struct efx_phy_operations falcon_sfx7101_phy_ops ;
2008-04-27 15:55:59 +04:00
2013-09-23 22:37:59 +04:00
void tenxpress_set_id_led ( struct efx_nic * efx , enum efx_led_mode mode ) ;
2008-04-27 15:55:59 +04:00
/****************************************************************************
2009-10-23 12:33:42 +04:00
* AMCC / Quake QT202x PHYs
2008-04-27 15:55:59 +04:00
*/
2011-04-14 09:50:12 +04:00
extern const struct efx_phy_operations falcon_qt202x_phy_ops ;
2008-04-27 15:55:59 +04:00
2009-02-27 16:07:33 +03:00
/* These PHYs provide various H/W control states for LEDs */
2008-04-27 15:55:59 +04:00
# define QUAKE_LED_LINK_INVAL (0)
# define QUAKE_LED_LINK_STAT (1)
# define QUAKE_LED_LINK_ACT (2)
# define QUAKE_LED_LINK_ACTSTAT (3)
# define QUAKE_LED_OFF (4)
# define QUAKE_LED_ON (5)
# define QUAKE_LED_LINK_INPUT (6) /* Pin is an input. */
/* What link the LED tracks */
# define QUAKE_LED_TXLINK (0)
# define QUAKE_LED_RXLINK (8)
2013-09-23 22:37:59 +04:00
void falcon_qt202x_set_led ( struct efx_nic * p , int led , int state ) ;
2008-04-27 15:55:59 +04:00
2010-09-22 14:00:47 +04:00
/****************************************************************************
* Transwitch CX4 retimer
*/
2011-04-14 09:50:12 +04:00
extern const struct efx_phy_operations falcon_txc_phy_ops ;
2010-09-22 14:00:47 +04:00
# define TXC_GPIO_DIR_INPUT 0
# define TXC_GPIO_DIR_OUTPUT 1
2013-09-23 22:37:59 +04:00
void falcon_txc_set_gpio_dir ( struct efx_nic * efx , int pin , int dir ) ;
void falcon_txc_set_gpio_val ( struct efx_nic * efx , int pin , int val ) ;
2010-09-22 14:00:47 +04:00
2008-04-27 15:55:59 +04:00
# endif