]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/cxgb3/common.h
cxgb3 - Limit multiqueue setting to msi-x
[mv-sheeva.git] / drivers / net / cxgb3 / common.h
index d1b6b1e62f417c117c2c8af1e79c332eafa4c50d..e312d315a42d4e5ded041e3c1d8c717ae6ae02a6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005-2007 Chelsio, Inc. All rights reserved.
+ * Copyright (c) 2005-2008 Chelsio, Inc. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -547,7 +547,19 @@ enum {
 /* PHY interrupt types */
 enum {
        cphy_cause_link_change = 1,
-       cphy_cause_fifo_error = 2
+       cphy_cause_fifo_error = 2,
+       cphy_cause_module_change = 4,
+};
+
+/* PHY module types */
+enum {
+       phy_modtype_none,
+       phy_modtype_sr,
+       phy_modtype_lr,
+       phy_modtype_lrm,
+       phy_modtype_twinax,
+       phy_modtype_twinax_long,
+       phy_modtype_unknown
 };
 
 /* PHY operations */
@@ -572,7 +584,9 @@ struct cphy_ops {
 
 /* A PHY instance */
 struct cphy {
-       int addr;                       /* PHY address */
+       u8 addr;                        /* PHY address */
+       u8 modtype;                     /* PHY module type */
+       short priv;                     /* scratch pad */
        unsigned int caps;              /* PHY capabilities */
        struct adapter *adapter;        /* associated adapter */
        const char *desc;               /* PHY description */
@@ -677,6 +691,7 @@ int t3_mdio_change_bits(struct cphy *phy, int mmd, int reg, unsigned int clear,
                        unsigned int set);
 int t3_phy_reset(struct cphy *phy, int mmd, int wait);
 int t3_phy_advertise(struct cphy *phy, unsigned int advert);
+int t3_phy_advertise_fiber(struct cphy *phy, unsigned int advert);
 int t3_set_phy_speed_duplex(struct cphy *phy, int speed, int duplex);
 int t3_phy_lasi_intr_enable(struct cphy *phy);
 int t3_phy_lasi_intr_disable(struct cphy *phy);
@@ -794,6 +809,8 @@ int t3_ael1002_phy_prep(struct cphy *phy, struct adapter *adapter,
                        int phy_addr, const struct mdio_ops *mdio_ops);
 int t3_ael1006_phy_prep(struct cphy *phy, struct adapter *adapter,
                        int phy_addr, const struct mdio_ops *mdio_ops);
+int t3_ael2005_phy_prep(struct cphy *phy, struct adapter *adapter,
+                       int phy_addr, const struct mdio_ops *mdio_ops);
 int t3_qt2045_phy_prep(struct cphy *phy, struct adapter *adapter, int phy_addr,
                       const struct mdio_ops *mdio_ops);
 int t3_xaui_direct_phy_prep(struct cphy *phy, struct adapter *adapter,