/**************************************************************************** * Driver for Solarflare Solarstorm network controllers and boards * Copyright 2007-2008 Solarflare Communications Inc. * * 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 /**************************************************************************** * 10Xpress (SFX7101 and SFT9001) PHYs */ extern struct efx_phy_operations falcon_sfx7101_phy_ops; extern struct efx_phy_operations falcon_sft9001_phy_ops; extern void tenxpress_phy_blink(struct efx_nic *efx, bool blink); /* Wait for the PHY to boot. Return 0 on success, -EINVAL if the PHY failed * to boot due to corrupt flash, or some other negative error code. */ extern int sft9001_wait_boot(struct efx_nic *efx); /**************************************************************************** * AMCC/Quake QT20xx PHYs */ extern struct efx_phy_operations falcon_xfp_phy_ops; /* These PHYs provide various H/W control states for LEDs */ #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) extern void xfp_set_led(struct efx_nic *p, int led, int state); #endif