P2020RDB Added support of Vitesse PHYs VSC8641(RGMII) and VSC8221(SGMII)
authorPoonam Aggrwal <poonam.aggrwal@freescale.com>
Thu, 2 Jul 2009 10:45:13 +0000 (16:15 +0530)
committerBen Warren <biggerbadderben@gmail.com>
Thu, 23 Jul 2009 05:53:44 +0000 (22:53 -0700)
These PHYs are on P2020RDB platform.

Also revamped Freescale copyright message in drivers/net/tsec.c.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
drivers/net/tsec.c

index 5dc05e5a02e2d42edde471668a93265e24f05918..29902d315e24f38ebecf862845850e99aaef3476 100644 (file)
@@ -5,7 +5,7 @@
  * terms of the GNU Public License, Version 2, incorporated
  * herein by reference.
  *
- * Copyright 2004, 2007 Freescale Semiconductor, Inc.
+ * Copyright (C) 2004-2009 Freescale Semiconductor, Inc. All rights reserved.
  * (C) Copyright 2003, Motorola, Inc.
  * author Andy Fleming
  *
@@ -1429,6 +1429,54 @@ struct phy_info phy_info_VSC8244 = {
                           },
 };
 
+struct phy_info phy_info_VSC8641 = {
+       0x7043,
+       "Vitesse VSC8641",
+       4,
+       (struct phy_cmd[]){     /* config */
+                          /* Configure some basic stuff */
+                          {MIIM_CONTROL, MIIM_CONTROL_INIT, &mii_cr_init},
+                          {miim_end,}
+                          },
+       (struct phy_cmd[]){     /* startup */
+                          /* Read the Status (2x to make sure link is right) */
+                          {MIIM_STATUS, miim_read, NULL},
+                          /* Auto-negotiate */
+                          {MIIM_STATUS, miim_read, &mii_parse_sr},
+                          /* Read the status */
+                          {MIIM_VSC8244_AUX_CONSTAT, miim_read,
+                           &mii_parse_vsc8244},
+                          {miim_end,}
+                          },
+       (struct phy_cmd[]){     /* shutdown */
+                          {miim_end,}
+                          },
+};
+
+struct phy_info phy_info_VSC8221 = {
+       0xfc55,
+       "Vitesse VSC8221",
+       4,
+       (struct phy_cmd[]){     /* config */
+                          /* Configure some basic stuff */
+                          {MIIM_CONTROL, MIIM_CONTROL_INIT, &mii_cr_init},
+                          {miim_end,}
+                          },
+       (struct phy_cmd[]){     /* startup */
+                          /* Read the Status (2x to make sure link is right) */
+                          {MIIM_STATUS, miim_read, NULL},
+                          /* Auto-negotiate */
+                          {MIIM_STATUS, miim_read, &mii_parse_sr},
+                          /* Read the status */
+                          {MIIM_VSC8244_AUX_CONSTAT, miim_read,
+                           &mii_parse_vsc8244},
+                          {miim_end,}
+                          },
+       (struct phy_cmd[]){     /* shutdown */
+                          {miim_end,}
+                          },
+};
+
 struct phy_info phy_info_VSC8601 = {
                0x00007042,
                "Vitesse VSC8601",
@@ -1666,6 +1714,8 @@ struct phy_info *phy_info[] = {
        &phy_info_VSC8211,
        &phy_info_VSC8244,
        &phy_info_VSC8601,
+       &phy_info_VSC8641,
+       &phy_info_VSC8221,
        &phy_info_dp83865,
        &phy_info_rtl8211b,
        &phy_info_generic,      /* must be last; has ID 0 and 32 bit mask */