unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Vagrant Cascadian <vagrant@debian.org>
To: Brian Woodcox <bw@inskydata.com>, 40835@debbugs.gnu.org
Subject: [bug#40835] [PATCH] Update to use panfrost for graphics hardware acceleration
Date: Mon, 27 Apr 2020 11:15:02 -0700	[thread overview]
Message-ID: <87lfmgvlqx.fsf@ponder> (raw)
In-Reply-To: <54EFA16B-27F2-40F4-8FF0-F59BC65BF8AB@inskydata.com>

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

On 2020-04-24, Brian Woodcox wrote:
> These patches add the panfrost graphics acceleration for the Pinebook
> Pro laptop.

Thanks! Been working with the pinebook pro for some months now running
guix, and it's great to see others making progress on it. :)


> You need to edit the /boot/extlinux/extlinux.conf file on the SD card and alter the FDTDIR line.
>
> I changed mine from
>
> FDTDIR /gnu/store/ls1byzmapi911cylh4s6044x0cmc61c8-linux-libre-pinebook-pro-5.6.0/lib/dtbs
>
> to
>
> FDTDIR /gnu/store/ls1byzmapi911cylh4s6044x0cmc61c8-linux-libre-pinebook-pro-5.6.0/lib/dtbs/rockchip

The u-boot-pinebook-pro-rk3399 on guix master works correctly as well as
the one from wip-pinebook-pro (should be the same).

This seems like your u-boot does not contain the correct value for
"fdtfile". It should be rockchip/rk3399-pinebook-pro.dtb. Are you
actually running an older u-boot? Did you at any point run saveenv from
u-boot, which saves the old u-boot configuration with an inappropriate
fdtfile variable?


It would be better to split up your patches into a separate patch
series, it is hard to review as one single large patch changing many
things.

A few targeted comments below...

> diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
> index 01241cd88e..65fe389927 100644
> --- a/gnu/packages/gl.scm
> +++ b/gnu/packages/gl.scm
> @@ -293,7 +294,7 @@ also known as DXTn or DXTC) for Mesa.")
>         '(,@(match (%current-system)
>               ((or "armhf-linux" "aarch64-linux")
>                ;; TODO: Fix svga driver for aarch64 and armhf.
> -              '("-Dgallium-drivers=etnaviv,freedreno,nouveau,r300,r600,swrast,tegra,v3d,vc4,virgl"))
> +              '("-Dgallium-drivers=etnaviv,freedreno,kmsro,lima,nouveau,panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
>               (_
>                '("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
>           ;; Enable various optional features.  TODO: opencl requires libclc,

This last part of your mesa patch is already on core-updates. Looking
forward to when the rest is properly supported upstream!


> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index dd088ea24f..d4a36533ab 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -326,7 +327,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
>                    (with-directory-excursion dir
>                      (setenv "PYTHON" (which "python"))
>                      (format #t "Running deblob script...~%")
> -                    (force-output)
> +                    (force-output))
>                      (invoke "/tmp/bin/deblob"))
> 
>                    (format #t "~%Packing new Linux-libre tarball...~%")

This looks like leftovers from your hack breaking linux-libre :P


> @@ -604,6 +605,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
>      ("CONFIG_SECURITY_DMESG_RESTRICT" . #t)
>      ;; All kernels should have NAMESPACES options enabled
>      ("CONFIG_NAMESPACES" . #t)
> +    ("CONFIG_DRM_PANFROST" . #t)
>      ("CONFIG_UTS_NS" . #t)
>      ("CONFIG_IPC_NS" . #t)
>      ("CONFIG_USER_NS" . #t)

This obviously can't be enabled on all architectures. In the
linux-libre-arm64-generic and linux-libre-pinebook-pro kernels it's
already enabled as a module.

It obviously makes debugging easier to be available earlier, but it also
bloats platforms that do not use this driver.


> diff --git a/gnu/packages/patches/mesa-skip-disk-cache-test.patch b/gnu/packages/patches/mesa-skip-disk-cache-test.patch
> index 190f6b6ee1..585bf4f648 100644
> --- a/gnu/packages/patches/mesa-skip-disk-cache-test.patch
> +++ b/gnu/packages/patches/mesa-skip-disk-cache-test.patch
> @@ -1,11 +1,6 @@
> -disk_cache_create() here looks up the users home directory from <pwd.h>
> -which resolves to "/" in the build environment. I could not find an easy
> -way to set the home directory to something else, so we disable this test
> -for now.
> -
>  --- a/src/compiler/glsl/tests/cache_test.c
>  +++ b/src/compiler/glsl/tests/cache_test.c
> -@@ -170,11 +170,6 @@
> +@@ -219,11 +219,6 @@
>      unsetenv("MESA_GLSL_CACHE_DIR");
>      unsetenv("XDG_CACHE_HOME");
  
This removes a comment from the refreshed patch; I presume the comment
is still appropriate, though?


> diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
> index 8696dc4bb6..a1e7684964 100644
> --- a/gnu/packages/qt.scm
> +++ b/gnu/packages/qt.scm
> @@ -15,6 +15,7 @@
>  ;;; Copyright © 2018 John Soo <jsoo1@asu.edu>
>  ;;; Copyright © 2020 Mike Rosset <mike.rosset@gmail.com>
>  ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
> +;;; Copyright © 2020 Brian C. Woodcox <bw@InSkyData.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -485,6 +486,7 @@ developers using C++ or QML, a CSS & JavaScript like language.")
>                   "-no-compile-examples"
>                   ;; Most "-system-..." are automatic, but some use
>                   ;; the bundled copy by default.
> +                 "-opengl" "es2"
>                   "-system-sqlite"
>                   "-system-harfbuzz"
>                   "-system-pcre"

This might break some things where a different opengl is the default,
some architectures or platforms may require a different opengl
implementation.

I seem to recall some conversations in Debian about the complexities
around which opengl to enable per-architecture or per-platform or ... a
complicated matrix of concerns.


live well,
  vagrant

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

  reply	other threads:[~2020-04-27 18:16 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-24 23:58 [bug#40835] [PATCH] Update to use panfrost for graphics hardware acceleration Brian Woodcox
2020-04-27 18:15 ` Vagrant Cascadian [this message]
2020-04-27 21:17   ` Brian Woodcox
2020-04-27 21:54     ` Vagrant Cascadian
2020-04-27 22:36       ` Brian Woodcox
2020-04-27 22:48         ` Vagrant Cascadian
2020-04-27 22:51           ` Brian Woodcox
2020-04-28  6:54             ` Vagrant Cascadian
2020-05-02 20:37               ` Brian Woodcox

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=87lfmgvlqx.fsf@ponder \
    --to=vagrant@debian.org \
    --cc=40835@debbugs.gnu.org \
    --cc=bw@inskydata.com \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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).