1/* SPDX-License-Identifier: MIT */
2
3#ifndef _LINUX_APERTURE_H_
4#define _LINUX_APERTURE_H_
5
6#include <linux/types.h>
7
8struct pci_dev;
9struct platform_device;
10
11#if defined(CONFIG_APERTURE_HELPERS)
12int devm_aperture_acquire_for_platform_device(struct platform_device *pdev,
13 resource_size_t base,
14 resource_size_t size);
15
16int aperture_remove_conflicting_devices(resource_size_t base, resource_size_t size,
17 const char *name);
18
19int __aperture_remove_legacy_vga_devices(struct pci_dev *pdev);
20
21int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name);
22#else
23static inline int devm_aperture_acquire_for_platform_device(struct platform_device *pdev,
24 resource_size_t base,
25 resource_size_t size)
26{
27 return 0;
28}
29
30static inline int aperture_remove_conflicting_devices(resource_size_t base, resource_size_t size,
31 const char *name)
32{
33 return 0;
34}
35
36static inline int __aperture_remove_legacy_vga_devices(struct pci_dev *pdev)
37{
38 return 0;
39}
40
41static inline int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name)
42{
43 return 0;
44}
45#endif
46
47/**
48 * aperture_remove_all_conflicting_devices - remove all existing framebuffers
49 * @name: a descriptive name of the requesting driver
50 *
51 * This function removes all graphics device drivers. Use this function on systems
52 * that can have their framebuffer located anywhere in memory.
53 *
54 * Returns:
55 * 0 on success, or a negative errno code otherwise
56 */
57static inline int aperture_remove_all_conflicting_devices(const char *name)
58{
59 return aperture_remove_conflicting_devices(base: 0, size: (resource_size_t)-1, name);
60}
61
62#endif
63

source code of linux/include/linux/aperture.h