diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 9 | ||||
-rw-r--r-- | kernel-4.19.patch | 93 |
3 files changed, 102 insertions, 4 deletions
@@ -1,7 +1,7 @@ pkgbase = nvidia-vulkan pkgdesc = NVIDIA drivers for linux (vulkan developer branch) pkgver = 396.54.09 - pkgrel = 2 + pkgrel = 3 url = https://developer.nvidia.com/vulkan-driver arch = x86_64 license = custom @@ -14,10 +14,12 @@ pkgbase = nvidia-vulkan source = nvidia-drm-outputclass.conf source = nvidia-vulkan-utils.sysusers source = kernel-4.16.patch + source = kernel-4.19.patch sha512sums = 93a79b2c0432c8d4801162609a404b8eec3115ca1febe772cfea17ebbfb6265d9064c40f40ea8714969953ea7886aba1a5f1ba67e529b254e8ccd810085f1461 sha512sums = c49d246a519731bfab9d22afa5c2dd2d366db06d80182738b84881e93cd697c783f16ee04819275c05597bb063451a5d6102fbc562cd078d2a374533a23cea48 sha512sums = 4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499 sha512sums = ad1185d998adbf89abf7aea300e5b3bbabe2296016f42592fbc232a6c3983f233df1103d37f35a041f12cc1c722d3edce813a4a1b215784a49c7f0e3e652b5af + sha512sums = 354c644794c9dcf7bb8d4afd720736f7b9760306e1cb9c1c98be209e0f30bdfe628b67aa371461e33ccf0e58a0efb084c7f7fc91f4351ae3df3edb991fc49e00 pkgname = nvidia-vulkan pkgdesc = NVIDIA drivers for linux (vulkan developer branch) @@ -9,7 +9,7 @@ pkgbase=nvidia-vulkan pkgname=('nvidia-vulkan' 'nvidia-vulkan-dkms' 'nvidia-vulkan-utils' 'opencl-nvidia-vulkan' 'lib32-nvidia-vulkan-utils' 'lib32-opencl-nvidia-vulkan') pkgver=396.54.09 _extramodules=extramodules-ARCH -pkgrel=2 +pkgrel=3 pkgdesc="NVIDIA drivers for linux (vulkan developer branch)" arch=('x86_64') url="https://developer.nvidia.com/vulkan-driver" @@ -20,11 +20,13 @@ _pkg="NVIDIA-Linux-x86_64-${pkgver}" source=("NVIDIA-Linux-x86_64-${pkgver}.run::https://developer.nvidia.com/linux-3965409" 'nvidia-drm-outputclass.conf' 'nvidia-vulkan-utils.sysusers' - 'kernel-4.16.patch') + 'kernel-4.16.patch' + 'kernel-4.19.patch') sha512sums=('93a79b2c0432c8d4801162609a404b8eec3115ca1febe772cfea17ebbfb6265d9064c40f40ea8714969953ea7886aba1a5f1ba67e529b254e8ccd810085f1461' 'c49d246a519731bfab9d22afa5c2dd2d366db06d80182738b84881e93cd697c783f16ee04819275c05597bb063451a5d6102fbc562cd078d2a374533a23cea48' '4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499' - 'ad1185d998adbf89abf7aea300e5b3bbabe2296016f42592fbc232a6c3983f233df1103d37f35a041f12cc1c722d3edce813a4a1b215784a49c7f0e3e652b5af') + 'ad1185d998adbf89abf7aea300e5b3bbabe2296016f42592fbc232a6c3983f233df1103d37f35a041f12cc1c722d3edce813a4a1b215784a49c7f0e3e652b5af' + '354c644794c9dcf7bb8d4afd720736f7b9760306e1cb9c1c98be209e0f30bdfe628b67aa371461e33ccf0e58a0efb084c7f7fc91f4351ae3df3edb991fc49e00') create_links() { # create soname links @@ -43,6 +45,7 @@ prepare() { # Restore phys_to_dma support (still needed for 396.18) # https://bugs.archlinux.org/task/58074 patch -Np1 -i ../kernel-4.16.patch + patch -Np1 -i ../kernel-4.19.patch bsdtar -xf nvidia-persistenced-init.tar.bz2 diff --git a/kernel-4.19.patch b/kernel-4.19.patch new file mode 100644 index 000000000000..d10241f4bf73 --- /dev/null +++ b/kernel-4.19.patch @@ -0,0 +1,93 @@ +diff --git a/kernel/nvidia-drm/nvidia-drm-connector.c b/kernel/nvidia-drm/nvidia-drm-connector.c +index dbda66d..99333d9 100644 +--- a/kernel/nvidia-drm/nvidia-drm-connector.c ++++ b/kernel/nvidia-drm/nvidia-drm-connector.c +@@ -35,6 +35,8 @@ + #include <drm/drm_atomic.h> + #include <drm/drm_atomic_helper.h> + ++#include <linux/version.h> ++ + static void nv_drm_connector_destroy(struct drm_connector *connector) + { + struct nv_drm_connector *nv_connector = to_nv_connector(connector); +@@ -226,7 +228,11 @@ static int nv_drm_connector_get_modes(struct drm_connector *connector) + + + if (nv_connector->edid != NULL) { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,0) + drm_mode_connector_update_edid_property( ++#else ++ drm_connector_update_edid_property( ++#endif + connector, nv_connector->edid); + } + +diff --git a/kernel/nvidia-drm/nvidia-drm-encoder.c b/kernel/nvidia-drm/nvidia-drm-encoder.c +index 3dc2400..e8b4aad 100644 +--- a/kernel/nvidia-drm/nvidia-drm-encoder.c ++++ b/kernel/nvidia-drm/nvidia-drm-encoder.c +@@ -35,6 +35,8 @@ + #include <drm/drm_atomic.h> + #include <drm/drm_atomic_helper.h> + ++#include <linux/version.h> ++ + static void nv_drm_encoder_destroy(struct drm_encoder *encoder) + { + struct nv_drm_encoder *nv_encoder = to_nv_encoder(encoder); +@@ -216,7 +218,11 @@ nv_drm_add_encoder(struct drm_device *dev, NvKmsKapiDisplay hDisplay) + + /* Attach encoder and connector */ + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,0) + ret = drm_mode_connector_attach_encoder(connector, encoder); ++#else ++ ret = drm_connector_attach_encoder(connector, encoder); ++#endif + + if (ret != 0) { + NV_DRM_DEV_LOG_ERR( +diff --git a/kernel/conftest.sh b/kernel/conftest.sh +index dd61566..30c88a1 100755 +--- a/kernel/conftest.sh ++++ b/kernel/conftest.sh +@@ -2363,17 +2363,22 @@ compile_test() { + + ;; + +- drm_mode_connector_list_update_has_merge_type_bits_arg) ++ drm_connector_list_update_has_merge_type_bits_arg) + # +- # Detect if drm_mode_connector_list_update() has a ++ # Detect if drm_connector_list_update() has a + # 'merge_type_bits' second argument. This argument was + # remove by: + # 2015-12-03 6af3e6561243f167dabc03f732d27ff5365cd4a4 + # + CODE=" + #include <drm/drmP.h> +- void conftest_drm_mode_connector_list_update_has_merge_type_bits_arg(void) { ++ #include <linux/version.h> ++ void conftest_drm_connector_list_update_has_merge_type_bits_arg(void) { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,0) + drm_mode_connector_list_update( ++#else ++ drm_connector_list_update( ++#endif + NULL, /* struct drm_connector *connector */ + true); /* bool merge_type_bits */ + }" +diff --git a/kernel/nvidia-drm/nvidia-drm.Kbuild b/kernel/nvidia-drm/nvidia-drm.Kbuild +index b4a45a7..3b7f3a1 100644 +--- a/kernel/nvidia-drm/nvidia-drm.Kbuild ++++ b/kernel/nvidia-drm/nvidia-drm.Kbuild +@@ -74,7 +74,7 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += drm_driver_has_legacy_dev_list + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_driver_has_set_busid + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_crtc_state_has_connectors_changed + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_init_function_args +-NV_CONFTEST_TYPE_COMPILE_TESTS += drm_mode_connector_list_update_has_merge_type_bits_arg ++NV_CONFTEST_TYPE_COMPILE_TESTS += drm_connector_list_update_has_merge_type_bits_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_helper_mode_fill_fb_struct + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_master_drop_has_from_release_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_driver_unload_has_int_return_type |