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.chot...@st.com> > Cc: Marek Vasut <ma...@denx.de> > Cc: Joe Hershberger <joe.hershber...@ni.com> > Cc: Ramon Fried <rfried....@gmail.com> > Cc: Stephen Warren <swar...@nvidia.com> > Reviewed-by: Marek Vasut <ma...@denx.de>
Applied to u-boot/master, thanks! -- Tom
signature.asc
Description: PGP signature