summaryrefslogtreecommitdiffstats
path: root/lib/physmem.h
blob: 46ee021776b791ab3df7e431b5c6915011a3cf69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/*
 *      The PCI Library -- Physical memory mapping API
 *
 *      Copyright (c) 2023 Pali Rohár <pali@kernel.org>
 *
 *      Can be freely distributed and used under the terms of the GNU GPL v2+
 *
 *      SPDX-License-Identifier: GPL-2.0-or-later
 */

struct physmem;

void physmem_init_config(struct pci_access *a);
int physmem_access(struct pci_access *a, int w);
struct physmem *physmem_open(struct pci_access *a, int w);
void physmem_close(struct physmem *physmem);
long physmem_get_pagesize(struct physmem *physmem);
void *physmem_map(struct physmem *physmem, u64 addr, size_t length, int w);
int physmem_unmap(struct physmem *physmem, void *ptr, size_t length);