From: Tor Krill <tor@excito.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH V2] Allow PHY addresses on kirkwood egiga to be non continuous.
Date: Thu, 24 Jun 2010 11:31:47 +0200 [thread overview]
Message-ID: <1277371907-18459-1-git-send-email-tor@excito.com> (raw)
Changing its configuration from PHY_BASE_ADR single value to use
CONFIG_PHY_BASE_ADDRS as an array with adresses.
Updated in version 2:
Merged board updates to single patch.
Signed-off-by: Tor Krill <tor@excito.com>
---
board/keymile/km_arm/km_arm.c | 3 ++-
drivers/net/kirkwood_egiga.c | 3 ++-
drivers/net/kirkwood_egiga.h | 8 ++++----
include/configs/guruplug.h | 2 +-
include/configs/km_arm.h | 2 +-
include/configs/openrd_base.h | 2 +-
include/configs/rd6281a.h | 2 +-
include/configs/sheevaplug.h | 2 +-
8 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/board/keymile/km_arm/km_arm.c b/board/keymile/km_arm/km_arm.c
index 53cf474..16da353 100644
--- a/board/keymile/km_arm/km_arm.c
+++ b/board/keymile/km_arm/km_arm.c
@@ -244,12 +244,13 @@ int dram_init(void)
void reset_phy(void)
{
char *name = "egiga0";
+ u8 port_addr[] = CONFIG_PHY_ADDRS;
if (miiphy_set_current_dev(name))
return;
/* reset the phy */
- miiphy_reset(name, CONFIG_PHY_BASE_ADR);
+ miiphy_reset(name, port_addr[0]);
}
#if defined(CONFIG_HUSH_INIT_VAR)
diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c
index 932792e..7993e51 100644
--- a/drivers/net/kirkwood_egiga.c
+++ b/drivers/net/kirkwood_egiga.c
@@ -629,6 +629,7 @@ int kirkwood_egiga_initialize(bd_t * bis)
int devnum;
char *s;
u8 used_ports[MAX_KWGBE_DEVS] = CONFIG_KIRKWOOD_EGIGA_PORTS;
+ u8 port_addr[MAX_KWGBE_DEVS] = PHY_ADDRS;
for (devnum = 0; devnum < MAX_KWGBE_DEVS; devnum++) {
/*skip if port is configured not to use */
@@ -712,7 +713,7 @@ int kirkwood_egiga_initialize(bd_t * bis)
miiphy_register(dev->name, smi_reg_read, smi_reg_write);
/* Set phy address of the port */
miiphy_write(dev->name, KIRKWOOD_PHY_ADR_REQUEST,
- KIRKWOOD_PHY_ADR_REQUEST, PHY_BASE_ADR + devnum);
+ KIRKWOOD_PHY_ADR_REQUEST, port_addr[devnum]);
#endif
}
return 0;
diff --git a/drivers/net/kirkwood_egiga.h b/drivers/net/kirkwood_egiga.h
index 30c773c..6ff3bb7 100644
--- a/drivers/net/kirkwood_egiga.h
+++ b/drivers/net/kirkwood_egiga.h
@@ -30,11 +30,11 @@
#define MAX_KWGBE_DEVS 2 /*controller has two ports */
-/* PHY_BASE_ADR is board specific and can be configured */
-#if defined (CONFIG_PHY_BASE_ADR)
-#define PHY_BASE_ADR CONFIG_PHY_BASE_ADR
+/* PHY addresses is board specific and can be configured */
+#if defined (CONFIG_PHY_ADDRS)
+#define PHY_ADDRS CONFIG_PHY_ADDRS
#else
-#define PHY_BASE_ADR 0x08 /* default phy base addr */
+#define PHY_ADDRS {0x08,0x09} /* default phy base addr */
#endif
/* Constants */
diff --git a/include/configs/guruplug.h b/include/configs/guruplug.h
index 2fbc6ad..028eee7 100644
--- a/include/configs/guruplug.h
+++ b/include/configs/guruplug.h
@@ -175,7 +175,7 @@
#define CONFIG_KIRKWOOD_EGIGA /* Enable kirkwood Gbe Controller Driver */
#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN /* detect link using phy */
#define CONFIG_KIRKWOOD_EGIGA_PORTS {1,1} /* enable both ports */
-#define CONFIG_PHY_BASE_ADR 0
+#define CONFIG_PHY_ADDRS {0,1}
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init mv88e1121 PHY */
#endif /* CONFIG_CMD_NET */
diff --git a/include/configs/km_arm.h b/include/configs/km_arm.h
index a928c2c..1c3fa0d 100644
--- a/include/configs/km_arm.h
+++ b/include/configs/km_arm.h
@@ -130,7 +130,7 @@
#define CONFIG_KIRKWOOD_EGIGA /* Enable kirkwood Gbe Controller Driver */
#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN /* detect link using phy */
#define CONFIG_KIRKWOOD_EGIGA_PORTS {1,0} /* enable port 0 only */
-#define CONFIG_PHY_BASE_ADR 0
+#define CONFIG_PHY_ADDRS {0,1}
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init 88E1118 PHY */
diff --git a/include/configs/openrd_base.h b/include/configs/openrd_base.h
index d2f4502..37574ac 100644
--- a/include/configs/openrd_base.h
+++ b/include/configs/openrd_base.h
@@ -186,7 +186,7 @@
#define CONFIG_KIRKWOOD_EGIGA /* Enable kirkwood Gbe Controller Driver */
#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN /* detect link using phy */
#define CONFIG_KIRKWOOD_EGIGA_PORTS {1,0} /* enable port 0 only */
-#define CONFIG_PHY_BASE_ADR 0x8
+#define CONFIG_PHY_ADDRS {0x8,0x9}
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init mv8831116 PHY */
#endif /* CONFIG_CMD_NET */
diff --git a/include/configs/rd6281a.h b/include/configs/rd6281a.h
index 3d8e25c..01550d1 100644
--- a/include/configs/rd6281a.h
+++ b/include/configs/rd6281a.h
@@ -176,7 +176,7 @@
#define CONFIG_MV88E61XX_MULTICHIP_ADRMODE
#define CONFIG_DIS_AUTO_NEG_SPEED_GMII /*Disable Auto speed negociation */
#define CONFIG_PHY_SPEED _1000BASET /*Force PHYspeed to 1GBPs */
-#define CONFIG_PHY_BASE_ADR 0x0A
+#define CONFIG_PHY_ADDRS {0x0A,0x0B}
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init switch and PHY */
#define CONFIG_MV88E61XX_SWITCH /* Enable MV88E61XX switch driver */
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index e9edc44..9fdfd7e 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -177,7 +177,7 @@
#define CONFIG_KIRKWOOD_EGIGA /* Enable kirkwood Gbe Controller Driver */
#define CONFIG_SYS_FAULT_ECHO_LINK_DOWN /* detect link using phy */
#define CONFIG_KIRKWOOD_EGIGA_PORTS {1,0} /* enable port 0 only */
-#define CONFIG_PHY_BASE_ADR 0
+#define CONFIG_PHY_ADDRS {0,1}
#define CONFIG_ENV_OVERWRITE /* ethaddr can be reprogrammed */
#define CONFIG_RESET_PHY_R /* use reset_phy() to init mv8831116 PHY */
#endif /* CONFIG_CMD_NET */
--
1.7.0.4
next reply other threads:[~2010-06-24 9:31 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-24 9:31 Tor Krill [this message]
2010-06-24 11:22 ` [U-Boot] [PATCH V2] Allow PHY addresses on kirkwood egiga to be non continuous Prafulla Wadaskar
2010-06-24 11:34 ` Tor Krill
2010-06-24 16:37 ` Mike Frysinger
2010-06-24 16:48 ` Albert ARIBAUD
2010-06-24 16:53 ` Mike Frysinger
2010-06-28 9:20 ` Tor Krill
[not found] <F766E4F80769BD478052FB6533FA745D19A4A02082@SC-VEXCH4.marvell.com>
2010-06-28 9:11 ` Tor Krill
2010-06-28 12:02 ` Wolfgang Denk
2010-06-28 17:44 ` Prafulla Wadaskar
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=1277371907-18459-1-git-send-email-tor@excito.com \
--to=tor@excito.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox