misc: mods: fix compilation with kernel 5.18

Integrates CL 31407382.

Bug 3680536

Change-Id: I5a50dc1c5af1dfcc52aa112269f6802e447206d4
Signed-off-by: Chris Dragan <kdragan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2729243
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Chris Dragan
2022-06-15 04:35:32 -07:00
committed by Laxman Dewangan
parent d8714b7da4
commit 4974a781b6
5 changed files with 22 additions and 5 deletions

View File

@@ -100,7 +100,12 @@ static int acpi_get_dev_children(struct mods_client *client,
LOG_ENT(); LOG_ENT();
#ifdef MODS_HAS_ACPI_FETCH
device = acpi_fetch_acpi_dev(dev_handle);
status = device ? 0 : -EINVAL;
#else
status = acpi_bus_get_device(dev_handle, &device); status = acpi_bus_get_device(dev_handle, &device);
#endif
if (ACPI_FAILURE(status) || !device) { if (ACPI_FAILURE(status) || !device) {
cl_error("ACPI: device for fetching device children not found\n"); cl_error("ACPI: device for fetching device children not found\n");
LOG_EXT(); LOG_EXT();

View File

@@ -43,6 +43,10 @@
# define MODS_HASNT_NUMA_NO_NODE 1 # define MODS_HASNT_NUMA_NO_NODE 1
#endif #endif
#if KERNEL_VERSION(2, 6, 34) <= MODS_KERNEL_VERSION
# define MODS_HAS_SET_COHERENT_MASK 1
#endif
#if KERNEL_VERSION(2, 6, 38) <= MODS_KERNEL_VERSION #if KERNEL_VERSION(2, 6, 38) <= MODS_KERNEL_VERSION
# if defined(CONFIG_X86) # if defined(CONFIG_X86)
# define MODS_HAS_CONSOLE_LOCK 1 # define MODS_HAS_CONSOLE_LOCK 1
@@ -100,6 +104,10 @@
# define MODS_HAS_ARM64_READ_FTR_REG 1 # define MODS_HAS_ARM64_READ_FTR_REG 1
#endif #endif
#if KERNEL_VERSION(5, 17, 0) <= MODS_KERNEL_VERSION
# define MODS_HAS_ACPI_FETCH 1
#endif
#if defined(CONFIG_ARCH_TEGRA) #if defined(CONFIG_ARCH_TEGRA)
# define MODS_HAS_TEGRA 1 # define MODS_HAS_TEGRA 1
#endif #endif

View File

@@ -115,7 +115,7 @@ static void mods_dma_unmap_page(struct mods_client *client,
{ {
dev_addr = mods_expand_nvlink_addr(dev, dev_addr); dev_addr = mods_expand_nvlink_addr(dev, dev_addr);
pci_unmap_page(dev, dma_unmap_page(&dev->dev,
dev_addr, dev_addr,
PAGE_SIZE << order, PAGE_SIZE << order,
DMA_BIDIRECTIONAL); DMA_BIDIRECTIONAL);
@@ -187,13 +187,13 @@ static int pci_map_chunk(struct mods_client *client,
struct MODS_PHYS_CHUNK *chunk, struct MODS_PHYS_CHUNK *chunk,
u64 *out_dev_addr) u64 *out_dev_addr)
{ {
u64 dev_addr = pci_map_page(dev, u64 dev_addr = dma_map_page(&dev->dev,
chunk->p_page, chunk->p_page,
0, 0,
PAGE_SIZE << chunk->order, PAGE_SIZE << chunk->order,
DMA_BIDIRECTIONAL); DMA_BIDIRECTIONAL);
int err = pci_dma_mapping_error(dev, dev_addr); int err = dma_mapping_error(&dev->dev, dev_addr);
if (err) { if (err) {
cl_error( cl_error(

View File

@@ -879,7 +879,7 @@ int esc_mods_pci_set_dma_mask(struct mods_client *client,
mask = dma_mask->num_bits == 64 ? ~0ULL : (1ULL<<dma_mask->num_bits)-1; mask = dma_mask->num_bits == 64 ? ~0ULL : (1ULL<<dma_mask->num_bits)-1;
err = pci_set_dma_mask(dev, mask); err = dma_set_mask(&dev->dev, mask);
if (err) { if (err) {
cl_error( cl_error(
"failed to set dma mask 0x%llx (%u) for dev %04x:%02x:%02x.%x\n", "failed to set dma mask 0x%llx (%u) for dev %04x:%02x:%02x.%x\n",
@@ -895,7 +895,11 @@ int esc_mods_pci_set_dma_mask(struct mods_client *client,
err = OK; err = OK;
#endif #endif
} else { } else {
#if defined(MODS_HAS_SET_COHERENT_MASK)
err = dma_set_coherent_mask(&dev->dev, mask);
#else
err = pci_set_consistent_dma_mask(dev, mask); err = pci_set_consistent_dma_mask(dev, mask);
#endif
if (err) if (err)
cl_error( cl_error(
"failed to set consistent dma mask 0x%llx (%u) for dev %04x:%02x:%02x.%x\n", "failed to set consistent dma mask 0x%llx (%u) for dev %04x:%02x:%02x.%x\n",

View File

@@ -25,7 +25,7 @@
/* Driver version */ /* Driver version */
#define MODS_DRIVER_VERSION_MAJOR 4 #define MODS_DRIVER_VERSION_MAJOR 4
#define MODS_DRIVER_VERSION_MINOR 8 #define MODS_DRIVER_VERSION_MINOR 9
#define MODS_DRIVER_VERSION ((MODS_DRIVER_VERSION_MAJOR << 8) | \ #define MODS_DRIVER_VERSION ((MODS_DRIVER_VERSION_MAJOR << 8) | \
((MODS_DRIVER_VERSION_MINOR / 10) << 4) | \ ((MODS_DRIVER_VERSION_MINOR / 10) << 4) | \
(MODS_DRIVER_VERSION_MINOR % 10)) (MODS_DRIVER_VERSION_MINOR % 10))