mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-23 01:31:30 +03:00
Build the Tegra PCI vnet driver fails with Linux v5.14 because the lpci_epc_map_addr() have the incorrect number of arguments. The arguments to the lpci_epc_map_addr() functions were updated in Linux v5.12 but the current Tegra PCI EPF driver assumes that they were updating after Linux v5.14. Update the Tegra PCI EPF driver to use the correct arguments for v5.12 onwards. Bug 4456727 Bug 4451567 Change-Id: Ie4ef36854d380e0a896a0f256d846ab8b89ca447 Signed-off-by: Jason Mei <jianjunm@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3070170 Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> Reviewed-by: Bibek Basu <bbasu@nvidia.com> GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
53 lines
2.2 KiB
C
53 lines
2.2 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only
|
|
* SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms and conditions of the GNU General Public License,
|
|
* version 2, as published by the Free Software Foundation.
|
|
*
|
|
* This program is distributed in the hope it will be useful, but WITHOUT
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
* more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
/*
|
|
* PCIe EDMA Framework
|
|
*/
|
|
|
|
#ifndef PCI_EPF_WRAPPER_H
|
|
#define PCI_EPF_WRAPPER_H
|
|
|
|
#include <linux/version.h>
|
|
|
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0))
|
|
#define lpci_epf_free_space(A, B, C) pci_epf_free_space(A, B, C, PRIMARY_INTERFACE)
|
|
#define lpci_epf_alloc_space(A, B, C, D) pci_epf_alloc_space(A, B, C, D, PRIMARY_INTERFACE)
|
|
#else
|
|
#define lpci_epf_free_space(A, B, C) pci_epf_free_space(A, B, C)
|
|
#define lpci_epf_alloc_space(A, B, C, D) pci_epf_alloc_space(A, B, C, D)
|
|
#endif
|
|
|
|
#if (LINUX_VERSION_CODE > KERNEL_VERSION(5, 14, 0))
|
|
#define lpci_epc_write_header(A, B, C) pci_epc_write_header(A, B, 0, C)
|
|
#define lpci_epc_raise_irq(A, B, C, D) pci_epc_raise_irq(A, B, 0, C, D)
|
|
#define lpci_epc_clear_bar(A, B, C) pci_epc_clear_bar(A, B, 0, C)
|
|
#define lpci_epc_set_msi(A, B, C) pci_epc_set_msi(A, B, 0, C)
|
|
#define lpci_epc_set_bar(A, B, C) pci_epc_set_bar(A, B, 0, C)
|
|
#define lpci_epc_map_addr(A, B, C, D, E) pci_epc_map_addr(A, B, 0, C, D, E)
|
|
#define lpci_epc_unmap_addr(A, B, C) pci_epc_unmap_addr(A, B, 0, C)
|
|
#else
|
|
#define lpci_epc_write_header(A, B, C) pci_epc_write_header(A, B, C)
|
|
#define lpci_epc_raise_irq(A, B, C, D) pci_epc_raise_irq(A, B, C, D)
|
|
#define lpci_epc_clear_bar(A, B, C) pci_epc_clear_bar(A, B, C)
|
|
#define lpci_epc_set_msi(A, B, C) pci_epc_set_msi(A, B, C)
|
|
#define lpci_epc_set_bar(A, B, C) pci_epc_set_bar(A, B, C)
|
|
#define lpci_epc_map_addr(A, B, C, D, E) pci_epc_map_addr(A, B, C, D, E)
|
|
#define lpci_epc_unmap_addr(A, B, C) pci_epc_unmap_addr(A, B, C)
|
|
#endif /* LINUX_VERSION_CODE */
|
|
|
|
#endif /* PCI_EPF_WRAPPER_H */
|