1 /* $NetBSD: nouveau_acpi.h,v 1.3 2021/12/18 23:45:32 riastradh Exp $ */ 2 3 /* SPDX-License-Identifier: MIT */ 4 #ifndef __NOUVEAU_ACPI_H__ 5 #define __NOUVEAU_ACPI_H__ 6 7 #define ROM_BIOS_PAGE 4096 8 9 #if defined(CONFIG_ACPI) && defined(CONFIG_X86) 10 bool nouveau_is_optimus(void); 11 bool nouveau_is_v1_dsm(void); 12 void nouveau_register_dsm_handler(void); 13 void nouveau_unregister_dsm_handler(void); 14 void nouveau_switcheroo_optimus_dsm(void); 15 int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len); 16 bool nouveau_acpi_rom_supported(struct device *); 17 void *nouveau_acpi_edid(struct drm_device *, struct drm_connector *); 18 #else 19 static inline bool nouveau_is_optimus(void) { return false; }; 20 static inline bool nouveau_is_v1_dsm(void) { return false; }; 21 static inline void nouveau_register_dsm_handler(void) {} 22 static inline void nouveau_unregister_dsm_handler(void) {} 23 static inline void nouveau_switcheroo_optimus_dsm(void) {} 24 static inline bool nouveau_acpi_rom_supported(struct device *dev) { return false; } 25 static inline int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len) { return -EINVAL; } 26 static inline void *nouveau_acpi_edid(struct drm_device *dev, struct drm_connector *connector) { return NULL; } 27 #endif 28 29 #endif 30