diff options
author | Kim Phillips <kim.phillips@freescale.com> | 2007-02-22 20:06:57 -0600 |
---|---|---|
committer | Kim Phillips <kim.phillips@freescale.com> | 2007-03-02 11:05:54 -0600 |
commit | d51b3cf371cd441030460ef19d36b2924c361b1a (patch) | |
tree | 83fd50d8dc011e26d999289728b2300061468827 | |
parent | 61f4f912acbe60776c5e00df1ec94094ce672957 (diff) | |
download | u-boot-imx-d51b3cf371cd441030460ef19d36b2924c361b1a.zip u-boot-imx-d51b3cf371cd441030460ef19d36b2924c361b1a.tar.gz u-boot-imx-d51b3cf371cd441030460ef19d36b2924c361b1a.tar.bz2 |
mpc83xx: update [local-]mac-address properties on UEC based devices
8360 and 832x weren't updating their [local-]mac-address
properties. This patch fixes that.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
-rw-r--r-- | cpu/mpc83xx/cpu.c | 40 | ||||
-rw-r--r-- | include/configs/MPC832XEMDS.h | 1 | ||||
-rw-r--r-- | include/configs/MPC8360EMDS.h | 1 |
3 files changed, 42 insertions, 0 deletions
diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c index c4e2d0e..e4bc405 100644 --- a/cpu/mpc83xx/cpu.c +++ b/cpu/mpc83xx/cpu.c @@ -335,6 +335,46 @@ ft_cpu_setup(void *blob, bd_t *bd) if (p != NULL) memcpy(p, bd->bi_enet1addr, 6); #endif + +#ifdef CONFIG_UEC_ETH1 +#if CFG_UEC1_UCC_NUM == 0 /* UCC1 */ + p = ft_get_prop(blob, "/" OF_QE "/ucc@2000/mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enetaddr, 6); + + p = ft_get_prop(blob, "/" OF_QE "/ucc@2000/local-mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enetaddr, 6); +#elif CFG_UEC1_UCC_NUM == 2 /* UCC3 */ + p = ft_get_prop(blob, "/" OF_QE "/ucc@2200/mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enetaddr, 6); + + p = ft_get_prop(blob, "/" OF_QE "/ucc@2200/local-mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enetaddr, 6); +#endif +#endif + +#ifdef CONFIG_UEC_ETH2 +#if CFG_UEC2_UCC_NUM == 1 /* UCC2 */ + p = ft_get_prop(blob, "/" OF_QE "/ucc@3000/mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enet1addr, 6); + + p = ft_get_prop(blob, "/" OF_QE "/ucc@3000/local-mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enet1addr, 6); +#elif CFG_UEC2_UCC_NUM == 3 /* UCC4 */ + p = ft_get_prop(blob, "/" OF_QE "/ucc@3200/mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enet1addr, 6); + + p = ft_get_prop(blob, "/" OF_QE "/ucc@3200/local-mac-address", &len); + if (p != NULL) + memcpy(p, bd->bi_enet1addr, 6); +#endif +#endif } #endif diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h index 1155cbd..cecb225 100644 --- a/include/configs/MPC832XEMDS.h +++ b/include/configs/MPC832XEMDS.h @@ -323,6 +323,7 @@ #define OF_CPU "PowerPC,8323@0" #define OF_SOC "soc8323@e0000000" +#define OF_QE "qe@e0100000" #define OF_TBCLK (bd->bi_busfreq / 4) #define OF_STDOUT_PATH "/soc8323@e0000000/serial@4500" diff --git a/include/configs/MPC8360EMDS.h b/include/configs/MPC8360EMDS.h index ef4871b..d2af0e1 100644 --- a/include/configs/MPC8360EMDS.h +++ b/include/configs/MPC8360EMDS.h @@ -350,6 +350,7 @@ #define OF_CPU "PowerPC,8360@0" #define OF_SOC "soc8360@e0000000" +#define OF_QE "qe@e0100000" #define OF_TBCLK (bd->bi_busfreq / 4) #define OF_STDOUT_PATH "/soc8360@e0000000/serial@4500" |