
On 6/28/2012 11:00 AM, 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 Acked-by: Vladimir Zapolskiy vz@mleia.com
v2: add ack
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
+#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
ping....