Hello, apologies for the noob question and also if this is already answered somewhere and I haven't managed to find it, but I have managed to build the U-boot loader and load it onto an SD card. I can see that when running from the SD card on the rockPro64 that the NVMe drive is correctly identified and that the /boot/boot.scr is read and loaded and things seem to start off nicely. Then there is a "Device nor0 not found!" message (not sure how significant this is) and then the boot just hangs at the "Starting kernel ..." stage, see below:
U-Boot 2020.01-01987-g335875f1f5 (Jul 04 2020 - 16:09:43 +0100)
Model: Pine64 RockPro64
DRAM: 3.9 GiB
PMIC: RK808
MMC: dwmmc@fe320000: 1, sdhci@fe330000: 0
Loading Environment from MMC... Card did not respond to voltage select!
*** Warning - No block device, using default environment
In: serial@ff1a0000
Out: serial@ff1a0000
Err: serial@ff1a0000
Model: Pine64 RockPro64
Net: eth0: ethernet@fe300000
Hit any key to stop autoboot: 0
Card did not respond to voltage select!
switch to partitions #0, OK
mmc1 is current device
Scanning mmc 1:1...
Scanning mmc 1:2...
PCIE-0: Link up (Bus0)
Device 0: Vendor: 0x2646 Rev: S5Z42105 Prod: 50026B7282510DDF
Type: Hard Disk
Capacity: 238475.1 MB = 232.8 GB (488397168 x 512)
... is now current device
Scanning nvme 0:1...
Found U-Boot script /boot/boot.scr
2940 bytes read in 3 ms (957 KiB/s)
## Executing script at 00500000
Boot script loaded from nvme 0
151 bytes read in 3 ms (48.8 KiB/s)
14715101 bytes read in 34 ms (412.7 MiB/s)
21914112 bytes read in 49 ms (426.5 MiB/s)
72702 bytes read in 4 ms (17.3 MiB/s)
2698 bytes read in 4 ms (658.2 KiB/s)
Applying kernel provided DT fixup script (rockchip-fixup.scr)
## Executing script at 39000000
## Loading init Ramdisk from Legacy Image at 06000000 ...
Image Name: uInitrd
Image Type: AArch64 Linux RAMDisk Image (gzip compressed)
Data Size: 14715037 Bytes = 14 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 01f00000
Booting using the fdt blob at 0x1f00000
Loading Ramdisk to f50f4000, end f5efc89d ... OK
Loading Device Tree to 00000000f5079000, end 00000000f50f3fff ... OK
Device nor0 not found!
Starting kernel ...
At this time other than the power LED there are no other LEDs alight on the rockPro64. I guess that my real question is, is there a particular Linux OS image that works and also what is the best way of writing the image to the NVMe drive?
Thanks for your time.
Update 09/07/20: Werhoo!!! Having copied the prebuilt mmc_idbloader.img and mmc_u-boot.itb files from the link below:
https://github.com/sigmaris/u-boot/relea...2020.01-ci
I can now boot from the NVMe drive, which by the way is a 250GB Kingston A2000. So I guess that I have made a mistake with my copy of the build, which is not surprising given that I wasn't too sure how to use the azure-pipelines.yml script so I carried out my interpretation of it. Any tips on how to run this script would be greatly appreciated. If I manage to get my copy of the build sorted then I shall look to try kicking things off from the SPI.
U-Boot 2020.01-01987-g335875f1f5 (Jul 04 2020 - 16:09:43 +0100)
Model: Pine64 RockPro64
DRAM: 3.9 GiB
PMIC: RK808
MMC: dwmmc@fe320000: 1, sdhci@fe330000: 0
Loading Environment from MMC... Card did not respond to voltage select!
*** Warning - No block device, using default environment
In: serial@ff1a0000
Out: serial@ff1a0000
Err: serial@ff1a0000
Model: Pine64 RockPro64
Net: eth0: ethernet@fe300000
Hit any key to stop autoboot: 0
Card did not respond to voltage select!
switch to partitions #0, OK
mmc1 is current device
Scanning mmc 1:1...
Scanning mmc 1:2...
PCIE-0: Link up (Bus0)
Device 0: Vendor: 0x2646 Rev: S5Z42105 Prod: 50026B7282510DDF
Type: Hard Disk
Capacity: 238475.1 MB = 232.8 GB (488397168 x 512)
... is now current device
Scanning nvme 0:1...
Found U-Boot script /boot/boot.scr
2940 bytes read in 3 ms (957 KiB/s)
## Executing script at 00500000
Boot script loaded from nvme 0
151 bytes read in 3 ms (48.8 KiB/s)
14715101 bytes read in 34 ms (412.7 MiB/s)
21914112 bytes read in 49 ms (426.5 MiB/s)
72702 bytes read in 4 ms (17.3 MiB/s)
2698 bytes read in 4 ms (658.2 KiB/s)
Applying kernel provided DT fixup script (rockchip-fixup.scr)
## Executing script at 39000000
## Loading init Ramdisk from Legacy Image at 06000000 ...
Image Name: uInitrd
Image Type: AArch64 Linux RAMDisk Image (gzip compressed)
Data Size: 14715037 Bytes = 14 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 01f00000
Booting using the fdt blob at 0x1f00000
Loading Ramdisk to f50f4000, end f5efc89d ... OK
Loading Device Tree to 00000000f5079000, end 00000000f50f3fff ... OK
Device nor0 not found!
Starting kernel ...
At this time other than the power LED there are no other LEDs alight on the rockPro64. I guess that my real question is, is there a particular Linux OS image that works and also what is the best way of writing the image to the NVMe drive?
Thanks for your time.
Update 09/07/20: Werhoo!!! Having copied the prebuilt mmc_idbloader.img and mmc_u-boot.itb files from the link below:
https://github.com/sigmaris/u-boot/relea...2020.01-ci
I can now boot from the NVMe drive, which by the way is a 250GB Kingston A2000. So I guess that I have made a mistake with my copy of the build, which is not surprising given that I wasn't too sure how to use the azure-pipelines.yml script so I carried out my interpretation of it. Any tips on how to run this script would be greatly appreciated. If I manage to get my copy of the build sorted then I shall look to try kicking things off from the SPI.