Skip to contentSkip to conversation

QE UEC: MII command support and adding UECs

U-Boot-Users In review richardretanubun 6 participants 8 messages Jul 16, 2008 – Jul 29, 2008

lore
Share & tools
lore
#0 lore raw

Hi,

I am wondering if the miiphy command support for QE UEC is already merged into u-boot on some tree.

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

It looked like it was about to make it into 1.3.3

I have checked both the main u.boot.git as well as the 83xx and 85xx tree and can't find the changes there.

Also, is there a blob written anywhere about the limitations and considerations for adding (even) more
QE UEC interfaces? I was about to naively add two more UECs before reading this:

commit: 2465665b73ac2f688af945b1ed510752afa816a4

QE UEC: Extend number of supported UECs to 4

This patch extends the number of supported UECs to 4. Note that the problem of QE thread resources exhaustion is resolved by setting the correct number of QE threads according to Ethernet type (GBE or FE).

So that this mean one can safely add more UECs so long as there is enough memory to support it?

Thank you for all your help.

Richard Retanubun

#1 lore raw
Quoted 8 lines · richardretanubun

Hi,

I am wondering if the miiphy command support for QE UEC is already merged into u-boot on some tree.

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

Hm... I vaguely recall seeing that, but it's more in Ben Warren's domain. He probably wasn't copied on the patch, either.

Andy

#2 lore raw
Quoted 8 lines · Andy Fleming
Quoted 5 lines · richardretanubun

Hi,

I am wondering if the miiphy command support for QE UEC is already merged into u-boot on some tree.

Quoted 8 lines
Quoted 4 lines

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

Hm... I vaguely recall seeing that, but it's more in Ben Warren's domain. He probably wasn't copied on the patch, either.

Yeah, looks like I missed that one. To answer your question, no. I won't be able to apply it until the weekend at the earliest, so for now please just apply the patch yourself.

regards,
Ben

#3 lore raw

Dear Richard,

Quoted 11 lines · in message <[email protected]> Ben Warren wrote:
Quoted 8 lines
Quoted 4 lines

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

Hm... I vaguely recall seeing that, but it's more in Ben Warren's domain. He probably wasn't copied on the patch, either.

Yeah, looks like I missed that one. To answer your question, no. I won't be able to apply it until the weekend at the earliest, so for now please just apply the patch yourself.

Can you please post updated patches?

Thanks in advance.

Best regards,

Wolfgang Denk

Signature · 6 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The more complex the mind, the greater the need for the simplicity of
play.
	-- Kirk, "Shore Leave", stardate 3025.8
#4 lore raw

PATCH 1/1 Re-Submit: QE UEC: Add MII Commands

Patch originally submitted by David Saada

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38946

Shamelessly copy-pasted below.

Richard
===========================================================================

Add MII commands to the UEC driver. Note that once a UEC device is selected, any device on its MDIO bus can be addressed.

Signed-off-by David Saada <david.saada <at> ecitele.com>
 uec.c |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)
drivers/qe/uec.c +53 -0
@@ -29,6 +29,7 @@
 #include "uccf.h"
 #include "uec.h"
 #include "uec_phy.h"
+#include "miiphy.h"
 
 #if defined(CONFIG_QE)
 
@@ -125,6 +126,17 @@ static uec_info_t eth4_uec_info = {
 };
 #endif
 
+#define MAXCONTROLLERS	(4)
+
+static struct eth_device *devlist[MAXCONTROLLERS];
+
+static int uec_miiphy_read(char *devname, unsigned char addr,
+			    unsigned char reg, unsigned short *value);
+static int uec_miiphy_write(char *devname, unsigned char addr,
+			     unsigned char reg, unsigned short value);
+u16 phy_read (struct uec_mii_info *mii_info, u16 regnum);
+void phy_write (struct uec_mii_info *mii_info, u16 regnum, u16 val);
+
 static int uec_mac_enable(uec_private_t *uec, comm_dir_e mode)
 {
 	uec_t		*uec_regs;
@@ -1334,6 +1346,8 @@ int uec_initialize(int index)
 		return -EINVAL;
 	}
 
+	devlist[index] = dev;
+
 	uec->uec_info = uec_info;
 
 	sprintf(dev->name, "FSL UEC%d", index);
@@ -1356,6 +1370,45 @@ int uec_initialize(int index)
 		return err;
 	}
 
+#if defined(CONFIG_MII) || defined(CONFIG_CMD_MII) \
+	&& !defined(BITBANGMII)
+	miiphy_register(dev->name, uec_miiphy_read, uec_miiphy_write);
+#endif
+
 	return 1;
 }
+
+#if defined(CONFIG_MII) || defined(CONFIG_CMD_MII) \
+	&& !defined(BITBANGMII)
+
+/*
+ * Read a MII PHY register.
+ *
+ * Returns:
+ *  0 on success
+ */
+static int uec_miiphy_read(char *devname, unsigned char addr,
+			    unsigned char reg, unsigned short *value)
+{
+	*value = uec_read_phy_reg(devlist[0], addr, reg);
+
+	return 0;
+}
+
+/*
+ * Write a MII PHY register.
+ *
+ * Returns:
+ *  0 on success
+ */
+static int uec_miiphy_write(char *devname, unsigned char addr,
+			     unsigned char reg, unsigned short value)
+{
+	uec_write_phy_reg(devlist[0], addr, reg, value);
+
+	return 0;
+}
+
+#endif
+
 #endif /* CONFIG_QE */
Quoted 26 lines · Wolfgang Denk

Dear Richard,

Quoted 4 lines · in message <[email protected]> Ben Warren wrote:
Quoted 4 lines
Quoted 4 lines

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

Quoted 8 lines
Quoted 4 lines

Hm... I vaguely recall seeing that, but it's more in Ben Warren's domain. He probably wasn't copied on the patch, either.

Yeah, looks like I missed that one. To answer your question, no. I won't be able to apply it until the weekend at the earliest, so for now please just apply the patch yourself.

Can you please post updated patches?

Thanks in advance.

Best regards,

Wolfgang Denk

#5 lore raw

PATCH 1/1 Re-Submit: QE UEC: Add MII Commands

Quoted 8 lines · On Tue, 29 Jul 2008 11:10:09 -0400 richardretanubun…

Patch originally submitted by David Saada

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38946

Shamelessly copy-pasted below.

Richard
===========================================================================

the proper way to maintain correct attributions in this case is to replace all the above with a simple:

From: David Saada <[email protected]>

as the first line in the email body. git-am will now assign the correct author when applying it to the tree.

Quoted 4 lines

Add MII commands to the UEC driver. Note that once a UEC device is selected, any device on its MDIO bus can be addressed.

Signed-off-by David Saada <david.saada <at> ecitele.com>

please feel free to be a part of the community and add your Tested-by, Reviewed-by, Acked-by, and/or signoff. See linux-2.6/Documentation/SubmittingPatches for further details.

Kim

#6 lore raw

[U-Boot-Users] unassigned-patches/15: [Patch 1/1] Re-Submit: QE UEC: Add MII Commands

In reply to richardretanubun

Patch originally submitted by David Saada

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38946

Shamelessly copy-pasted below.

Richard
===========================================================================

Add MII commands to the UEC driver. Note that once a UEC device is selected, any device on its MDIO bus can be addressed.

Signed-off-by David Saada <david.saada <at> ecitele.com>
 uec.c |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

---
Added to GNATS database as unassigned-patches/15

Quoted 5 lines
Responsible:    patch-coord
Message-Id:     <[email protected]>
In-Reply-To:    <[email protected]>
References:     <[email protected]>
Patch-Date:     Tue Jul 29 17:10:09 +0200 2008
drivers/qe/uec.c +53 -0
@@ -29,6 +29,7 @@
 #include "uccf.h"
 #include "uec.h"
 #include "uec_phy.h"
+#include "miiphy.h"
 
 #if defined(CONFIG_QE)
 
@@ -125,6 +126,17 @@ static uec_info_t eth4_uec_info = {
 };
 #endif
 
+#define MAXCONTROLLERS	(4)
+
+static struct eth_device *devlist[MAXCONTROLLERS];
+
+static int uec_miiphy_read(char *devname, unsigned char addr,
+			    unsigned char reg, unsigned short *value);
+static int uec_miiphy_write(char *devname, unsigned char addr,
+			     unsigned char reg, unsigned short value);
+u16 phy_read (struct uec_mii_info *mii_info, u16 regnum);
+void phy_write (struct uec_mii_info *mii_info, u16 regnum, u16 val);
+
 static int uec_mac_enable(uec_private_t *uec, comm_dir_e mode)
 {
 	uec_t		*uec_regs;
@@ -1334,6 +1346,8 @@ int uec_initialize(int index)
 		return -EINVAL;
 	}
 
+	devlist[index] = dev;
+
 	uec->uec_info = uec_info;
 
 	sprintf(dev->name, "FSL UEC%d", index);
@@ -1356,6 +1370,45 @@ int uec_initialize(int index)
 		return err;
 	}
 
+#if defined(CONFIG_MII) || defined(CONFIG_CMD_MII) \
+	&& !defined(BITBANGMII)
+	miiphy_register(dev->name, uec_miiphy_read, uec_miiphy_write);
+#endif
+
 	return 1;
 }
+
+#if defined(CONFIG_MII) || defined(CONFIG_CMD_MII) \
+	&& !defined(BITBANGMII)
+
+/*
+ * Read a MII PHY register.
+ *
+ * Returns:
+ *  0 on success
+ */
+static int uec_miiphy_read(char *devname, unsigned char addr,
+			    unsigned char reg, unsigned short *value)
+{
+	*value = uec_read_phy_reg(devlist[0], addr, reg);
+
+	return 0;
+}
+
+/*
+ * Write a MII PHY register.
+ *
+ * Returns:
+ *  0 on success
+ */
+static int uec_miiphy_write(char *devname, unsigned char addr,
+			     unsigned char reg, unsigned short value)
+{
+	uec_write_phy_reg(devlist[0], addr, reg, value);
+
+	return 0;
+}
+
+#endif
+
 #endif /* CONFIG_QE */
Quoted 17 lines · Wolfgang Denk

Dear Richard,

Quoted 4 lines · in message <[email protected]> Ben Warren wrote:
Quoted 4 lines
Quoted 4 lines

The last info I have on this patch is on this posting:

http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/38965

Quoted 8 lines
Quoted 4 lines

Hm... I vaguely recall seeing that, but it's more in Ben Warren's domain. He probably wasn't copied on the patch, either.

Yeah, looks like I missed that one. To answer your question, no. I won't be able to apply it until the weekend at the earliest, so for now please just apply the patch yourself.

Quoted 9 lines

Can you please post updated patches?

Thanks in advance.

Best regards,

Wolfgang Denk

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

#7 lore raw

[U-Boot-Users] unassigned-patches/15: [Patch 1/1] Re-Submit: QE UEC: Add MII Commands

Quoted 5 lines · In message <[email protected]> you wrote:

Add MII commands to the UEC driver. Note that once a UEC device is selected, any device on its MDIO bus can be addressed.

Signed-off-by David Saada <david.saada <at> ecitele.com>

Please provide a working, unmanlged mail address.

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
It's all Klatchian to me.
        - Terry Pratchett & Stephen Briggs, _The Discworld Companion_