Files
linux-nv-oot/drivers/video/tegra/tsec/tsec_linux.h
Nikesh Oswal 5889401827 drivers: tsec: use already exported cache API
Earlier we modified the kernel to expose a low level
cache API namely dcache_clean_inval_poc, instead we
can use the already exported arch_invalidate_pmem API
and for ARM invlidating the cache is same as clean
and invalidate

Bug 3817626

Change-Id: Ideb29f2818aece98753aaa40242eaf1246c928cb
Signed-off-by: Nikesh Oswal <noswal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2801851
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-04-04 05:28:43 +00:00

47 lines
2.1 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
*
* Tegra TSEC Module Support
*
* Copyright (c) 2022, NVIDIA CORPORATION. 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/>.
*/
#ifndef TSEC_LINUX_H
#define TSEC_LINUX_H
#include <linux/types.h> /* for types like u8, u32 etc */
#include <linux/platform_device.h> /* for platform_device */
#include <linux/of_platform.h> /* for of_match_device etc */
#include <linux/slab.h> /* for kzalloc */
#include <linux/delay.h> /* for udelay */
#include <linux/clk.h> /* for clk_prepare_enable */
#include <linux/reset.h> /* for reset_control_reset */
#include <linux/iommu.h> /* for dev_iommu_fwspec_get */
#include <linux/iopoll.h> /* for readl_poll_timeout */
#include <linux/dma-mapping.h> /* for dma_map_page_attrs */
#include <linux/pm.h> /* for dev_pm_ops */
#include <linux/version.h> /* for KERNEL_VERSION */
#include <linux/interrupt.h> /* for enable_irq */
#include <linux/firmware.h> /* for request_firmware */
#if (KERNEL_VERSION(5, 14, 0) <= LINUX_VERSION_CODE)
#include <soc/tegra/mc.h> /* for tegra_mc_get_carveout_info */
#include <linux/libnvdimm.h> /* for arch_invalidate_pmem */
#else
#include <linux/platform/tegra/tegra_mc.h> /* for mc_get_carveout_info */
#include <asm/cacheflush.h> /* for __flush_dcache_area */
#endif
#endif /* TSEC_LINUX_H */