Skip to content

Commit e1c0314

Browse files
authored
Merge pull request #320 from mgsharm/amd-gpu-support-dkms
Out of tree AMD GPU support
2 parents 7c0a2cb + 77c7eec commit e1c0314

File tree

12 files changed

+182
-64
lines changed

12 files changed

+182
-64
lines changed

Cargo.lock

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ members = [
77
"packages/kernel-6.12",
88
"packages/kmod-6.1-nvidia-r570",
99
"packages/kmod-6.1-nvidia-r580",
10+
"packages/kmod-6.12-amdgpu",
1011
"packages/kmod-6.12-nvidia-r570",
1112
"packages/kmod-6.12-nvidia-r580",
1213
"packages/nvidia-migmanager",

kits/bottlerocket-kernel-kit/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ kernel-6_1 = { path = "../../packages/kernel-6.1" }
1717
kernel-6_12 = { path = "../../packages/kernel-6.12" }
1818
kmod-6_1-nvidia-r570 = { path = "../../packages/kmod-6.1-nvidia-r570" }
1919
kmod-6_1-nvidia-r580 = { path = "../../packages/kmod-6.1-nvidia-r580" }
20+
kmod-6_12-amdgpu = { path = "../../packages/kmod-6.12-amdgpu" }
2021
kmod-6_12-nvidia-r570 = { path = "../../packages/kmod-6.12-nvidia-r570" }
2122
kmod-6_12-nvidia-r580 = { path = "../../packages/kmod-6.12-nvidia-r580" }
2223
nvidia-migmanager = { path = "../../packages/nvidia-migmanager" }
Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,36 @@
1-
From 574ee6cf29164ce587f525434611a76e10e4cc6e Mon Sep 17 00:00:00 2001
1+
From d5ea71a04d5d11a31b686ebcc92f44e5e0419d46 Mon Sep 17 00:00:00 2001
22
From: Martin Harriman <[email protected]>
33
Date: Sun, 30 Mar 2025 22:36:38 +0000
4-
Subject: [PATCH] Select prerequisites for gpu drivers
4+
Subject: [PATCH] drm/simpledrm: Select prerequisites for gpu drivers
55

6+
Select DRM subsystem components needed for GPU driver support including
7+
display helpers (DP, HDMI, HDCP), execution context management, buddy
8+
allocator, scheduler, TTM memory management, and panel backlight quirks.
9+
10+
Signed-off-by: Martin Harriman <[email protected]>
11+
Signed-off-by: Gaurav Sharma <[email protected]>
612
---
7-
drivers/gpu/drm/tiny/Kconfig | 6 ++++++
8-
1 file changed, 6 insertions(+)
13+
drivers/gpu/drm/tiny/Kconfig | 7 +++++++
14+
1 file changed, 7 insertions(+)
915

1016
diff --git a/drivers/gpu/drm/tiny/Kconfig b/drivers/gpu/drm/tiny/Kconfig
11-
index f6889f649..98b597e13 100644
17+
index ce17143d4..5b772e8a0 100644
1218
--- a/drivers/gpu/drm/tiny/Kconfig
1319
+++ b/drivers/gpu/drm/tiny/Kconfig
14-
@@ -85,6 +85,12 @@ config DRM_SIMPLEDRM
20+
@@ -86,6 +86,13 @@ config DRM_SIMPLEDRM
1521
select APERTURE_HELPERS
1622
select DRM_GEM_SHMEM_HELPER
1723
select DRM_KMS_HELPER
1824
+ select DRM_DISPLAY_DP_HELPER
1925
+ select DRM_DISPLAY_HELPER
20-
+ select DRM_KMS_HELPER
2126
+ select DRM_SUBALLOC_HELPER
2227
+ select DRM_TTM
2328
+ select DRM_TTM_HELPER
29+
+ select DRM_DISPLAY_HDCP_HELPER
30+
+ select DRM_DISPLAY_HDMI_HELPER
2431
help
2532
DRM driver for simple platform-provided framebuffers.
2633

2734
--
28-
2.47.1
35+
2.51.0
2936

packages/kernel-6.12/config-bottlerocket

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,3 +255,6 @@ CONFIG_INFINIBAND_USER_MAD=m
255255

256256
# Enable CephFS SELinux labels
257257
CONFIG_CEPH_FS_SECURITY_LABEL=y
258+
259+
# Disable in-tree AMD driver
260+
# CONFIG_DRM_AMDGPU is not set

packages/kernel-6.12/config-full-bottlerocket-aarch64

Lines changed: 1 addition & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3932,12 +3932,9 @@ CONFIG_DRM_DISPLAY_DP_HELPER=y
39323932
CONFIG_DRM_DISPLAY_HDCP_HELPER=y
39333933
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
39343934
CONFIG_DRM_TTM=m
3935-
CONFIG_DRM_EXEC=m
3936-
CONFIG_DRM_BUDDY=m
39373935
CONFIG_DRM_TTM_HELPER=m
39383936
CONFIG_DRM_GEM_SHMEM_HELPER=m
39393937
CONFIG_DRM_SUBALLOC_HELPER=m
3940-
CONFIG_DRM_SCHED=m
39413938

39423939
#
39433940
# I2C encoder or helper chips
@@ -3957,28 +3954,7 @@ CONFIG_DRM_SCHED=m
39573954
# end of ARM devices
39583955

39593956
# CONFIG_DRM_RADEON is not set
3960-
CONFIG_DRM_AMDGPU=m
3961-
# CONFIG_DRM_AMDGPU_SI is not set
3962-
# CONFIG_DRM_AMDGPU_CIK is not set
3963-
# CONFIG_DRM_AMDGPU_USERPTR is not set
3964-
# CONFIG_DRM_AMD_ISP is not set
3965-
# CONFIG_DRM_AMDGPU_WERROR is not set
3966-
3967-
#
3968-
# ACP (Audio CoProcessor) Configuration
3969-
#
3970-
# CONFIG_DRM_AMD_ACP is not set
3971-
# end of ACP (Audio CoProcessor) Configuration
3972-
3973-
#
3974-
# Display Engine Configuration
3975-
#
3976-
CONFIG_DRM_AMD_DC=y
3977-
CONFIG_DRM_AMD_DC_FP=y
3978-
# CONFIG_DRM_AMD_SECURE_DISPLAY is not set
3979-
# end of Display Engine Configuration
3980-
3981-
# CONFIG_HSA_AMD is not set
3957+
# CONFIG_DRM_AMDGPU is not set
39823958
# CONFIG_DRM_NOUVEAU is not set
39833959
# CONFIG_DRM_XE is not set
39843960
# CONFIG_DRM_VGEM is not set

packages/kernel-6.12/config-full-bottlerocket-x86_64

Lines changed: 1 addition & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3609,12 +3609,9 @@ CONFIG_DRM_DISPLAY_DP_HELPER=y
36093609
CONFIG_DRM_DISPLAY_HDCP_HELPER=y
36103610
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
36113611
CONFIG_DRM_TTM=m
3612-
CONFIG_DRM_EXEC=m
3613-
CONFIG_DRM_BUDDY=m
36143612
CONFIG_DRM_TTM_HELPER=m
36153613
CONFIG_DRM_GEM_SHMEM_HELPER=m
36163614
CONFIG_DRM_SUBALLOC_HELPER=m
3617-
CONFIG_DRM_SCHED=m
36183615

36193616
#
36203617
# I2C encoder or helper chips
@@ -3631,28 +3628,7 @@ CONFIG_DRM_SCHED=m
36313628
# end of ARM devices
36323629

36333630
# CONFIG_DRM_RADEON is not set
3634-
CONFIG_DRM_AMDGPU=m
3635-
# CONFIG_DRM_AMDGPU_SI is not set
3636-
# CONFIG_DRM_AMDGPU_CIK is not set
3637-
# CONFIG_DRM_AMDGPU_USERPTR is not set
3638-
# CONFIG_DRM_AMD_ISP is not set
3639-
# CONFIG_DRM_AMDGPU_WERROR is not set
3640-
3641-
#
3642-
# ACP (Audio CoProcessor) Configuration
3643-
#
3644-
# CONFIG_DRM_AMD_ACP is not set
3645-
# end of ACP (Audio CoProcessor) Configuration
3646-
3647-
#
3648-
# Display Engine Configuration
3649-
#
3650-
CONFIG_DRM_AMD_DC=y
3651-
CONFIG_DRM_AMD_DC_FP=y
3652-
# CONFIG_DRM_AMD_SECURE_DISPLAY is not set
3653-
# end of Display Engine Configuration
3654-
3655-
# CONFIG_HSA_AMD is not set
3631+
# CONFIG_DRM_AMDGPU is not set
36563632
# CONFIG_DRM_NOUVEAU is not set
36573633
# CONFIG_DRM_I915 is not set
36583634
# CONFIG_DRM_XE is not set

packages/kernel-6.12/kernel-6.12.spec

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -726,12 +726,6 @@ install -p -m 0644 %{S:301} %{buildroot}%{_cross_bootconfigdir}/05-vmware.conf
726726
%{_cross_kmoddir}/kernel/drivers/gpu/drm/display/drm_display_helper.%{_ko}
727727
%{_cross_kmoddir}/kernel/drivers/gpu/drm/ttm/ttm.%{_ko}
728728

729-
%{_cross_kmoddir}/kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.%{_ko}
730-
%{_cross_kmoddir}/kernel/drivers/gpu/drm/amd/amdxcp/amdxcp.%{_ko}
731-
%{_cross_kmoddir}/kernel/drivers/gpu/drm/drm_buddy.%{_ko}
732-
%{_cross_kmoddir}/kernel/drivers/gpu/drm/drm_exec.%{_ko}
733-
%{_cross_kmoddir}/kernel/drivers/gpu/drm/scheduler/gpu-sched.%{_ko}
734-
735729
%if "%{_cross_arch}" == "x86_64"
736730
%{_cross_kmoddir}/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.%{_ko}
737731
%endif
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.rpm
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
[package]
2+
name = "kmod-6_12-amdgpu"
3+
version = "0.1.0"
4+
edition = "2021"
5+
publish = false
6+
build = "../build.rs"
7+
8+
[package.metadata.build-package]
9+
package-name = "kmod-6.12-amdgpu"
10+
releases-url = "https://repo.radeon.com/amdgpu/"
11+
12+
[lib]
13+
path = "../packages.rs"
14+
15+
[[package.metadata.build-package.external-files]]
16+
url = "https://repo.radeon.com/amdgpu/30.20/el/10/main/x86_64/amdgpu-dkms-6.16.6-2238411.el10.noarch.rpm"
17+
sha512 = "978eff171b54e02cd831ff06d541506891f149037a7a81d3e48bb8ffb5e80b3964d529868bcce32a7f33e2a7ceb8ebbfb2900e4e5108231c4adb50c4b6b0bed8"
18+
19+
[build-dependencies]
20+
kernel-6_12 = { path = "../kernel-6.12" }

0 commit comments

Comments
 (0)