All of lore.kernel.org
 help / color / mirror / Atom feed
From: Valentin Longchamp <valentin.longchamp@keymile.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 13/20] arm/km: enable external switch configuration for kmnusa
Date: Thu,  7 Jun 2012 12:06:53 +0200	[thread overview]
Message-ID: <1339063620-8890-14-git-send-email-valentin.longchamp@keymile.com> (raw)
In-Reply-To: <1339063620-8890-1-git-send-email-valentin.longchamp@keymile.com>

The configuration EEPROM should be removed for P1B.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
---
 board/keymile/km_arm/km_arm.c         |   11 +++++------
 board/keymile/km_arm/managed_switch.c |    3 ++-
 board/keymile/km_arm/managed_switch.h |    7 +++++++
 3 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/board/keymile/km_arm/km_arm.c b/board/keymile/km_arm/km_arm.c
index 4a6bff1..edaadb9 100644
--- a/board/keymile/km_arm/km_arm.c
+++ b/board/keymile/km_arm/km_arm.c
@@ -43,6 +43,7 @@
 #include <asm/arch/mpp.h>
 
 #include "../common/common.h"
+#include "managed_switch.h"
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -407,13 +408,11 @@ void reset_phy(void)
 	if (miiphy_set_current_dev(name))
 		return;
 
-	/* enable autoneg on port 0 phy */
-	ext_switch_reg_write(name, CONFIG_KM_MANAGED_SW_ADDR, 0, 0, 0x3300);
+#if defined(CONFIG_KM_NUSA)
+	ext_switch_program(name, CONFIG_KM_MANAGED_SW_ADDR);
+#endif
 
-	/* egress broadcast franes on all macs, with forwarding */
-	ext_switch_reg_write(name, CONFIG_KM_MANAGED_SW_ADDR, 16, 4, 0x000f);
-	ext_switch_reg_write(name, CONFIG_KM_MANAGED_SW_ADDR, 20, 4, 0x000f);
-	ext_switch_reg_write(name, CONFIG_KM_MANAGED_SW_ADDR, 21, 4, 0x000f);
+	ext_switch_reset(name, CONFIG_KM_MANAGED_SW_ADDR);
 }
 #endif
 
diff --git a/board/keymile/km_arm/managed_switch.c b/board/keymile/km_arm/managed_switch.c
index 3b022cd..a776f1d 100644
--- a/board/keymile/km_arm/managed_switch.c
+++ b/board/keymile/km_arm/managed_switch.c
@@ -32,9 +32,10 @@ struct switch_reg sw_conf[] = {
 	/* port 0, PIGY4, autoneg */
 	{ PORT(0), PORT_PHY, NO_SPEED_FOR },
 	{ PORT(0), PORT_CTRL, FORWARDING | EGRS_FLD_ALL },
+	{ PHY(0), PHY_1000_CTRL, NO_ADV },
+	{ PHY(0), PHY_SPEC_CTRL, AUTO_MDIX_EN },
 	{ PHY(0), PHY_CTRL, PHY_100_MBPS | AUTONEG_EN | AUTONEG_RST |
 		FULL_DUPLEX },
-	{ PHY(0), PHY_SPEC_CTRL, AUTO_MDIX_EN },
 	/* port 1, unused */
 	{ PORT(1), PORT_CTRL, PORT_DIS },
 	{ PHY(1), PHY_CTRL, PHY_PWR_DOWN },
diff --git a/board/keymile/km_arm/managed_switch.h b/board/keymile/km_arm/managed_switch.h
index c0dcf82..d5b938a 100644
--- a/board/keymile/km_arm/managed_switch.h
+++ b/board/keymile/km_arm/managed_switch.h
@@ -51,6 +51,7 @@
 
 #define PHY_CTRL	0x00
 #define PHY_100_MBPS	0x2000
+#define PHY_1_GBPS	0x0040
 #define AUTONEG_EN	0x1000
 #define AUTONEG_RST	0x0200
 #define FULL_DUPLEX	0x0100
@@ -62,6 +63,12 @@
 #define SPEC_PWR_DOWN	0x0004
 #define AUTO_MDIX_EN	0x0060
 
+#define PHY_1000_CTRL	0x9
+
+#define NO_ADV		0x0000
+#define ADV_1000_FDPX	0x0200
+#define ADV_1000_HDPX	0x0100
+
 /* PORT or MAC registers */
 #define PORT(itf)	(itf+0x10)
 
-- 
1.7.1

  parent reply	other threads:[~2012-06-07 10:06 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-07 10:06 [U-Boot] [PATCH 00/20] updates for Keymile Marvell boards Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 01/20] arm/km: enable spi claim bus Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 02/20] arm/km: use correct kw_gpio function for NAND/SPI switching Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:38     ` Holger Brunck
2012-06-12  9:32       ` Prafulla Wadaskar
2012-06-12 10:29         ` Holger Brunck
2012-06-13 12:16           ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 03/20] arm/kirkwood: protect the ENV_SPI #defines Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 04/20] arm/km: add kmnusa board support Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:34     ` Holger Brunck
2012-06-12  9:40       ` Prafulla Wadaskar
2012-06-12 10:30         ` Holger Brunck
2012-06-12  9:45       ` Prafulla Wadaskar
2012-06-12  9:57       ` Prafulla Wadaskar
2012-06-12 10:37         ` Holger Brunck
2012-06-12 11:09           ` Prafulla Wadaskar
2012-06-12 11:43             ` Holger Brunck
2012-06-12 11:50               ` Prafulla Wadaskar
2012-06-12 15:20                 ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 05/20] arm/km: add kmcoge5un " Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-07 10:06 ` [U-Boot] [PATCH 06/20] arm/km: convert mgcoge3un target to km_kirkwood Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 07/20] arm/km: remove portl2.h and use km_kirkwood instead Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 08/20] arm/km: correct init of 88e6352 switch in the reset_phy function Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 09/20] arm/km: enable BOCO2 FPGA download support Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 10/20] arm/km: cleanup km_kirkwood boards Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:15     ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 11/20] arm/km: redefine piggy 4 reg names to avoid conflicts Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 12/20] arm/km: add support for external switch configuration Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-21 13:09     ` [U-Boot] [PATCH 12/20] arm/km: add support for external switchconfiguration Valentin Longchamp
2012-07-03  8:17       ` Prafulla Wadaskar
2012-07-03  9:51         ` Valentin Longchamp
2012-07-04  8:07           ` Detlev Zundel
2012-07-04  9:20             ` Prafulla Wadaskar
2012-07-09 12:04               ` Holger Brunck
2012-07-09 12:31                 ` Wolfgang Denk
2012-07-09 12:50                   ` Detlev Zundel
2012-07-09 19:29                     ` Wolfgang Denk
2012-07-09 13:06                   ` Detlev Zundel
2012-07-09 14:44                     ` Holger Brunck
2012-07-09 19:44                       ` Wolfgang Denk
2012-07-09 19:32                     ` Wolfgang Denk
2012-07-16 16:55                       ` Detlev Zundel
2012-07-09 20:42                 ` Prafulla Wadaskar
2012-07-10 19:33                   ` Joe Hershberger
2012-07-09 14:31               ` Detlev Zundel
2012-07-09 14:40                 ` Valentin Longchamp
2012-07-10 10:18                 ` Prafulla Wadaskar
2012-06-07 10:06 ` Valentin Longchamp [this message]
2012-06-07 10:06 ` [U-Boot] [PATCH 14/20] arm/km: skip FPGA config when already configured Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 15/20] arm/km: support the 2 PCIe fpga resets Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 16/20] arm/km: add implementation for read_dip_switch Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 17/20] arm/km: fix testpin detection for kmcoge5un Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 18/20] arm/km: implement weak function board_spi_clam_bus/release Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 19/20] arm/km: remove spi toggle command Valentin Longchamp
2012-06-07 10:07 ` [U-Boot] [PATCH 20/20] arm/km: remove calls to kw_gpio_* in board_early_init_f Valentin Longchamp
2012-06-12  7:58   ` Prafulla Wadaskar
2012-06-12  8:43     ` Holger Brunck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1339063620-8890-14-git-send-email-valentin.longchamp@keymile.com \
    --to=valentin.longchamp@keymile.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.