// SPDX-License-Identifier: GPL-2.0 | |
// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd. | |
#include <linux/export.h> | |
#include <linux/mm.h> | |
#include <linux/io.h> | |
pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn, | |
unsigned long size, pgprot_t vma_prot) | |
{ | |
if (!pfn_valid(pfn)) { | |
return pgprot_noncached(vma_prot); | |
} else if (file->f_flags & O_SYNC) { | |
return pgprot_writecombine(vma_prot); | |
} | |
return vma_prot; | |
} | |
EXPORT_SYMBOL(phys_mem_access_prot); |