mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
drivers: Fix MODULE_IMPORT_NS for Linux v6.13
In Linux v6.13, commit cdd30ebb1b9f ("module: Convert symbol namespace
to string literal") updated the MODULE_IMPORT_NS macro to take a string
literal as an argument in Linux v6.13. Use conftest to detect if
MODULE_IMPORT_NS takes a string literal as an argument and update the
various drivers accordingly.
Bug 4991705
Change-Id: I8f34860648965dc2334e2916d5404522510778ff
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3263798
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
* NVIDIA Tegra DRM GEM helper functions
|
* NVIDIA Tegra DRM GEM helper functions
|
||||||
*
|
*
|
||||||
* Copyright (C) 2012 Sascha Hauer, Pengutronix
|
* Copyright (C) 2012 Sascha Hauer, Pengutronix
|
||||||
* Copyright (C) 2013-2023 NVIDIA CORPORATION, All rights reserved.
|
* Copyright (C) 2013-2024 NVIDIA CORPORATION, All rights reserved.
|
||||||
*
|
*
|
||||||
* Based on the GEM/CMA helpers
|
* Based on the GEM/CMA helpers
|
||||||
*
|
*
|
||||||
@@ -24,7 +24,11 @@
|
|||||||
#include "drm.h"
|
#include "drm.h"
|
||||||
#include "gem.h"
|
#include "gem.h"
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
|
|
||||||
static unsigned int sg_dma_count_chunks(struct scatterlist *sgl, unsigned int nents)
|
static unsigned int sg_dma_count_chunks(struct scatterlist *sgl, unsigned int nents)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2385,6 +2385,10 @@ static void __exit capture_isp_exit(void)
|
|||||||
module_init(capture_isp_init);
|
module_init(capture_isp_init);
|
||||||
module_exit(capture_isp_exit);
|
module_exit(capture_isp_exit);
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
MODULE_DESCRIPTION("tegra capture-isp driver");
|
MODULE_DESCRIPTION("tegra capture-isp driver");
|
||||||
|
|||||||
@@ -1791,6 +1791,10 @@ static void __exit capture_vi_exit(void)
|
|||||||
module_init(capture_vi_init);
|
module_init(capture_vi_init);
|
||||||
module_exit(capture_vi_exit);
|
module_exit(capture_vi_exit);
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_DESCRIPTION("tegra fusa-capture driver");
|
MODULE_DESCRIPTION("tegra fusa-capture driver");
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
// Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
// SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||||
|
|
||||||
#define pr_fmt(fmt) "nvscic2c-pcie: vmap-pin: " fmt
|
#define pr_fmt(fmt) "nvscic2c-pcie: vmap-pin: " fmt
|
||||||
|
|
||||||
@@ -380,4 +380,8 @@ err:
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
/* Copyright (c) 2019-2024, NVIDIA CORPORATION. All rights reserved */
|
// SPDX-FileCopyrightText: Copyright (c) 2019-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||||
|
|
||||||
#include "ether_linux.h"
|
#include "ether_linux.h"
|
||||||
#ifdef MACSEC_SUPPORT
|
#ifdef MACSEC_SUPPORT
|
||||||
@@ -4179,4 +4179,8 @@ void ether_sysfs_unregister(struct ether_priv_data *pdata)
|
|||||||
MODULE_AUTHOR("NVIDIA Corporation");
|
MODULE_AUTHOR("NVIDIA Corporation");
|
||||||
MODULE_DESCRIPTION("Mac/Macsec Sysfs driver");
|
MODULE_DESCRIPTION("Mac/Macsec Sysfs driver");
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(CRYPTO_INTERNAL);
|
MODULE_IMPORT_NS(CRYPTO_INTERNAL);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("CRYPTO_INTERNAL");
|
||||||
|
#endif
|
||||||
|
|||||||
@@ -550,7 +550,11 @@ static struct platform_driver fsicom_client = {
|
|||||||
|
|
||||||
module_platform_driver(fsicom_client);
|
module_platform_driver(fsicom_client);
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_DESCRIPTION("FSI-CCPLEX-COM driver");
|
MODULE_DESCRIPTION("FSI-CCPLEX-COM driver");
|
||||||
MODULE_AUTHOR("Prashant Shaw <pshaw@nvidia.com>");
|
MODULE_AUTHOR("Prashant Shaw <pshaw@nvidia.com>");
|
||||||
MODULE_LICENSE("GPL v2");
|
MODULE_LICENSE("GPL v2");
|
||||||
|
|||||||
@@ -1372,6 +1372,10 @@ static void __exit nvdla_exit(void)
|
|||||||
module_exit(nvdla_exit);
|
module_exit(nvdla_exit);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_AUTHOR("Shridhar Rasal <srasal@nvidia.com>");
|
MODULE_AUTHOR("Shridhar Rasal <srasal@nvidia.com>");
|
||||||
MODULE_LICENSE("GPL v2");
|
MODULE_LICENSE("GPL v2");
|
||||||
|
|||||||
@@ -1826,5 +1826,9 @@ static void __exit nvpva_exit(void)
|
|||||||
module_exit(nvpva_exit);
|
module_exit(nvpva_exit);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_LICENSE("GPL v2");
|
MODULE_LICENSE("GPL v2");
|
||||||
|
|||||||
@@ -483,7 +483,11 @@ static void __exit nvmap_exit_driver(void)
|
|||||||
nvmap_dev = NULL;
|
nvmap_dev = NULL;
|
||||||
}
|
}
|
||||||
module_exit(nvmap_exit_driver);
|
module_exit(nvmap_exit_driver);
|
||||||
|
#if defined(NV_MODULE_IMPORT_NS_CALLS_STRINGIFY)
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
|
#else
|
||||||
|
MODULE_IMPORT_NS("DMA_BUF");
|
||||||
|
#endif
|
||||||
MODULE_DESCRIPTION("NvMap: Nvidia Tegra Memory Management Driver");
|
MODULE_DESCRIPTION("NvMap: Nvidia Tegra Memory Management Driver");
|
||||||
MODULE_AUTHOR("Ketan Patil <ketanp@nvidia.com>");
|
MODULE_AUTHOR("Ketan Patil <ketanp@nvidia.com>");
|
||||||
MODULE_AUTHOR("Ashish Mhetre <amhetre@nvidia.com>");
|
MODULE_AUTHOR("Ashish Mhetre <amhetre@nvidia.com>");
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ NV_CONFTEST_FUNCTION_COMPILE_TESTS += kthread_complete_and_exit
|
|||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += mii_bus_struct_has_read_c45
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += mii_bus_struct_has_read_c45
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += mii_bus_struct_has_write_c45
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += mii_bus_struct_has_write_c45
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += media_entity_remote_pad
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += media_entity_remote_pad
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += module_import_ns_macro
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += module_import_ns_calls_stringify
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += msi_get_virq
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += msi_get_virq
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_set_tso_max_size
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_set_tso_max_size
|
||||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_napi_add_weight
|
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_napi_add_weight
|
||||||
|
|||||||
@@ -7633,18 +7633,22 @@ compile_test() {
|
|||||||
compile_check_conftest "$CODE" "NV_MII_BUS_STRUCT_HAS_WRITE_C45" "" "types"
|
compile_check_conftest "$CODE" "NV_MII_BUS_STRUCT_HAS_WRITE_C45" "" "types"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
module_import_ns_macro)
|
module_import_ns_calls_stringify)
|
||||||
#
|
#
|
||||||
# Determine if the MODULE_IMPORT_NS macro present.
|
# Determine if the MODULE_IMPORT_NS macro takes a string literal as
|
||||||
|
# an argument.
|
||||||
|
#
|
||||||
|
# Commit cdd30ebb1b9f ("module: Convert symbol namespace to string
|
||||||
|
# literal") updated the symbol namespace macros to take a string
|
||||||
|
# literal as an argument and removes the call to __stringify from
|
||||||
|
# within the macro for Linux v6.13.
|
||||||
#
|
#
|
||||||
# Added in commit 80140a81f7f833 ("module.h: simplify MODULE_IMPORT_NS")
|
|
||||||
# in Linux 5.18.
|
|
||||||
CODE="
|
CODE="
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
MODULE_IMPORT_NS(DMA_BUF);
|
MODULE_IMPORT_NS(DMA_BUF);
|
||||||
"
|
"
|
||||||
|
|
||||||
compile_check_conftest "$CODE" "NV_MODULE_IMPORT_NS_PRESENT" "" "types"
|
compile_check_conftest "$CODE" "NV_MODULE_IMPORT_NS_CALLS_STRINGIFY" "" "types"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
no_llseek)
|
no_llseek)
|
||||||
|
|||||||
Reference in New Issue
Block a user