diff mbox series

[bug#56200,v2] gnu: linux-libre: Enable the AMD HSA driver.

Message ID e87igmgsRjri0FJY_3I3lojHFkfLLDjmCR2jUTCX6E384kgr_QAUY0JjK2bxBbg6nOKC6SDXjowggvlL-LTK3a9Crli_fVW5t6XrjLSM930=@protonmail.com
State Accepted
Headers show
Series [bug#56200,v2] gnu: linux-libre: Enable the AMD HSA driver. | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

John Kehayias June 29, 2022, 12:38 a.m. UTC
Hi Leo,

------- Original Message -------
On Tuesday, June 28th, 2022 at 4:30 PM, Leo Famulari wrote:
>
> Don't worry too much about the commit message. The only thing to change
> is that the commit title should begin with 'gnu', which is how we denote
> that the change touches the software distribution portion of guix.git,
> as compared to 'guix', 'doc', 'build', etc. But I would normally handle
> that without mentioning it to the patch submitter.
>

I'm decent with package patch notes now, but wasn't sure how the kernel config fit in. I did look for examples but must have found one that missed the convention.

> > * gnu/packages/aux-files/linux-libre/5.18-x86_64.conf: Enable the AMD
> > Heterogeneous System Architecture (HSA) driver.
>
>
> Grepping for 'HSA_AMD' in guix.git:
>
> ------
> $ git grep HSA_AMD
> gnu/packages/aux-files/linux-libre/4.14-x86_64.conf:CONFIG_HSA_AMD=m
> gnu/packages/aux-files/linux-libre/4.19-x86_64.conf:CONFIG_HSA_AMD=m
> gnu/packages/aux-files/linux-libre/4.9-x86_64.conf:CONFIG_HSA_AMD=m
> gnu/packages/aux-files/linux-libre/5.10-arm64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.10-x86_64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.15-arm64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.15-x86_64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.18-arm64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.18-x86_64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.4-arm64.conf:# CONFIG_HSA_AMD is not set
> gnu/packages/aux-files/linux-libre/5.4-x86_64.conf:# CONFIG_HSA_AMD is not set
> ------
>
> Yes, there is actually some 64-bit ARM hardware by AMD.
>
> Anyways, I recommend enabling it in all the configs where it is
> currently not set. What do you think? If that's a good idea, can you
> send a revised patch?
>
> Don't worry about building all the kernels if that's a burden; I'll
> check that they build before pushing.
>

I've attached a v2 of the patch that sets it for all the configurations where the option was listed. Note that a few had it "enabled" with setting it to "m", but I don't think that does anything, per my testing. And looking at the documentation, seems like it should be "y": https://www.kernelconfig.io/config_hsa_amd

I did not build any of the other kernels, but how does that look now?

Thanks again!
John

Comments

Leo Famulari June 29, 2022, 1:05 a.m. UTC | #1
On Wed, Jun 29, 2022 at 12:38:56AM +0000, John Kehayias wrote:
> I've attached a v2 of the patch that sets it for all the configurations where the option was listed. Note that a few had it "enabled" with setting it to "m", but I don't think that does anything, per my testing. And looking at the documentation, seems like it should be "y": https://www.kernelconfig.io/config_hsa_amd

I think the changes for our configs before version 5.4 are unnecessary.

I checked out the source code of linux-libre 4.9.316 and copied our 4.9
config and removed the CONFIG_HSA_AMD line.

Then, I did `make oldconfig` within ` guix environment linux-libre
--ad-hoc gcc-toolchain`, and it offered me a choice between N and m for
this option.

So, I think they changed this feature so that it can no longer be a
module in version 4.20. Check the "found in Linux kernels" info here:

https://cateee.net/lkddb/web-lkddb/HSA_AMD.html

I removed the changes to the configs for 4.9, 4.14, and 4.19, and pushed
to a WIP branch for final testing:

https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-linux-libre-5.18

I'll build kernels for x86_64 on the build farm, so substitutes will be
available for testing after a few hours.
Leo Famulari June 29, 2022, 12:55 p.m. UTC | #2
On Tue, Jun 28, 2022 at 09:05:24PM -0400, Leo Famulari wrote:
> I removed the changes to the configs for 4.9, 4.14, and 4.19, and pushed
> to a WIP branch for final testing:
> 
> https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-linux-libre-5.18
> 
> I'll build kernels for x86_64 on the build farm, so substitutes will be
> available for testing after a few hours.

Pushed as 44f2c7c2ca5d0a275c61d5bfd9dde1205590504b

Thanks for working on this!
John Kehayias June 29, 2022, 4:17 p.m. UTC | #3
Thanks for all your kernel work, Leo!

(Thanks for tracking down the y or m option, I was confused about that and having a hard time seeing explicitly which versions had the module option.)
diff mbox series

Patch

From 3adb2143ba54b3c0751bda7c8b06ad9f02681b65 Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
Date: Mon, 27 Jun 2022 00:33:54 -0400
Subject: [PATCH] gnu: linux-libre: Enable the AMD HSA driver.

* gnu/packages/aux-files/linux-libre/4.14-x86_64.conf
gnu/packages/aux-files/linux-libre/4.19-x86_64.conf,
gnu/packages/aux-files/linux-libre/4.9-x86_64.conf,
gnu/packages/aux-files/linux-libre/5.10-arm64.conf,
gnu/packages/aux-files/linux-libre/5.10-x86_64.conf,
gnu/packages/aux-files/linux-libre/5.15-arm64.conf,
gnu/packages/aux-files/linux-libre/5.15-x86_64.conf,
gnu/packages/aux-files/linux-libre/5.18-arm64.conf,
gnu/packages/aux-files/linux-libre/5.18-x86_64.conf,
gnu/packages/aux-files/linux-libre/5.4-arm64.conf,
gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: Enable the AMD
Heterogeneous System Architecture (HSA) driver.
---
 gnu/packages/aux-files/linux-libre/4.14-x86_64.conf | 2 +-
 gnu/packages/aux-files/linux-libre/4.19-x86_64.conf | 2 +-
 gnu/packages/aux-files/linux-libre/4.9-x86_64.conf  | 2 +-
 gnu/packages/aux-files/linux-libre/5.10-arm64.conf  | 2 +-
 gnu/packages/aux-files/linux-libre/5.10-x86_64.conf | 2 +-
 gnu/packages/aux-files/linux-libre/5.15-arm64.conf  | 2 +-
 gnu/packages/aux-files/linux-libre/5.15-x86_64.conf | 2 +-
 gnu/packages/aux-files/linux-libre/5.18-arm64.conf  | 2 +-
 gnu/packages/aux-files/linux-libre/5.18-x86_64.conf | 2 +-
 gnu/packages/aux-files/linux-libre/5.4-arm64.conf   | 2 +-
 gnu/packages/aux-files/linux-libre/5.4-x86_64.conf  | 2 +-
 11 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf
index 3953ee9104..86445b40ba 100644
--- a/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf
@@ -5683,7 +5683,7 @@  CONFIG_DRM_PANEL_BRIDGE=y
 # Display Interface Bridges
 #
 CONFIG_DRM_ANALOGIX_ANX78XX=m
-CONFIG_HSA_AMD=m
+CONFIG_HSA_AMD=y
 CONFIG_DRM_HISI_HIBMC=m
 # CONFIG_DRM_TINYDRM is not set
 # CONFIG_DRM_LEGACY is not set
diff --git a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
index 24148dcf6f..4ae1aa33f0 100644
--- a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
@@ -5894,7 +5894,7 @@  CONFIG_DRM_PANEL_BRIDGE=y
 # Display Interface Bridges
 #
 CONFIG_DRM_ANALOGIX_ANX78XX=m
-CONFIG_HSA_AMD=m
+CONFIG_HSA_AMD=y
 CONFIG_DRM_HISI_HIBMC=m
 # CONFIG_DRM_TINYDRM is not set
 CONFIG_DRM_XEN=y
diff --git a/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf
index 8d47127ece..afc7973373 100644
--- a/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf
@@ -5465,7 +5465,7 @@  CONFIG_DRM_BRIDGE=y
 # Display Interface Bridges
 #
 CONFIG_DRM_ANALOGIX_ANX78XX=m
-CONFIG_HSA_AMD=m
+CONFIG_HSA_AMD=y
 # CONFIG_DRM_LEGACY is not set
 
 #
diff --git a/gnu/packages/aux-files/linux-libre/5.10-arm64.conf b/gnu/packages/aux-files/linux-libre/5.10-arm64.conf
index a612819ee9..046c310d85 100644
--- a/gnu/packages/aux-files/linux-libre/5.10-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.10-arm64.conf
@@ -5848,7 +5848,7 @@  CONFIG_DRM_AMD_DC=y
 CONFIG_DRM_AMD_DC_SI=y
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_PLATFORM_DRIVER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.10-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.10-x86_64.conf
index 4dfb742813..2760c71f62 100644
--- a/gnu/packages/aux-files/linux-libre/5.10-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.10-x86_64.conf
@@ -6304,7 +6304,7 @@  CONFIG_DRM_AMD_DC_SI=y
 # CONFIG_DEBUG_KERNEL_DC is not set
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_DEBUG=5
diff --git a/gnu/packages/aux-files/linux-libre/5.15-arm64.conf b/gnu/packages/aux-files/linux-libre/5.15-arm64.conf
index d67461d051..3a3d144330 100644
--- a/gnu/packages/aux-files/linux-libre/5.15-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.15-arm64.conf
@@ -6100,7 +6100,7 @@  CONFIG_DRM_AMD_DC=y
 CONFIG_DRM_AMD_DC_SI=y
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_PLATFORM_DRIVER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.15-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.15-x86_64.conf
index abb1c98fcb..8fbb48bcb6 100644
--- a/gnu/packages/aux-files/linux-libre/5.15-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.15-x86_64.conf
@@ -6482,7 +6482,7 @@  CONFIG_DRM_AMD_DC_DCN=y
 CONFIG_DRM_AMD_SECURE_DISPLAY=y
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_DEBUG=5
diff --git a/gnu/packages/aux-files/linux-libre/5.18-arm64.conf b/gnu/packages/aux-files/linux-libre/5.18-arm64.conf
index 0175565bf3..929b0a128c 100644
--- a/gnu/packages/aux-files/linux-libre/5.18-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.18-arm64.conf
@@ -6265,7 +6265,7 @@  CONFIG_DRM_AMD_DC=y
 CONFIG_DRM_AMD_DC_SI=y
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_PLATFORM_DRIVER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.18-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.18-x86_64.conf
index 658e01187b..c8502e42c8 100644
--- a/gnu/packages/aux-files/linux-libre/5.18-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.18-x86_64.conf
@@ -6687,7 +6687,7 @@  CONFIG_DRM_AMD_DC_DCN=y
 CONFIG_DRM_AMD_SECURE_DISPLAY=y
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_DEBUG=5
diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
index d2ba5871e0..3b05083301 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
@@ -5523,7 +5523,7 @@  CONFIG_DRM_AMD_DC=y
 # CONFIG_DEBUG_KERNEL_DC is not set
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_PLATFORM_DRIVER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
index 7cf92478c1..7325ac21fc 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
@@ -6108,7 +6108,7 @@  CONFIG_DRM_AMD_DC_DSC_SUPPORT=y
 # CONFIG_DEBUG_KERNEL_DC is not set
 # end of Display Engine Configuration
 
-# CONFIG_HSA_AMD is not set
+CONFIG_HSA_AMD=y
 CONFIG_DRM_NOUVEAU=m
 # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
 CONFIG_NOUVEAU_DEBUG=5
-- 
2.36.1