* [U-Boot-Users] [PATCH] ppc4xx: Fix problem in 4xx_enet.c driver
@ 2008-02-25 19:54 Anatolij Gustschin
2008-03-02 20:35 ` Wolfgang Denk
0 siblings, 1 reply; 2+ messages in thread
From: Anatolij Gustschin @ 2008-02-25 19:54 UTC (permalink / raw)
To: u-boot
U-Boot crashes in the net loop if CONFIG_4xx_DCACHE is
enabled. To reproduce the problem ensure that 'ethrotate'
environment variable isn't set to "no" and then run
"tftp 200000 not_existent_file".
This patch tries to fix the issue.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
---
cpu/ppc4xx/4xx_enet.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/cpu/ppc4xx/4xx_enet.c b/cpu/ppc4xx/4xx_enet.c
index 44659ff..5ef1005 100644
--- a/cpu/ppc4xx/4xx_enet.c
+++ b/cpu/ppc4xx/4xx_enet.c
@@ -487,6 +487,9 @@ static int ppc_4xx_eth_init (struct eth_device *dev, bd_t * bis)
#endif
u32 bd_cached;
u32 bd_uncached = 0;
+#ifdef CONFIG_4xx_DCACHE
+ static u32 last_used_ea = 0;
+#endif
EMAC_4XX_HW_PST hw_p = dev->priv;
@@ -850,7 +853,12 @@ static int ppc_4xx_eth_init (struct eth_device *dev, bd_t * bis)
#ifdef CONFIG_4xx_DCACHE
flush_dcache_range(bd_cached, bd_cached + MAL_ALLOC_SIZE);
- bd_uncached = bis->bi_memsize;
+ if (!last_used_ea)
+ bd_uncached = bis->bi_memsize;
+ else
+ bd_uncached = last_used_ea + MAL_ALLOC_SIZE;
+
+ last_used_ea = bd_uncached;
program_tlb(bd_cached, bd_uncached, MAL_ALLOC_SIZE,
TLB_WORD2_I_ENABLE);
#else
--
1.5.3.3
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [U-Boot-Users] [PATCH] ppc4xx: Fix problem in 4xx_enet.c driver
2008-02-25 19:54 [U-Boot-Users] [PATCH] ppc4xx: Fix problem in 4xx_enet.c driver Anatolij Gustschin
@ 2008-03-02 20:35 ` Wolfgang Denk
0 siblings, 0 replies; 2+ messages in thread
From: Wolfgang Denk @ 2008-03-02 20:35 UTC (permalink / raw)
To: u-boot
In message <47C31CDC.7010508@denx.de> you wrote:
> U-Boot crashes in the net loop if CONFIG_4xx_DCACHE is
> enabled. To reproduce the problem ensure that 'ethrotate'
> environment variable isn't set to "no" and then run
> "tftp 200000 not_existent_file".
> This patch tries to fix the issue.
>
> Signed-off-by: Anatolij Gustschin <agust@denx.de>
Applied, thanks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
I think that all right-thinking people in this country are sick and
tired of being told that ordinary decent people are fed up in this
country with being sick and tired. I'm certainly not. But I'm sick
and tired of being told that I am. - Monty Python
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-03-02 20:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-25 19:54 [U-Boot-Users] [PATCH] ppc4xx: Fix problem in 4xx_enet.c driver Anatolij Gustschin
2008-03-02 20:35 ` Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox