<div dir="ltr">Thanks Chuanhong,<div><br></div><div>That is exactly what introduced the issue. I double check with and without the patch and without it I got the random data from mtd:</div><div><br></div><div>Without the patch target/linux/ath79/patches-4.14/461-spi-ath79-add-fast-flash-read.patch:</div><div><br></div><div>root@OpenWrt:/# dd if=/dev/mtd4 | md5sum - <br>d339cbfaf5ce709878d98bf83b853b63  -<br>7936+0 records in<br>7936+0 records out<br>root@OpenWrt:/# dd if=/dev/mtd4 | md5sum - <br>b97c976391ae881a8139f325a18ecdb2  -<br>7936+0 records in<br>7936+0 records out<br>root@OpenWrt:/# uname -a<br>Linux OpenWrt 4.14.167 #0 Mon Feb 3 15:18:08 2020 mips GNU/Linux<br></div><div><br></div><div>With the patch target/linux/ath79/patches-4.14/461-spi-ath79-add-fast-flash-read.patch:</div><div><br></div><div>root@OpenWrt:/# dd if=/dev/mtd4 | md5sum -<br>2404e891bd9e420fc4ec45e61cdd0ca9  -<br>7936+0 records in<br>7936+0 records out<br>root@OpenWrt:/# dd if=/dev/mtd4 | md5sum -<br>2404e891bd9e420fc4ec45e61cdd0ca9  -<br>7936+0 records in<br>7936+0 records out<br>root@OpenWrt:/# dd if=/dev/mtd4 | md5sum -<br>2404e891bd9e420fc4ec45e61cdd0ca9  -<br>7936+0 records in<br>7936+0 records out<br>root@OpenWrt:/# uname -a<br>Linux OpenWrt 4.14.167 #0 Mon Feb 3 15:18:08 2020 mips GNU/Linux<br></div><div><br></div><div>Buildtime are equal... maybe it is because of some reproducibility effort that does not consider patches.</div><div>All my tests are using initram image and kernel 4.14.<br></div><div><br></div><div>The flash is a Spansion S25FL064PIF. It is the same of TL-WR842NDv1, which has the flash section of DTS identical.</div><div><br></div><div>Kernel always detects it as:</div><div>[    0.656283] m25p80 spi0.0: s25sl064p (8192 Kbytes)<br></div><div><br></div><div>I tried some random changes (without knowing what I'm really doing) like:</div><div><br></div><div>compatible = "spansion,spi-nor";<br></div><div>compatible = "spansion,s25sl064p", "spansion,m25p80", "jedec,spi-nor"<br></div><div>m25p,fast-read;<br></div><div><br></div><div>But I guess all those name variations will, in the end, mean just the same.</div><div>"m25p,fast-read" does not fix the issue as well.<br></div><div><br></div><div>Regards,</div><div><br></div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>---<br>     Luiz Angelo Daros de Luca<br>            <a href="mailto:luizluca@gmail.com" target="_blank">luizluca@gmail.com</a></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Em qui., 6 de fev. de 2020 às 23:57, Chuanhong Guo <<a href="mailto:gch981213@gmail.com">gch981213@gmail.com</a>> escreveu:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi!<br>
<br>
On Fri, Feb 7, 2020 at 6:44 AM Luiz Angelo Daros de Luca<br>
<<a href="mailto:luizluca@gmail.com" target="_blank">luizluca@gmail.com</a>> wrote:<br>
><br>
> Hello,<br>
><br>
> I isolated the problem to be kernel upgrade from 4.14 to 4.19. If I build ath79 with 4.14, it simply works.<br>
> The mtd problem also happens while booting 4.19 without touching the flash 4.19 (using initram image).<br>
><br>
<br>
Flash reading is handled differently between 4.14 and 4.19. 4.14 reads<br>
directly from 0x1f000000 where spi is mapped. But the interface used<br>
for that got removed in 4.19 so bit-bang mode is used instead.<br>
Could you try if removing<br>
target/linux/ath79/patches-4.14/461-spi-ath79-add-fast-flash-read.patch<br>
also breaks ath79/4.14?<br>
<br>
Regards,<br>
Chuanhong Guo<br>
</blockquote></div>