On Monday, 1 October 2018 02:19:26 CDT Alexander Graf wrote: > On 01.10.18 05:01, Walter M. Peteren wrote: > > On Monday, July 30, 2018 11:35:10 AM CDT Matwey V. Kornilov wrote: > >> 2018-07-30 14:23 GMT+03:00 Alexander Graf <[email protected]>: > >>> Hi Matwey, > >>> > >>> On 07/29/2018 01:19 PM, Matwey V. Kornilov wrote: > >>>> Hello, > >>>> > >>>> I am (stilL) trying to boot openSUSE on Rock64. I use JeOS image from > >>>> Contrib:Rockchip and manually built bootloader (with > >>>> 0001-XXX-openSUSE-XXX-Prepend-partition-.patch). And currently I see > >>>> the > >>>> following new issue: > >>>> > >>>> mmc1 is current device > >>>> Scanning mmc 1:2... > >>>> 52462 bytes read in 43 ms (1.2 MiB/s) > >>>> Failed to mount ext2 filesystem... > >>>> ** Unrecognized filesystem type ** > >>>> Scanning mmc 1:1... > >>>> Found EFI removable media binary efi/boot/bootaa64.efi > >>>> reading efi/boot/bootaa64.efi > >>>> 1247744 bytes read in 58 ms (20.5 MiB/s) > >>>> ## Starting EFI application at 02000000 ... > >>>> Card did not respond to voltage select! > >>>> mmc_init: -95, time 10 > >>>> Scanning disk [email protected]... > >>>> Scanning disk [email protected]... > >>>> Found 2 disks > >>>> Welcome to GRUB! > >>>> > >>>> ethernet@ff540000 Waiting for PHY auto negotiation to complete......... > >>>> TIMEOUT ! > >>>> Could not initialize PHY ethernet@ff540000 > >>>> > >>>> GNU GRUB version 2.02 > >>>> > >>>> Minimal BASH-like line editing is supported. For the first word, TAB > >>>> > >>>> lists possible command completions. Anywhere else TAB lists > >>>> possible > >>>> device or file completions. > >>>> > >>>> grub> > >>>> > >>>> > >>>> I see that both dtb file and EFI GRUB executable are loaded. But > >>>> instead > >>>> of GRUB menu I see GRUB command line. I suppose it means that grub > >>>> failed to fetch GRUB configuration. How could I debug further what is > >>>> wrong? > >>> > >>> Correct. Grub failed to fetch the configuration because it failed to > >>> initialize the prefix correctly. If you run "set" on the command line, > >>> you > >>> should be able to see that the prefix is wrong. You can as interim step > >>> set > >>> it manually using the set command and then run "normal". That should get > >>> you a working grub menu. > >> > >> Indeed, the prefix is (hd0)/efi/boot, instead of (hd0,gpt1)/efi/boot. > >> > >>> The really important question is why grub could not determine its prefix > >>> correctly though. What U-Boot version are you basing on? There were a > >>> few > >>> bugs with the device path exposure in 2018.05 IIRC. > >> > >> I am running downstream u-boot with rock64 support: > >> https://github.com/ayufan-rock64/linux-u-boot > >> It is based on 2017.09 > >> > >>> Alex > > > > Has anyone gotten their rock64 to boot opensuse? > > > > I have ayufan's u-boot installed to SPI. > > > > The opensuse Tumbleweed JeOS image downloaded from https:// > > download.opensuse.org/repositories/devel:/ARM:/Factory:/Contrib:/Rockchip/ > > images/ > > > > I've dd'ed the image to emmc and usb. The boot partition seems to start at > > the correct position 32768, but when the rock64 boots, I'm dropped to > > grub shell > This is most likely because of a bug in the device path logic in u-boot > versions between 2017.09 and 2017.11. > > > grub> > > grub> ls > > > > yields (hd0) (hd0,gpt3) (hd0,gpt2) (hd0,gpt1) > > > > grub> set prefix=(hd0,gpt1)/efi/boot > > grub> set root=(hdo,gpt3) > > grub> set btrfs_relative_path=yes < yes or blank yields the same > > grub> normal > > > > yields the grub menu, and whether I chose Tumbleweed or failsafe I get: > > Loading kernel... > > Loading initrd... > > EFI stub: Booting Linux Kernel... > > EFI stub: EFI_RNG_PROTOCOL unavailable, no randomness supplied > > EFI stub: ERROR: Could not determine UEFI Secure Boot status. > > EFI stub: Using DTB from configuration table > > EFI stub: Exiting boot services and installing virtual address map > > > > and that's as far as it gets. > > That means Linux booted. It's a matter of fiddling with DT and kernel > command line options to also make it show something.
Thanks for the reply. I've tried setting earlycon=uart8250,0xff130000 (I got the memory address from the dtb file - not sure that it is correct) but it stops booting in the same spot. Also, earlycon is set to yes in the opensuse config-4.18.8-1-default file so this may not even be needed. > > Does your device tree contain a /chosen node with an stdout-path > property? In that case, passing "earlycon" on the kernel command line > might already be enough. Using dtc to decompile the rk3228-rock64.dtb file I found: stdout-path = "serial2:1500000n8" and serial2 = "/serial@ff130000" Mark > > > Alex > > > My internet searches don't provide me with a howto on grub with btrfs and > > the man page for grub2-editenv is very sparse. > > > > Thanks for any help. > > > > Mark -- To unsubscribe, e-mail: [email protected] To contact the owner, e-mail: [email protected]
