- mtmips: network stability fixes for gardena-smart-gateway

-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiQkHUH+J02LLC9InKPlOlyTyXBgFAl0fap8ACgkQKPlOlyTy
 XBiyKA/+M1xLnFgwaIeU9bs1xL7Mf9HgjK71+5znjlq3TPF0/cZp+ybSXmDGssX+
 j1r8E8yL7wpI/DwSAqLUVp31uwgdxjZglNNd6IdjSV0T5OgTXFh//L75ycMng/j2
 p4jICuDVcyyn+W7rJB+zY8ufbfmT1QRvD04ZwFD0AB38BMRME25zP30+AVQSP543
 yAu4b4cidJ8KHnji0zLRCwi3/BR2/LTxeizjL2SLumvBWZ1QGFvZSNc770Iak7dQ
 5Slund92QovV4jVaCBnEJjl4GAxggDQmiIqpPiJhbNhNSGAWRUR3BfM5gdtT5Xhg
 vY2flBGzZMKHDZWAFRp9YJ3B0gueUITAqviqXQyJknuOhsgEJYldT7+3zcjfwqNK
 X04Yn7AU96ivulRdnXEbd0L5Dc0BitOifu7bACeg7nR3XOWBSy5BhI4dI/BwHpkH
 Qe0gXtimyUhh2+I9LidP5m4CC9YQgJAqZhU76IY/WJEhO5Og0rSJ52N3waYj5opm
 eNqxsGwmRFdKm8uYwBC5Uv0nC/6ylLbPOKYVChFFe05pTIQuxLKO1qfttpHW8HX4
 YIVfRx1beMfQIQmaHiomjndoXqbuLkQnDt7ciEFqNHL4HHVKvj+0DIQWliZlWqZZ
 8Y72OuM6fZKrBuKILynnhI6PdwQiVxXxEiAmVFqhxEwtwnd2rP8=
 =Rpr+
 -----END PGP SIGNATURE-----

Merge tag 'mips-fixes-for-2019.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-mips

- mtmips: network stability fixes for gardena-smart-gateway
This commit is contained in:
Tom Rini 2019-07-08 07:29:33 -04:00
commit 0bd2a92f54
2 changed files with 27 additions and 1 deletions

View File

@ -84,13 +84,13 @@ config ARCH_MTMIPS
select DM_SERIAL
imply DM_SPI
imply DM_SPI_FLASH
select LAST_STAGE_INIT
select MIPS_TUNE_24KC
select OF_CONTROL
select ROM_EXCEPTION_VECTORS
select SUPPORTS_CPU_MIPS32_R1
select SUPPORTS_CPU_MIPS32_R2
select SUPPORTS_LITTLE_ENDIAN
select SYS_MALLOC_CLEAR_ON_INIT
select SYSRESET
config ARCH_JZ47XX

View File

@ -68,3 +68,29 @@ int print_cpuinfo(void)
return 0;
}
int last_stage_init(void)
{
void *src, *dst;
src = malloc(SZ_64K);
dst = malloc(SZ_64K);
if (!src || !dst) {
printf("Can't allocate buffer for cache cleanup copy!\n");
return 0;
}
/*
* It has been noticed, that sometimes the d-cache is not in a
* "clean-state" when U-Boot is running on MT7688. This was
* detected when using the ethernet driver (which uses d-cache)
* and a TFTP command does not complete. Copying an area of 64KiB
* in DDR at a very late bootup time in U-Boot, directly before
* calling into the prompt, seems to fix this issue.
*/
memcpy(dst, src, SZ_64K);
free(src);
free(dst);
return 0;
}