aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tw/system.scm12
-rw-r--r--tw/system/btl.scm19
2 files changed, 25 insertions, 6 deletions
diff --git a/tw/system.scm b/tw/system.scm
index d38109af..2c1cdac0 100644
--- a/tw/system.scm
+++ b/tw/system.scm
@@ -206,14 +206,16 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\"
(wayland? #f)
(work-system? #f)
(xorg-extra-modules '())
- (xorg-drivers '()))
+ (xorg-drivers '())
+ (xorg-extra-config '()))
(unless (and (string? host-name)
(number? cores)
(string? wireless-interface)
(string? backlight-device)
(list? xorg-extra-modules)
- (list? xorg-drivers))
+ (list? xorg-drivers)
+ (list? xorg-extra-config))
(error "Invalid argument type"))
(cons*
@@ -362,7 +364,7 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\"
(if wayland?
(wayland-enduser-base-services)
- (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers))))
+ (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers xorg-extra-config))))
(define enduser-base-services
(modify-services (append %system-channel-services %desktop-services)
@@ -385,11 +387,11 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\"
(login-service-type config => (tw-login-configuration config))))
-(define (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers)
+(define (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers xorg-extra-config)
(define xorg-config
(xorg-configuration
(keyboard-layout %british-keyboard)
- (extra-config (list touchpad-xorg-config))
+ (extra-config (cons touchpad-xorg-config xorg-extra-config))
(modules (append xorg-extra-modules %default-xorg-modules))
(drivers xorg-drivers)))
diff --git a/tw/system/btl.scm b/tw/system/btl.scm
index a7389de9..ce0af3ac 100644
--- a/tw/system/btl.scm
+++ b/tw/system/btl.scm
@@ -35,6 +35,22 @@
(define data-partition ; /dev/nvme0n1p1
(uuid "cd4b7af3-f5ce-44a0-a986-3271078fb1d6" 'btrfs))
+;; This may fix AMDGPU crashes in Minecraft with the following errors in dmesg:
+;; [drm:amdgpu_dm_plane_helper_prepare_fb [amdgpu]] *ERROR* Failed to pin framebuffer with error -22
+;; and the following errors in the Minecraft log:
+;; amdgpu: amdgpu_cs_query_fence_status failed.
+;; amdgpu: The CS has been rejected (-125).
+;; https://old.reddit.com/r/AMDHelp/comments/17yn72h/page_flip_fails_error22game_crash/
+(define amdgpu-reduced-output-latency "\
+Section \"OutputClass\"
+ Identifier \"AMDgpu\"
+ MatchDriver \"amdgpu\"
+ Driver \"amdgpu\"
+ Option \"EnablePageFlip\" \"off\"
+ Option \"TearFree\" \"false\"
+EndSection
+")
+
(define-public %btl-system
(operating-system
(host-name "btl.twilken.net")
@@ -148,7 +164,8 @@
#:host-name host-name
#:cores 24
#:wireless-interface "wlp15s0"
- #:backlight-device "amdgpu_bl0")
+ #:backlight-device "amdgpu_bl0"
+ #:xorg-extra-config (list amdgpu-reduced-output-latency))
(delete thermald-service-type))))))
%btl-system