unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Vagrant Cascadian <vagrant@debian.org>
To: Simon South <simon@simonsouth.net>, help-guix@gnu.org
Subject: Re: Building installation image for ROCK64
Date: Sat, 11 Apr 2020 14:12:03 -0700	[thread overview]
Message-ID: <877dyl7mn0.fsf@yucca> (raw)
In-Reply-To: <87sgh9iz1v.fsf@simonsouth.net>

[-- Attachment #1: Type: text/plain, Size: 2749 bytes --]

On 2020-04-11, Simon South wrote:
> Has anyone successfully built an installation image for a PINE64 ROCK64
> ARM SBC?

I haven't tested it yet...

>
> There's a definition for it in gnu/system/install.scm, but building the
> image with
>
>   guix system disk-image --system=aarch64-linux \
>     -e "(@ (gnu system install) rock64-installation-os)"
>
> and writing it to a microSD card fails to boot completely as the root
> filesystem can't be mounted:

Sounds like the bootloader actually works, so not *completely* ! :)

>   GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
>   GC Warning: Couldn't read /proc/stat
>   Welcome, this is GNU's early boot Guile.
>   Use '--repl' for an initrd REPL.
>
>   loading kernel modules...
>   waiting for partition '416bf41b-f6b1-2062-6e00-1979416bf41b' to appear...
>   waiting for partition '416bf41b-f6b1-2062-6e00-1979416bf41b' to appear...
>   (...)
>   waiting for partition '416bf41b-f6b1-2062-6e00-1979416bf41b' to appear...
>   ERROR: In procedure scm-error:
>   failed to resolve partition "416bf41b-f6b1-2062-6e00-1979416bf41b"
>   
> (I've checked and the GUID above does match the root partition.) I
> understand this often means a necessary kernel module is missing from
> initrd
...
>    (kernel linux-libre)
>    (kernel-arguments
>     (cons "console=ttyS2"
>           (operating-system-user-kernel-arguments installation-os)))
>    (initrd-modules (append '("dw_mmc" "dw_mmc-rockchip") %base-initrd-modules)))

You're probably missing some voltage regulators and a handful of other
things...

This might avoid playing whack-a-mole with arbitrarily complex sets of drivers:

   (kernel linux-libre-arm64-generic)
   (initrd-modules '())

I've been using the linux-libre-arm*-generic* kernels for precisely this
reason; they tend to have the drivers built-in and the configs are
maintained upstream reasonably well. Also happen to be the first
platforms supporting linux-libre 5.6.x in guix master... :)


The *-generic kernels won't work for complex setups (e.g. encrypted
rootfs), so at some point it might be good to try and figure out a
helper or something to parse one or more relevent device-tree and kernel
config to generate the right set of modules. So I'd lean towards some
way to include more modules in the initrd by default, while handling
that some might be built-ins or not present for certain architectures,
etc...


I have a single rootfs that boots on both the pinebook and pinebook-pro
(switching out the boot firmware only), which are pretty different under
the hood, so it would be nice to not have to make an image that was
device-specific.


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

  reply	other threads:[~2020-04-11 21:12 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-11 19:48 Building installation image for ROCK64 Simon South
2020-04-11 21:12 ` Vagrant Cascadian [this message]
2020-04-12 16:19   ` Simon South
2020-04-26 14:31   ` Simon South
2020-04-26 17:09     ` Vagrant Cascadian
2020-04-27 13:19       ` Simon South
2020-04-27 17:22         ` Vagrant Cascadian
2020-04-12 10:18 ` Pierre Langlois
2020-04-12 10:27   ` Pierre Langlois
2020-04-12 16:25   ` Simon South

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877dyl7mn0.fsf@yucca \
    --to=vagrant@debian.org \
    --cc=help-guix@gnu.org \
    --cc=simon@simonsouth.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).