Hi Jonas, Sorry for the late response, I've been meaning to test this for a while but not got around to it.
On Thu, 2023-08-17 at 23:56 +0000, Jonas Karlman wrote: > Hi Christopher, > > On 2023-08-08 16:25, Christopher Obbard wrote: > > Hi Jonas, > > > > On Sun, 2023-07-23 at 15:04 +0000, Jonas Karlman wrote: > > > On 2023-07-23 16:55, Jonas Karlman wrote: > > > > The Pine64 Quartz64 Model A is a single-board computer based on the > > > > Rockchip RK3566 SoC. The board features USB3, SATA, PCIe, HDMI, USB2.0, > > > > CSI, DSI, eDP, eMMC, SD, and an e-paper parallel port, as well as a > > > > 20 pin GPIO header. > > > > > > > > Features tested on a Quartz64-A 8GB v2.0 2021-04-27: > > > > - SD-card boot > > > > - eMMC boot > > > > - PCIe/NVMe/AHCI > > > > - USB host > > > > > > > > Device tree is imported from linux v6.4. > > > > > > > > Co-developed-by: Nicolas Frattaroli <frattaroli.nico...@gmail.com> > > > > Signed-off-by: Nicolas Frattaroli <frattaroli.nico...@gmail.com> > > > > Signed-off-by: Jonas Karlman <jo...@kwiboo.se> > > > > --- > > > > > > [...] > > > > > > Boot log with ROCKCHIP_TPL=rk3566_ddr_1056MHz_v1.17.bin and > > > BL31=rk3568_bl31_v1.43.elf: > > > > > > [...] > > > > > > U-Boot 2023.07 (Jul 23 2023 - 12:42:18 +0000) > > > > > > Model: Pine64 RK3566 Quartz64-A Board > > > DRAM: 8 GiB (effective 7.7 GiB) > > > PMIC: RK8170 (on=0x10, off=0x00) > > > Core: 321 devices, 27 uclasses, devicetree: separate > > > MMC: rockchip_sdhci_probe clk set rate fail! > > > mmc@fe2b0000: 1, mmc@fe2c0000: 2, mmc@fe310000: 0 > > > Loading Environment from nowhere... OK > > > In: serial@fe660000 > > > Out: serial@fe660000 > > > Err: serial@fe660000 > > > Model: Pine64 RK3566 Quartz64-A Board > > > Net: No ethernet found. > > > > > > Hit any key to stop autoboot: 0 > > > => > > > > > > I just tried booting U-Boot v2023.10-rc2 with > > ROCKCHIP_TPL=rk3566_ddr_1056MHz_v1.17.bin and BL31=rk3568_bl31_v1.43.elf, > > on my Quartz64-A but it fails during > > loading of some parts. I removed the output of the RK TPL from my logs as > > there were no errors. > > Try with latest rk3566_ddr_1056MHz_v1.18.bin and see if that makes any > difference. No difference. I've also checked, there is no other maskrom bootable media such as SPI flash connected to the board. > > > This is when booting from eMMC. > > Does it boot with SD-card or other eMMC modules? Booting from SD card (without eMMC connected), everything works fine. > > > I also tried building your branch from > > https://github.com/Kwiboo/u-boot-rockchip/tree/rk3568-2023.10 and > > Please try with a GitHub actions built u-boot-rockchip.bin based on my > rk3568-2023.07.02 branch at > https://github.com/Kwiboo/u-boot-build/actions/runs/5777761235 With that exact artifact, flashed with: > rkdeveloptool db rk356x_spl_loader_v1.18.113.bin > rkdeveloptool ef > rkdeveloptool wl 64 u-boot-rockchip.bin > rkdeveloptool rd it fails to boot with with: > DDR V1.18 f366f69a7d typ 23/07/17-15:48:58 > ln > LP4/4x derate en, other dram:1x trefi > SRX > ddrconfig:7 > LPDDR4X, 324MHz > BW=32 Col=10 Bk=8 CS0 Row=17 CS1 Row=17 CS=2 Die BW=8 Size=8192MB > > change to: 324MHz > clk skew:0x60 > > change to: 528MHz > clk skew:0x58 > > change to: 780MHz > clk skew:0x58 > > change to: 1056MHz(final freq) > clk skew:0x32 > out > > U-Boot SPL 2023.07.02-g09919887 (Aug 06 2023 - 16:59:31 +0000) > Trying to boot from MMC1 > spl: mmc init failed with error: -70 > Trying to boot from MMC2 > Card did not respond to voltage select! : -110 > spl: mmc init failed with error: -95 > Trying to boot from MMC1 > mmc fail to send stop cmd > mmc_load_image_raw_sector: mmc block read error > SPL: failed to boot from all boot devices > ### ERROR ### Please RESET the board ### I also tried a second eMMC, but it also failed to boot with the same "mmc block read error" message. > > What happens if you write u-boot-rockchip.bin to eMMC module usinga USB > adapter: > > dd if=u-boot-rockchip.bin of=/dev/<device> bs=32k seek=1 conv=fsync > > or using U-Boot cmd when booted from a SD-card? > > # Read u-boot-rockchip.bin from first partition of a SD card > load mmc 1:1 10000000 u-boot-rockchip.bin > > # Change to eMMC > mmc dev 0 > > # Write 10 MiB (0x5000 blocks) at sector 64 (0x40) > mmc write $fileaddr 40 5000 > > Does that make any difference? I don't think I have an eMMC writer for Pine64 eMMCs, I will try to get hold of one this week. But it fails to write to the eMMC with: > => load mmc 1:2 10000000 u-boot-rockchip.bin > 9510400 bytes read in 791 ms (11.5 MiB/s) > > => mmc dev 0 > switch to partitions #0, OK > mmc0(part 0) is current device > > > => mmc write $fileaddr 40 5000 > MMC write: dev # 0, block # 64, count 20480 ... mmc write failed > 0 blocks written: ERROR > > => mmc info > Device: mmc@fe310000 > Manufacturer ID: 45 > OEM: 0 > Name: DF4016 > Bus Speed: 52000000 > Mode: MMC DDR52 (52MHz) > Rd Block Len: 512 > MMC version 5.1 > High Capacity: Yes > Capacity: 14.7 GiB > Bus Width: 8-bit DDR > Erase Group Size: 512 KiB > HC WP Group Size: 8 MiB > User Capacity: 14.7 GiB WRREL > Boot Capacity: 4 MiB ENH > RPMB Capacity: 4 MiB ENH I think this points to some issue with the mmc driver in U-Boot, or possibly some issue with my board. But I find that hard to believe because the Rockchip usbloader seems to write to the eMMC just fine ? > > > > > Boot log (v2023.10-rc2): > > > > U-Boot SPL 2023.10-rc2 (Aug 08 2023 - 14:02:34 +0100) > > rockchip_sdhci_probe clk set rate fail! > > Trying to boot from MMC1 > > spl: mmc init failed with error: -110 > > Trying to boot from MMC2 > > Card did not respond to voltage select! : -110 > > spl: mmc init failed with error: -95 > > Trying to boot from MMC1 > > Strange that second try of eMMC (MMC1) gets little bit longer. > > > ## Checking hash(es) for config config-1 ... OK > > ## Checking hash(es) for Image atf-1 ... sha256+ OK > > spl_load_simple_fit: can't load image loadables index 0 (ret = -5) > > mmc_load_image_raw_sector: mmc block read error > > SPL: failed to boot from all boot devices > > ### ERROR ### Please RESET the board ### > > > > > > Boot log (your branch): > > > > U-Boot SPL 2023.10-rc1-00368-g16cb31d427 (Aug 08 2023 - 15:17:35 +0100) > > Trying to boot from MMC1 > > spl: mmc init failed with error: -70 > > Trying to boot from MMC2 > > Card did not respond to voltage select! : -110 > > spl: mmc init failed with error: -95 > > Trying to boot from MMC1 > > ## Checking hash(es) for config config-1 ... OK > > mmc_load_image_raw_sector: mmc block read error > > SPL: failed to boot from all boot devices > > ### ERROR ### Please RESET the board ### > > I have not been able to reproduce this kind of issue on any of my two > Quartz64-A boards, tested with different eMMC modules. > > Does your eMMC module have some compatibility issue? > Do you have any more details on the eMMC module you have tested with? I have two eMMCs, one from FORESEE which came with a Pine64 and one marked SanDisk (which I posted the mmc info for above). My hardware is marked Quartz64-RK3399-V2.0 2021-04-27 Maybe there is some difference with your board? I will also try an image with vendor u-boot as a next step. > There was also some clk and pinctrl changes recently merged into master > branch, but they was probably included in the build from my branch based > on the lack of "rockchip_sdhci_probe clk set rate fail!" message. I tried with your build, but I will investigate more with master. Thanks! Chris