[PATCH v2] cmd: cache: Fix non-cached memory cachability

Tom Rini trini at konsulko.com
Thu May 7 15:04:20 CEST 2020


On Tue, Apr 28, 2020 at 11:38:03AM +0200, Patrice Chotard wrote:

> If dcache is switched OFF to ON state and if non-cached memory is
> used, this non-cached memory must be re-declared as uncached to mmu
> each time dcache is set ON.
> 
> Introduce noncached_set_region() to set this non-cached region's mmu
> settings. Let architecture override it by defining it as a weak
> function.
> 
> For ARM architecture, noncached_set_region() defines all noncached
> region as non-cacheable.
> 
> Issue found on STM32MP1 platform using dwc_eth_qos ethernet driver,
> when going from dcache OFF to dcache ON state, ethernet driver issued
> TX timeout errors when performing dhcp or ping.
> 
> It can be reproduced with the following sequence:
> 
> dhcp
> while true ; do
>   ping 192.168.1.300 ;
>   dcache off ;
>   ping 192.168.1.300 ;
>   dcache on ;
> done
> 
> Signed-off-by: Patrice Chotard <patrice.chotard at st.com>
> Cc: Marek Vasut <marex at denx.de>
> Cc: Joe Hershberger <joe.hershberger at ni.com>
> Cc: Ramon Fried <rfried.dev at gmail.com>
> Cc: Stephen Warren <swarren at nvidia.com>
> Reviewed-by: Marek Vasut <marex at denx.de>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200507/3cb3219c/attachment.sig>


More information about the U-Boot mailing list