Skip to contentSkip to conversation

Armada100: Enable 88E3015 PHY support for GplugD

PATCH New Ajay Bhargav 3 participants 4 messages Sep 8, 2011 – Sep 13, 2011

lore
Share & tools
lore
#0 lore raw

PATCH v6 3/3 Armada100: Enable 88E3015 PHY support for GplugD

This patch adds support for 88E3015 PHY for Marvell GplugD board. This patch depends on series of patch which adds support for Marvell GuruPlug-Display.

---
Changes for v2:
- Not changed
Changes for v3:
- code cleanup; removed unwated cast
Changes for v4:
- Not changed
Changes for v5:
- Coding style cleanup
Changes for v6:
- Not changed

 board/Marvell/gplugd/gplugd.c |   33 +++++++++++++++++++++++++++++++++
 include/configs/gplugd.h      |   14 ++++++++++++++
 2 files changed, 47 insertions(+), 0 deletions(-)
board/Marvell/gplugd/gplugd.c +33 -0
index 8560b3f..b4f7f81 100644
@@ -32,6 +32,8 @@
 #include <mvmfp.h>
 #include <asm/arch/mfp.h>
 #include <asm/arch/armada100.h>
+#include <asm/gpio.h>
+#include <miiphy.h>
 
 #ifdef CONFIG_ARMADA100_FEC
 #include <net.h>
@@ -83,6 +85,11 @@ int board_init(void)
 	gd->bd->bi_arch_number = MACH_TYPE_SHEEVAD;
 	/* adress of boot parameters */
 	gd->bd->bi_boot_params = armd1_sdram_base(0) + 0x100;
+	/* Assert PHY_RST# */
+	gpio_direction_output(CONFIG_SYS_GPIO_PHY_RST, GPIO_LOW);
+	udelay(10);
+	/* Deassert PHY_RST# */
+	gpio_set_value(CONFIG_SYS_GPIO_PHY_RST, GPIO_HIGH);
 	return 0;
 }
 
@@ -97,4 +104,30 @@ int board_eth_init(bd_t *bis)
 
 	return armada100_fec_register(ARMD1_FEC_BASE);
 }
+
+#ifdef CONFIG_RESET_PHY_R
+/* Configure and initialize PHY chip 88E3015 */
+void reset_phy(void)
+{
+	u16 phy_adr;
+	const char *name = "armd-fec0";
+
+	if (miiphy_set_current_dev(name))
+		return;
+
+	/* command to read PHY dev address */
+	if (miiphy_read(name, 0xff, 0xff, &phy_adr)) {
+		printf("Err..%s could not read PHY dev address\n", __func__);
+		return;
+	}
+
+	/* Set Ethernet LED in TX blink mode */
+	miiphy_write(name, phy_adr, PHY_LED_MAN_REG, 0x00);
+	miiphy_write(name, phy_adr, PHY_LED_PAR_SEL_REG, PHY_LED_VAL);
+
+	/* reset the phy */
+	miiphy_reset(name, phy_adr);
+	debug("88E3015 Initialized on %s\n", name);
+}
+#endif /* CONFIG_RESET_PHY_R */
 #endif /* CONFIG_ARMADA100_FEC */
include/configs/gplugd.h +14 -0
index 3ad2de5..5f72163 100644
@@ -77,6 +77,20 @@
 #define CONFIG_BOOTP_DHCP_REQUEST_DELAY		50000
 #endif /* CONFIG_CMD_NET */
 
+/* GPIO Support */
+#define CONFIG_MARVELL_GPIO
+
+/* PHY configuration */
+#define CONFIG_MII
+#define CONFIG_CMD_MII
+#define CONFIG_RESET_PHY_R
+/* 88E3015 register definition */
+#define PHY_LED_PAR_SEL_REG		22
+#define PHY_LED_MAN_REG			25
+#define PHY_LED_VAL			0x5b	/* LINK LED1, ACT LED2 */
+/* GPIO Configuration for PHY */
+#define CONFIG_SYS_GPIO_PHY_RST		104	/* GPIO104 */
+
 /*
  * mv-common.h should be defined after CMD configs since it used them
  * to enable certain macros
Signature · 1 line
1.7.0.4
#1 lore raw

PATCH v6 3/3 Armada100: Enable 88E3015 PHY support for GplugD

Quoted 15 lines

-----Original Message-----
From: Ajay Bhargav [mailto:ajay.bhargav at einfochips.com]
Sent: Thursday, September 08, 2011 4:13 PM
To: Prafulla Wadaskar
Cc: u-boot at lists.denx.de; vapier at gentoo.org; marek.vasut at gmail.com; Ajay Bhargav
Subject: [PATCH v6 3/3] Armada100: Enable 88E3015 PHY support for GplugD

This patch adds support for 88E3015 PHY for Marvell GplugD board. This patch depends on series of patch which adds support for Marvell GuruPlug-Display.

Quoted 12 lines

---
Changes for v2:
- Not changed
Changes for v3:
- code cleanup; removed unwated cast
Changes for v4:
- Not changed
Changes for v5:
- Coding style cleanup
Changes for v6:
- Not changed

Applied to u-boot-marvell.git next branch

Regards..
Prafulla . .

#2 lore raw

PATCH v6 3/3 Armada100: Enable 88E3015 PHY support for GplugD

Quoted 24 lines · Prafulla Wadaskar
Quoted 24 lines

-----Original Message-----
From: Ajay Bhargav [mailto:ajay.bhargav at einfochips.com]
Sent: Thursday, September 08, 2011 4:13 PM
To: Prafulla Wadaskar
Cc: u-boot at lists.denx.de; vapier at gentoo.org; marek.vasut at gmail.com; Ajay Bhargav
Subject: [PATCH v6 3/3] Armada100: Enable 88E3015 PHY support for GplugD

This patch adds support for 88E3015 PHY for Marvell GplugD board. This patch depends on series of patch which adds support for Marvell GuruPlug-Display.

---

Changes for v2:
- Not changed

Changes for v3:
- code cleanup; removed unwated cast

Changes for v4:
- Not changed

Quoted 7 lines
Quoted 5 lines

Changes for v5:
- Coding style cleanup

Changes for v6:
- Not changed

Applied to u-boot-marvell.git next branch

I have a good feeling about these drivers, cheers!

Quoted 3 lines

Regards..
Prafulla . .

#3 lore raw

PATCH v6 3/3 Armada100: Enable 88E3015 PHY support for GplugD

Quoted 31 lines · ----- "Marek Vasut
Quoted 5 lines · Prafulla Wadaskar
Quoted 5 lines

-----Original Message-----
From: Ajay Bhargav [mailto:ajay.bhargav at einfochips.com]
Sent: Thursday, September 08, 2011 4:13 PM
To: Prafulla Wadaskar
Cc: u-boot at lists.denx.de; vapier at gentoo.org;

marek.vasut at gmail.com; Ajay

Quoted 2 lines
Quoted 2 lines

Bhargav
Subject: [PATCH v6 3/3] Armada100: Enable 88E3015 PHY support for

GplugD

Quoted 3 lines
Quoted 3 lines

This patch adds support for 88E3015 PHY for Marvell GplugD board. This patch depends on series of patch which adds support for

Marvell

Quoted 17 lines
Quoted 17 lines

GuruPlug-Display.

---

Changes for v2:
- Not changed

Changes for v3:
- code cleanup; removed unwated cast

Changes for v4:
- Not changed

Changes for v5:
- Coding style cleanup

Quoted 7 lines
Quoted 4 lines
Quoted 2 lines

Changes for v6:
- Not changed

Applied to u-boot-marvell.git next branch

I have a good feeling about these drivers, cheers!

Thanks for your support Marek :)

Regards,
Ajay Bhargav

Quoted 3 lines
Quoted 3 lines

Regards..
Prafulla . .