aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuel Vadot <manu@FreeBSD.org>2024-01-05 16:33:09 +0000
committerEmmanuel Vadot <manu@FreeBSD.org>2024-01-05 16:43:24 +0000
commit66dec8f11b7804bb6dfd7af79a170f0832f2936e (patch)
tree738683be2f7e776ee672ce2384948d1b434b72e9
parentb83ee068a8bc8aaa18f886d4607fea2562798a4b (diff)
downloadports-66dec8f11b7804bb6dfd7af79a170f0832f2936e.tar.gz
ports-66dec8f11b7804bb6dfd7af79a170f0832f2936e.zip
graphics/drm-61-kmod: Add new port
DRM drivers tracking 6.1-lts Linux version. Big thanks to dumbbell@ and wulf@ for working on this update. Sponsored by: Beckhoff Automation GmbH & Co. KG
-rw-r--r--graphics/Makefile1
-rw-r--r--graphics/drm-510-kmod/Makefile3
-rw-r--r--graphics/drm-515-kmod/Makefile3
-rw-r--r--graphics/drm-61-kmod/Makefile56
-rw-r--r--graphics/drm-61-kmod/Makefile.version5
-rw-r--r--graphics/drm-61-kmod/distinfo3
-rw-r--r--graphics/drm-61-kmod/pkg-descr3
-rw-r--r--graphics/drm-61-kmod/pkg-message18
-rw-r--r--graphics/drm-61-kmod/pkg-plist7
9 files changed, 97 insertions, 2 deletions
diff --git a/graphics/Makefile b/graphics/Makefile
index 8a0ee70ce556..cae10a15b02d 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -146,6 +146,7 @@
SUBDIR += drawpile
SUBDIR += drm-510-kmod
SUBDIR += drm-515-kmod
+ SUBDIR += drm-61-kmod
SUBDIR += drm-kmod
SUBDIR += drm_info
SUBDIR += dspdfviewer
diff --git a/graphics/drm-510-kmod/Makefile b/graphics/drm-510-kmod/Makefile
index 1bdeb3d7ff69..9ebc61dab106 100644
--- a/graphics/drm-510-kmod/Makefile
+++ b/graphics/drm-510-kmod/Makefile
@@ -15,7 +15,8 @@ LICENSE_COMB= multi
ONLY_FOR_ARCHS= aarch64 amd64 i386 powerpc64 powerpc64le
ONLY_FOR_ARCHS_REASON= the new KMS components are only supported on amd64, i386, aarch64, and powerpc64
-CONFLICTS_INSTALL= drm-515-kmod
+CONFLICTS_INSTALL= drm-515-kmod \
+ drm-61-kmod
USES= kmod uidfix compiler:c++11-lang
diff --git a/graphics/drm-515-kmod/Makefile b/graphics/drm-515-kmod/Makefile
index 4083bd26b59d..8bc7029d0f13 100644
--- a/graphics/drm-515-kmod/Makefile
+++ b/graphics/drm-515-kmod/Makefile
@@ -15,7 +15,8 @@ LICENSE_COMB= multi
ONLY_FOR_ARCHS= amd64 powerpc64 powerpc64le
ONLY_FOR_ARCHS_REASON= the new KMS components are only supported on amd64 and powerpc64
-CONFLICTS_INSTALL= drm-510-kmod
+CONFLICTS_INSTALL= drm-510-kmod \
+ drm-61-kmod
USES= kmod uidfix compiler:c++11-lang
diff --git a/graphics/drm-61-kmod/Makefile b/graphics/drm-61-kmod/Makefile
new file mode 100644
index 000000000000..43f0d5be31aa
--- /dev/null
+++ b/graphics/drm-61-kmod/Makefile
@@ -0,0 +1,56 @@
+PORTNAME= drm-61-kmod
+PORTVERSION= ${DRM_KMOD_DISTVERSION}
+CATEGORIES= graphics kld
+
+.include "Makefile.version"
+
+MAINTAINER= x11@FreeBSD.org
+COMMENT= DRM drivers modules
+WWW= https://github.com/freebsd/drm-kmod/
+
+LICENSE= BSD2CLAUSE MIT GPLv2
+LICENSE_COMB= multi
+
+ONLY_FOR_ARCHS= amd64 powerpc64 powerpc64le
+ONLY_FOR_ARCHS_REASON= the new KMS components are only supported on amd64 and powerpc64
+
+CONFLICTS_INSTALL= drm-510-kmod \
+ drm-61-kmod
+
+USES= kmod uidfix compiler:c++11-lang
+
+USE_GITHUB= yes
+GH_ACCOUNT= freebsd
+GH_PROJECT= drm-kmod
+GH_TAGNAME= ${DRM_KMOD_GH_TAGNAME}
+
+.include <bsd.port.options.mk>
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1500008
+IGNORE= not supported on older than 15.0, no kernel support
+.endif
+.if ${OPSYS} != FreeBSD
+IGNORE= not supported on anything but FreeBSD (missing linuxkpi functionality)
+.endif
+
+.if ${ARCH} == "amd64"
+PLIST_SUB+= AMDGPU=""
+PLIST_SUB+= I915=""
+.elif ${ARCH} == "i386"
+PLIST_SUB+= AMDGPU="@comment "
+PLIST_SUB+= I915=""
+.elif ${ARCH} == "aarch64" || ${ARCH:Mpowerpc*}
+PLIST_SUB+= AMDGPU=""
+PLIST_SUB+= I915="@comment "
+.else
+PLIST_SUB+= AMDGPU="@comment "
+PLIST_SUB+= I915="@comment "
+.endif
+
+MAKE_ENV+= MAKEOBJDIRPREFIX=${WRKSRC}/obj
+
+pre-build:
+ ${MKDIR} ${WRKSRC}/obj
+ (cd ${WRKSRC} ; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} obj)
+
+.include <bsd.port.mk>
diff --git a/graphics/drm-61-kmod/Makefile.version b/graphics/drm-61-kmod/Makefile.version
new file mode 100644
index 000000000000..c96b856be7d1
--- /dev/null
+++ b/graphics/drm-61-kmod/Makefile.version
@@ -0,0 +1,5 @@
+# drm-kmod common version definition
+#
+# This will be included from consumers such as nvidia-drm
+DRM_KMOD_DISTVERSION= 6.1.69
+DRM_KMOD_GH_TAGNAME= drm_v6.1.69
diff --git a/graphics/drm-61-kmod/distinfo b/graphics/drm-61-kmod/distinfo
new file mode 100644
index 000000000000..80cbb156b286
--- /dev/null
+++ b/graphics/drm-61-kmod/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1704471820
+SHA256 (freebsd-drm-kmod-6.1.69-drm_v6.1.69_GH0.tar.gz) = 2327b60eb403f07c9782894cff70de04920cb14a70efc565d68d4b5ad12bc5cb
+SIZE (freebsd-drm-kmod-6.1.69-drm_v6.1.69_GH0.tar.gz) = 37088102
diff --git a/graphics/drm-61-kmod/pkg-descr b/graphics/drm-61-kmod/pkg-descr
new file mode 100644
index 000000000000..4f137a75d5eb
--- /dev/null
+++ b/graphics/drm-61-kmod/pkg-descr
@@ -0,0 +1,3 @@
+amdgpu, i915, and radeon DRM drivers modules.
+Currently corresponding to Linux 5.15 DRM.
+This version is for FreeBSD 14.0 and above.
diff --git a/graphics/drm-61-kmod/pkg-message b/graphics/drm-61-kmod/pkg-message
new file mode 100644
index 000000000000..e8371da62e5a
--- /dev/null
+++ b/graphics/drm-61-kmod/pkg-message
@@ -0,0 +1,18 @@
+[
+{ type: install
+ message: <<EOM
+The drm-515-kmod port can be enabled for amdgpu (for AMD
+GPUs starting with the HD7000 series / Tahiti) or i915kms (for Intel
+APUs starting with HD3000 / Sandy Bridge) through kld_list in
+/etc/rc.conf. radeonkms for older AMD GPUs can be loaded and there are
+some positive reports if EFI boot is NOT enabled.
+
+For amdgpu: kld_list="amdgpu"
+For Intel: kld_list="i915kms"
+For radeonkms: kld_list="radeonkms"
+
+Please ensure that all users requiring graphics are members of the
+"video" group.
+EOM
+}
+]
diff --git a/graphics/drm-61-kmod/pkg-plist b/graphics/drm-61-kmod/pkg-plist
new file mode 100644
index 000000000000..ee5f2847b995
--- /dev/null
+++ b/graphics/drm-61-kmod/pkg-plist
@@ -0,0 +1,7 @@
+/%%KMODDIR%%/dmabuf.ko
+/%%KMODDIR%%/linuxkpi_video.ko
+%%AMDGPU%%/%%KMODDIR%%/amdgpu.ko
+/%%KMODDIR%%/drm.ko
+%%I915%%/%%KMODDIR%%/i915kms.ko
+/%%KMODDIR%%/radeonkms.ko
+/%%KMODDIR%%/ttm.ko