summary refs log tree commit diff
path: root/pkgs/os-specific/linux/evdi
diff options
context:
space:
mode:
authorJens Binkert <ce2ca564-cdcd-41b1-b015-6d19edf15a71@8shield.net>2023-06-27 20:45:11 +0200
committerGitHub <noreply@github.com>2023-06-27 20:45:11 +0200
commite30b53b990354deb1a18f186dc5130c1525ef718 (patch)
tree6d90ed882c0a45588208b9e48ed0ec62b51192ab /pkgs/os-specific/linux/evdi
parentc287bba061996e26a408c02bedad56b5bdc63de8 (diff)
downloadnixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar.gz
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar.bz2
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar.lz
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar.xz
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.tar.zst
nixpkgs-e30b53b990354deb1a18f186dc5130c1525ef718.zip
evdi: unstable-20221013 -> 1.13.1 (#239883)
Diffstat (limited to 'pkgs/os-specific/linux/evdi')
-rw-r--r--pkgs/os-specific/linux/evdi/0000-fix-drm-path.patch31
-rw-r--r--pkgs/os-specific/linux/evdi/default.nix20
2 files changed, 45 insertions, 6 deletions
diff --git a/pkgs/os-specific/linux/evdi/0000-fix-drm-path.patch b/pkgs/os-specific/linux/evdi/0000-fix-drm-path.patch
new file mode 100644
index 00000000000..a389b73185d
--- /dev/null
+++ b/pkgs/os-specific/linux/evdi/0000-fix-drm-path.patch
@@ -0,0 +1,31 @@
+diff --git a/module/Makefile b/module/Makefile
+index fe573de..c8022c8 100644
+--- a/module/Makefile
++++ b/module/Makefile
+@@ -50,7 +50,7 @@ ifneq ($(KERNELRELEASE),)
+ # inside kbuild
+ # Note: this can be removed once it is in kernel tree and Kconfig is properly used
+ CONFIG_DRM_EVDI := m
+-ccflags-y := -isystem include/uapi/drm include/drm $(CFLAGS) $(EL8FLAG) $(EL9FLAG) $(RPIFLAG)
++ccflags-y := -isystem include/uapi/drm $(CFLAGS) $(EL8FLAG) $(EL9FLAG) $(RPIFLAG)
+ evdi-y := evdi_platform_drv.o evdi_platform_dev.o evdi_sysfs.o evdi_modeset.o evdi_connector.o evdi_encoder.o evdi_drm_drv.o evdi_fb.o evdi_gem.o evdi_painter.o evdi_params.o evdi_cursor.o evdi_debug.o evdi_i2c.o
+ evdi-$(CONFIG_COMPAT) += evdi_ioc32.o
+ obj-$(CONFIG_DRM_EVDI) := evdi.o
+diff --git a/module/evdi_drm.h b/module/evdi_drm.h
+index 29b8427..5012693 100644
+--- a/module/evdi_drm.h
++++ b/module/evdi_drm.h
+@@ -12,12 +12,11 @@
+ 
+ #ifdef __KERNEL__
+ #include <linux/types.h>
++#include <drm/drm.h>
+ #else
+ #include <stdint.h>
+ #endif
+ 
+-#include "drm.h"
+-
+ /* Output events sent from driver to evdi lib */
+ #define DRM_EVDI_EVENT_UPDATE_READY  0x80000000
+ #define DRM_EVDI_EVENT_DPMS          0x80000001
diff --git a/pkgs/os-specific/linux/evdi/default.nix b/pkgs/os-specific/linux/evdi/default.nix
index f8f4f400ade..18b53e540d1 100644
--- a/pkgs/os-specific/linux/evdi/default.nix
+++ b/pkgs/os-specific/linux/evdi/default.nix
@@ -1,21 +1,25 @@
-{ lib, stdenv, fetchFromGitHub, kernel, libdrm }:
-
+{ lib, stdenv, fetchFromGitHub, kernel, libdrm, python3 }:
+let
+  python3WithLibs = python3.withPackages (ps: with ps; [
+    pybind11
+  ]);
+in
 stdenv.mkDerivation rec {
   pname = "evdi";
-  version = "unstable-2022-10-13";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "DisplayLink";
     repo = pname;
-    rev = "bdc258b25df4d00f222fde0e3c5003bf88ef17b5";
-    hash = "sha256-mt+vEp9FFf7smmE2PzuH/3EYl7h89RBN1zTVvv2qJ/o=";
+    rev = "v${version}";
+    hash = "sha256-Or4hhnFOtC8vmB4kFUHbFHn2wg/NsUMY3d2Tiea6YbY=";
   };
 
   env.NIX_CFLAGS_COMPILE = "-Wno-error -Wno-error=sign-compare";
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
-  buildInputs = [ kernel libdrm ];
+  buildInputs = [ kernel libdrm python3WithLibs ];
 
   makeFlags = kernel.makeFlags ++ [
     "KVER=${kernel.modDirVersion}"
@@ -31,6 +35,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  patches = [
+    ./0000-fix-drm-path.patch
+  ];
+
   meta = with lib; {
     description = "Extensible Virtual Display Interface";
     maintainers = with maintainers; [ eyjhb ];