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(0, (resource_size_t)-1, name); 60 } 61 62 #endif 63