diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/vga_switcheroo.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h index ddb419cf4530..502073a53dd3 100644 --- a/include/linux/vga_switcheroo.h +++ b/include/linux/vga_switcheroo.h | |||
| @@ -45,7 +45,8 @@ struct vga_switcheroo_client_ops { | |||
| 45 | #if defined(CONFIG_VGA_SWITCHEROO) | 45 | #if defined(CONFIG_VGA_SWITCHEROO) |
| 46 | void vga_switcheroo_unregister_client(struct pci_dev *dev); | 46 | void vga_switcheroo_unregister_client(struct pci_dev *dev); |
| 47 | int vga_switcheroo_register_client(struct pci_dev *dev, | 47 | int vga_switcheroo_register_client(struct pci_dev *dev, |
| 48 | const struct vga_switcheroo_client_ops *ops); | 48 | const struct vga_switcheroo_client_ops *ops, |
| 49 | bool driver_power_control); | ||
| 49 | int vga_switcheroo_register_audio_client(struct pci_dev *pdev, | 50 | int vga_switcheroo_register_audio_client(struct pci_dev *pdev, |
| 50 | const struct vga_switcheroo_client_ops *ops, | 51 | const struct vga_switcheroo_client_ops *ops, |
| 51 | int id, bool active); | 52 | int id, bool active); |
| @@ -60,11 +61,15 @@ int vga_switcheroo_process_delayed_switch(void); | |||
| 60 | 61 | ||
| 61 | int vga_switcheroo_get_client_state(struct pci_dev *dev); | 62 | int vga_switcheroo_get_client_state(struct pci_dev *dev); |
| 62 | 63 | ||
| 64 | void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switcheroo_state dynamic); | ||
| 65 | |||
| 66 | int vga_switcheroo_init_domain_pm_ops(struct device *dev, struct dev_pm_domain *domain); | ||
| 67 | int vga_switcheroo_init_domain_pm_optimus_hdmi_audio(struct device *dev, struct dev_pm_domain *domain); | ||
| 63 | #else | 68 | #else |
| 64 | 69 | ||
| 65 | static inline void vga_switcheroo_unregister_client(struct pci_dev *dev) {} | 70 | static inline void vga_switcheroo_unregister_client(struct pci_dev *dev) {} |
| 66 | static inline int vga_switcheroo_register_client(struct pci_dev *dev, | 71 | static inline int vga_switcheroo_register_client(struct pci_dev *dev, |
| 67 | const struct vga_switcheroo_client_ops *ops) { return 0; } | 72 | const struct vga_switcheroo_client_ops *ops, bool driver_power_control) { return 0; } |
| 68 | static inline void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info) {} | 73 | static inline void vga_switcheroo_client_fb_set(struct pci_dev *dev, struct fb_info *info) {} |
| 69 | static inline int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) { return 0; } | 74 | static inline int vga_switcheroo_register_handler(struct vga_switcheroo_handler *handler) { return 0; } |
| 70 | static inline int vga_switcheroo_register_audio_client(struct pci_dev *pdev, | 75 | static inline int vga_switcheroo_register_audio_client(struct pci_dev *pdev, |
| @@ -74,6 +79,10 @@ static inline void vga_switcheroo_unregister_handler(void) {} | |||
| 74 | static inline int vga_switcheroo_process_delayed_switch(void) { return 0; } | 79 | static inline int vga_switcheroo_process_delayed_switch(void) { return 0; } |
| 75 | static inline int vga_switcheroo_get_client_state(struct pci_dev *dev) { return VGA_SWITCHEROO_ON; } | 80 | static inline int vga_switcheroo_get_client_state(struct pci_dev *dev) { return VGA_SWITCHEROO_ON; } |
| 76 | 81 | ||
| 82 | static inline void vga_switcheroo_set_dynamic_switch(struct pci_dev *pdev, enum vga_switcheroo_state dynamic) {} | ||
| 83 | |||
| 84 | static inline int vga_switcheroo_init_domain_pm_ops(struct device *dev, struct dev_pm_domain *domain) { return -EINVAL; } | ||
| 85 | static inline int vga_switcheroo_init_domain_pm_optimus_hdmi_audio(struct device *dev, struct dev_pm_domain *domain) { return -EINVAL; } | ||
| 77 | 86 | ||
| 78 | #endif | 87 | #endif |
| 79 | #endif /* _LINUX_VGA_SWITCHEROO_H_ */ | 88 | #endif /* _LINUX_VGA_SWITCHEROO_H_ */ |
