linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] PowerPC: Add NEW EMAC driver support to 440EPx Sequoia board.
@ 2007-10-12 13:03 Valentine Barshak
  2007-10-12 13:07 ` Valentine Barshak
                   ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: Valentine Barshak @ 2007-10-12 13:03 UTC (permalink / raw)
  To: linuxppc-dev

This patch enables NEW EMAC support for PowerPC 440EPx Sequoia board
and adds BCM5248 and Marvell 88E1111 PHY support to NEW EMAC driver.
These PHY chips are used on PowerPC440EPx boards.
The PHY code is based on the previous work by Stefan Roese <sr@denx.de>

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>

---
 arch/powerpc/platforms/44x/Kconfig |    7 ++----
 drivers/net/ibm_newemac/phy.c      |   39 +++++++++++++++++++++++++++++++++++++
 2 files changed, 42 insertions(+), 4 deletions(-)

--- linux.orig/arch/powerpc/platforms/44x/Kconfig	2007-07-30 15:05:50.000000000 +0400
+++ linux/arch/powerpc/platforms/44x/Kconfig	2007-07-30 17:59:05.000000000 +0400
@@ -48,10 +48,9 @@
 config 440EPX
 	bool
 	select PPC_FPU
-# Disabled until the new EMAC Driver is merged.
-#	select IBM_NEW_EMAC_EMAC4
-#	select IBM_NEW_EMAC_RGMII
-#	select IBM_NEW_EMAC_ZMII
+	select IBM_NEW_EMAC_EMAC4
+	select IBM_NEW_EMAC_RGMII
+	select IBM_NEW_EMAC_ZMII
 
 config 440GP
 	bool
--- linux.orig/drivers/net/ibm_newemac/phy.c	2007-06-15 21:45:18.000000000 +0400
+++ linux/drivers/net/ibm_newemac/phy.c	2007-06-15 20:45:15.000000000 +0400
@@ -306,8 +306,47 @@
 	.ops		= &cis8201_phy_ops
 };
 
+static struct mii_phy_def bcm5248_phy_def = {
+
+	.phy_id		= 0x0143bc00,
+	.phy_id_mask	= 0x0ffffff0,
+	.name		= "BCM5248 10/100 SMII Ethernet",
+	.ops		= &generic_phy_ops
+};
+
+static int m88e1111_init(struct mii_phy *phy)
+{
+	printk("%s: Marvell 88E1111 Ethernet\n", __FUNCTION__);
+	phy_write(phy, 0x14, 0x0ce3);
+	phy_write(phy, 0x18, 0x4101);
+	phy_write(phy, 0x09, 0x0e00);
+	phy_write(phy, 0x04, 0x01e1);
+	phy_write(phy, 0x00, 0x9140);
+	phy_write(phy, 0x00, 0x1140);
+
+	return  0;
+}
+
+static struct mii_phy_ops m88e1111_phy_ops = {
+	.init		= m88e1111_init,
+	.setup_aneg	= genmii_setup_aneg,
+	.setup_forced	= genmii_setup_forced,
+	.poll_link	= genmii_poll_link,
+	.read_link	= genmii_read_link
+};
+
+static struct mii_phy_def m88e1111_phy_def = {
+
+	.phy_id		= 0x01410CC0,
+	.phy_id_mask	= 0x0ffffff0,
+	.name		= "Marvell 88E1111 Ethernet",
+	.ops		= &m88e1111_phy_ops,
+};
+
 static struct mii_phy_def *mii_phy_table[] = {
 	&cis8201_phy_def,
+	&bcm5248_phy_def,
+	&m88e1111_phy_def,
 	&genmii_phy_def,
 	NULL
 };

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2007-10-24 19:25 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-12 13:03 [PATCH] PowerPC: Add NEW EMAC driver support to 440EPx Sequoia board Valentine Barshak
2007-10-12 13:07 ` Valentine Barshak
2007-10-12 14:39   ` Josh Boyer
2007-10-15 17:26 ` Josh Boyer
2007-10-15 17:57   ` [PATCH] PowerPC: Add BCM5248 and Marvell 88E1111 PHY support to NEW EMAC Valentine Barshak
2007-10-15 18:27     ` Jeff Garzik
2007-10-15 18:48       ` Josh Boyer
2007-10-15 18:53         ` Jeff Garzik
2007-10-15 18:59           ` Josh Boyer
2007-10-15 19:04             ` Jeff Garzik
2007-10-15 21:05               ` Benjamin Herrenschmidt
2007-10-15 22:47                 ` Josh Boyer
2007-10-15 21:02           ` Benjamin Herrenschmidt
2007-10-23 15:20       ` Josh Boyer
2007-10-23 16:13         ` Kumar Gala
2007-10-23 16:17           ` Josh Boyer
2007-10-24  3:31     ` Benjamin Herrenschmidt
2007-10-24 19:24       ` Valentine Barshak
2007-10-15 17:58   ` [PATCH] PowerPC: Enable NEW EMAC support for Sequoia 440EPx Valentine Barshak
2007-10-15 20:59   ` [PATCH] PowerPC: Add NEW EMAC driver support to 440EPx Sequoia board Benjamin Herrenschmidt
2007-10-15 21:01 ` Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).