public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] wandboard: Make Ethernet functional again
@ 2016-11-01 16:58 Fabio Estevam
  2016-11-01 20:29 ` Joe Hershberger
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Fabio Estevam @ 2016-11-01 16:58 UTC (permalink / raw)
  To: u-boot

Since commit ce412b79e7255770 ("drivers: net: phy: atheros: add separate
config for AR8031") ethernet does not work on mx6sabresd.

This commit correctly assigns ar8031_config() as the configuration
function for AR8031 in the same way as done in the Linux kernel.

However, on wandboard design we need some additional configuration,
such as enabling the 125 MHz AR8031 output that needs to be done
in the board file.

This also aligns with the same method that the kernel performs
the AR8031 fixup in arch/arm/mach-imx/mach-imx6q.c.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
---
 board/wandboard/wandboard.c | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index 1de1e0b..b3f3b34 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -189,6 +189,39 @@ int board_mmc_init(bd_t *bis)
 	return 0;
 }
 
+static int ar8031_phy_fixup(struct phy_device *phydev)
+{
+	unsigned short val;
+
+	/* To enable AR8031 ouput a 125MHz clk from CLK_25M */
+	phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x7);
+	phy_write(phydev, MDIO_DEVAD_NONE, 0xe, 0x8016);
+	phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x4007);
+
+	val = phy_read(phydev, MDIO_DEVAD_NONE, 0xe);
+	val &= 0xffe3;
+	val |= 0x18;
+	phy_write(phydev, MDIO_DEVAD_NONE, 0xe, val);
+
+	/* introduce tx clock delay */
+	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x5);
+	val = phy_read(phydev, MDIO_DEVAD_NONE, 0x1e);
+	val |= 0x0100;
+	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, val);
+
+	return 0;
+}
+
+int board_phy_config(struct phy_device *phydev)
+{
+	ar8031_phy_fixup(phydev);
+
+	if (phydev->drv->config)
+		phydev->drv->config(phydev);
+
+	return 0;
+}
+
 #if defined(CONFIG_VIDEO_IPUV3)
 struct i2c_pads_info mx6q_i2c2_pad_info = {
 	.scl = {
-- 
2.7.4

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

* [U-Boot] [PATCH] wandboard: Make Ethernet functional again
  2016-11-01 16:58 [U-Boot] [PATCH] wandboard: Make Ethernet functional again Fabio Estevam
@ 2016-11-01 20:29 ` Joe Hershberger
  2016-11-06 12:38 ` Fabio Estevam
  2016-11-07  1:16 ` [U-Boot] " Tom Rini
  2 siblings, 0 replies; 4+ messages in thread
From: Joe Hershberger @ 2016-11-01 20:29 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 1, 2016 at 11:58 AM, Fabio Estevam <fabio.estevam@nxp.com> wrote:
> Since commit ce412b79e7255770 ("drivers: net: phy: atheros: add separate
> config for AR8031") ethernet does not work on mx6sabresd.
>
> This commit correctly assigns ar8031_config() as the configuration
> function for AR8031 in the same way as done in the Linux kernel.
>
> However, on wandboard design we need some additional configuration,
> such as enabling the 125 MHz AR8031 output that needs to be done
> in the board file.
>
> This also aligns with the same method that the kernel performs
> the AR8031 fixup in arch/arm/mach-imx/mach-imx6q.c.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>

Acked-by: Joe Hershberger <joe.hershberger@ni.com>

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

* [U-Boot] [PATCH] wandboard: Make Ethernet functional again
  2016-11-01 16:58 [U-Boot] [PATCH] wandboard: Make Ethernet functional again Fabio Estevam
  2016-11-01 20:29 ` Joe Hershberger
@ 2016-11-06 12:38 ` Fabio Estevam
  2016-11-07  1:16 ` [U-Boot] " Tom Rini
  2 siblings, 0 replies; 4+ messages in thread
From: Fabio Estevam @ 2016-11-06 12:38 UTC (permalink / raw)
  To: u-boot

Hi Tom,

On Tue, Nov 1, 2016 at 2:58 PM, Fabio Estevam <fabio.estevam@nxp.com> wrote:
> Since commit ce412b79e7255770 ("drivers: net: phy: atheros: add separate
> config for AR8031") ethernet does not work on mx6sabresd.
>
> This commit correctly assigns ar8031_config() as the configuration
> function for AR8031 in the same way as done in the Linux kernel.
>
> However, on wandboard design we need some additional configuration,
> such as enabling the 125 MHz AR8031 output that needs to be done
> in the board file.
>
> This also aligns with the same method that the kernel performs
> the AR8031 fixup in arch/arm/mach-imx/mach-imx6q.c.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>

As you picked the similiar patch for sabresd, could you please take
this one too?

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

* [U-Boot] wandboard: Make Ethernet functional again
  2016-11-01 16:58 [U-Boot] [PATCH] wandboard: Make Ethernet functional again Fabio Estevam
  2016-11-01 20:29 ` Joe Hershberger
  2016-11-06 12:38 ` Fabio Estevam
@ 2016-11-07  1:16 ` Tom Rini
  2 siblings, 0 replies; 4+ messages in thread
From: Tom Rini @ 2016-11-07  1:16 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 01, 2016 at 02:58:16PM -0200, Fabio Estevam wrote:

> Since commit ce412b79e7255770 ("drivers: net: phy: atheros: add separate
> config for AR8031") ethernet does not work on mx6sabresd.
> 
> This commit correctly assigns ar8031_config() as the configuration
> function for AR8031 in the same way as done in the Linux kernel.
> 
> However, on wandboard design we need some additional configuration,
> such as enabling the 125 MHz AR8031 output that needs to be done
> in the board file.
> 
> This also aligns with the same method that the kernel performs
> the AR8031 fixup in arch/arm/mach-imx/mach-imx6q.c.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
> Acked-by: Joe Hershberger <joe.hershberger@ni.com>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20161106/2b0bf9fd/attachment.sig>

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

end of thread, other threads:[~2016-11-07  1:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-01 16:58 [U-Boot] [PATCH] wandboard: Make Ethernet functional again Fabio Estevam
2016-11-01 20:29 ` Joe Hershberger
2016-11-06 12:38 ` Fabio Estevam
2016-11-07  1:16 ` [U-Boot] " Tom Rini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox