[U-Boot-Users] [PATCH] mpc85xx: protect memcpy to bad address if a mac-address is missing from dt

protect memcpy to bad address if a mac-address is missing from dt
--- cpu/mpc85xx/cpu.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/cpu/mpc85xx/cpu.c b/cpu/mpc85xx/cpu.c index 0507c47..0f96216 100644 --- a/cpu/mpc85xx/cpu.c +++ b/cpu/mpc85xx/cpu.c @@ -255,21 +255,25 @@ ft_cpu_setup(void *blob, bd_t *bd)
#if defined(CONFIG_MPC85XX_TSEC1) p = ft_get_prop(blob, "/" OF_SOC "/ethernet@24000/mac-address", &len); + if (p != NULL) memcpy(p, bd->bi_enetaddr, 6); #endif
#if defined(CONFIG_HAS_ETH1) p = ft_get_prop(blob, "/" OF_SOC "/ethernet@25000/mac-address", &len); + if (p != NULL) memcpy(p, bd->bi_enet1addr, 6); #endif
#if defined(CONFIG_HAS_ETH2) p = ft_get_prop(blob, "/" OF_SOC "/ethernet@26000/mac-address", &len); + if (p != NULL) memcpy(p, bd->bi_enet2addr, 6); #endif
#if defined(CONFIG_HAS_ETH3) p = ft_get_prop(blob, "/" OF_SOC "/ethernet@27000/mac-address", &len); + if (p != NULL) memcpy(p, bd->bi_enet3addr, 6); #endif

On Jan 30, 2007, at 4:08 PM, Kim Phillips wrote:
#if defined(CONFIG_MPC85XX_TSEC1)
This is silly. A TSEC is a TSEC regardless of the core. We need to stop this hackery and put a few seconds of thought into this rather than just replicating code where the differences are a couple of minor search/replace edit operations. The whole of the Freescale processor area has recently been just a bunch of copy, copy, copy with little change to justify all of these replicated files. The SOCs are collections of functional blocks just arranged in different ways. The software should reflect that.
Thanks.
-- Dan
participants (2)
-
Dan Malek
-
Kim Phillips