diff options
author | Kim Phillips <kim.phillips@freescale.com> | 2008-01-14 22:14:46 (GMT) |
---|---|---|
committer | Kim Phillips <kim.phillips@freescale.com> | 2008-01-16 18:00:50 (GMT) |
commit | f09880ea72a1c806db223ce594c5fb1b6542ff6a (patch) | |
tree | 412204370c07e64a3ad348a77d07a78fba9f527d /board/freescale | |
parent | 2b4c952be7c4357a13e839d48df80853820c33eb (diff) | |
download | u-boot-f09880ea72a1c806db223ce594c5fb1b6542ff6a.tar.xz |
mpc83xx: fix phy-connection-type fixup code
use tree passed to us in local blob, not global fdt.
Also use fdt_path_offset to convert to relative offset, since absolute
reference is needed to check for rgmii-id mode string value.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Diffstat (limited to 'board/freescale')
-rw-r--r-- | board/freescale/mpc8360emds/mpc8360emds.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/board/freescale/mpc8360emds/mpc8360emds.c b/board/freescale/mpc8360emds/mpc8360emds.c index 2fcef8b..c1691ae 100644 --- a/board/freescale/mpc8360emds/mpc8360emds.c +++ b/board/freescale/mpc8360emds/mpc8360emds.c @@ -318,28 +318,34 @@ void ft_board_setup(void *blob, bd_t *bd) const char *prop; const char *path; - nodeoffset = fdt_path_offset(fdt, "/aliases"); + nodeoffset = fdt_path_offset(blob, "/aliases"); if (nodeoffset >= 0) { #if defined(CONFIG_HAS_ETH0) /* fixup UCC 1 if using rgmii-id mode */ path = fdt_getprop(blob, nodeoffset, "ethernet0", NULL); if (path) { - prop = fdt_getprop(blob, nodeoffset, - "phy-connection-type", 0); + path = fdt_path_offset(blob, path); + prop = fdt_getprop(blob, path, + "phy-connection-type", 0); if (prop && (strcmp(prop, "rgmii-id") == 0)) - fdt_setprop(blob, nodeoffset, "phy-connection-type", - "rgmii-rxid", sizeof("rgmii-rxid")); + fdt_setprop(blob, path, + "phy-connection-type", + "rgmii-rxid", + sizeof("rgmii-rxid")); } #endif #if defined(CONFIG_HAS_ETH1) /* fixup UCC 2 if using rgmii-id mode */ path = fdt_getprop(blob, nodeoffset, "ethernet1", NULL); if (path) { - prop = fdt_getprop(blob, nodeoffset, - "phy-connection-type", 0); + path = fdt_path_offset(blob, path); + prop = fdt_getprop(blob, path, + "phy-connection-type", 0); if (prop && (strcmp(prop, "rgmii-id") == 0)) - fdt_setprop(blob, nodeoffset, "phy-connection-type", - "rgmii-rxid", sizeof("rgmii-rxid")); + fdt_setprop(blob, path, + "phy-connection-type", + "rgmii-rxid", + sizeof("rgmii-rxid")); } #endif } |