diff mbox

[U-Boot,1/1] net: phy: micrel: make ksz9021 phy accessible

Message ID 1340309781-8281-1-git-send-email-troy.kisky@boundarydevices.com
State Accepted
Commit cc5f552283eceb08bc614dfb6cfbcdd155be35b0
Headers show

Commit Message

Troy Kisky June 21, 2012, 8:16 p.m. UTC
Micrel accidentally used the same part number
for the KS8721 and KSZ9021. So, both cannot be
in the same build of u-boot. Add a config option
to handle this.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
---
 drivers/net/phy/micrel.c        |   15 +++++++++++++--
 include/configs/mx6qsabrelite.h |    1 +
 2 files changed, 14 insertions(+), 2 deletions(-)

Comments

Vladimir Zapolskiy June 21, 2012, 9:33 p.m. UTC | #1
On 21.06.2012 23:16, Troy Kisky wrote:
> Micrel accidentally used the same part number
> for the KS8721 and KSZ9021. So, both cannot be
> in the same build of u-boot. Add a config option
> to handle this.
>
> Signed-off-by: Troy Kisky<troy.kisky@boundarydevices.com>
> ---
>   drivers/net/phy/micrel.c        |   15 +++++++++++++--
>   include/configs/mx6qsabrelite.h |    1 +
>   2 files changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
> index e3043df..30f3264 100644
> --- a/drivers/net/phy/micrel.c
> +++ b/drivers/net/phy/micrel.c
> @@ -35,6 +35,12 @@ static struct phy_driver KSZ804_driver = {
>   	.shutdown =&genphy_shutdown,
>   };
>
> +#ifndef CONFIG_PHY_MICREL_KSZ9021
> +/*
> + * I can't believe Micrel used the exact same part number
> + * for the KSZ9021
> + * Shame Micrel, Shame!!!!!
> + */
>   static struct phy_driver KS8721_driver = {
>   	.name = "Micrel KS8721BL",
>   	.uid = 0x221610,
> @@ -44,7 +50,9 @@ static struct phy_driver KS8721_driver = {
>   	.startup =&genphy_startup,
>   	.shutdown =&genphy_shutdown,
>   };
> +#endif

Acked-by: Vladimir Zapolskiy <vz@mleia.com>

>
> +#ifdef CONFIG_PHY_MICREL_KSZ9021
>   /* ksz9021 PHY Registers */
>   #define MII_KSZ9021_EXTENDED_CTRL	0x0b
>   #define MII_KSZ9021_EXTENDED_DATAW	0x0c
> @@ -127,12 +135,15 @@ static struct phy_driver ksz9021_driver = {
>   	.startup =&ksz9021_startup,
>   	.shutdown =&genphy_shutdown,
>   };
> +#endif
>
>   int phy_micrel_init(void)
>   {
>   	phy_register(&KSZ804_driver);
> -	phy_register(&KS8721_driver);
> +#ifdef CONFIG_PHY_MICREL_KSZ9021
>   	phy_register(&ksz9021_driver);
> -
> +#else
> +	phy_register(&KS8721_driver);
> +#endif
>   	return 0;
>   }
> diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h
> index feabc05..8623320 100644
> --- a/include/configs/mx6qsabrelite.h
> +++ b/include/configs/mx6qsabrelite.h
> @@ -97,6 +97,7 @@
>   #define CONFIG_FEC_MXC_PHYADDR		6
>   #define CONFIG_PHYLIB
>   #define CONFIG_PHY_MICREL
> +#define CONFIG_PHY_MICREL_KSZ9021
>
>   /* USB Configs */
>   #define CONFIG_CMD_USB

Best wishes,
Vladimir
diff mbox

Patch

diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index e3043df..30f3264 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -35,6 +35,12 @@  static struct phy_driver KSZ804_driver = {
 	.shutdown = &genphy_shutdown,
 };
 
+#ifndef CONFIG_PHY_MICREL_KSZ9021
+/*
+ * I can't believe Micrel used the exact same part number
+ * for the KSZ9021
+ * Shame Micrel, Shame!!!!!
+ */
 static struct phy_driver KS8721_driver = {
 	.name = "Micrel KS8721BL",
 	.uid = 0x221610,
@@ -44,7 +50,9 @@  static struct phy_driver KS8721_driver = {
 	.startup = &genphy_startup,
 	.shutdown = &genphy_shutdown,
 };
+#endif
 
+#ifdef CONFIG_PHY_MICREL_KSZ9021
 /* ksz9021 PHY Registers */
 #define MII_KSZ9021_EXTENDED_CTRL	0x0b
 #define MII_KSZ9021_EXTENDED_DATAW	0x0c
@@ -127,12 +135,15 @@  static struct phy_driver ksz9021_driver = {
 	.startup = &ksz9021_startup,
 	.shutdown = &genphy_shutdown,
 };
+#endif
 
 int phy_micrel_init(void)
 {
 	phy_register(&KSZ804_driver);
-	phy_register(&KS8721_driver);
+#ifdef CONFIG_PHY_MICREL_KSZ9021
 	phy_register(&ksz9021_driver);
-
+#else
+	phy_register(&KS8721_driver);
+#endif
 	return 0;
 }
diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h
index feabc05..8623320 100644
--- a/include/configs/mx6qsabrelite.h
+++ b/include/configs/mx6qsabrelite.h
@@ -97,6 +97,7 @@ 
 #define CONFIG_FEC_MXC_PHYADDR		6
 #define CONFIG_PHYLIB
 #define CONFIG_PHY_MICREL
+#define CONFIG_PHY_MICREL_KSZ9021
 
 /* USB Configs */
 #define CONFIG_CMD_USB