1 | /* SPDX-License-Identifier: MIT */ |
2 | |
3 | #ifndef _LINUX_APERTURE_H_ |
4 | #define _LINUX_APERTURE_H_ |
5 | |
6 | #include <linux/types.h> |
7 | |
8 | struct pci_dev; |
9 | struct platform_device; |
10 | |
11 | #if defined(CONFIG_APERTURE_HELPERS) |
12 | int devm_aperture_acquire_for_platform_device(struct platform_device *pdev, |
13 | resource_size_t base, |
14 | resource_size_t size); |
15 | |
16 | int aperture_remove_conflicting_devices(resource_size_t base, resource_size_t size, |
17 | const char *name); |
18 | |
19 | int __aperture_remove_legacy_vga_devices(struct pci_dev *pdev); |
20 | |
21 | int aperture_remove_conflicting_pci_devices(struct pci_dev *pdev, const char *name); |
22 | #else |
23 | static 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 | |
30 | static inline int aperture_remove_conflicting_devices(resource_size_t base, resource_size_t size, |
31 | const char *name) |
32 | { |
33 | return 0; |
34 | } |
35 | |
36 | static inline int __aperture_remove_legacy_vga_devices(struct pci_dev *pdev) |
37 | { |
38 | return 0; |
39 | } |
40 | |
41 | static 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 | */ |
57 | static 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 | |