Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * apple-gmux.h - microcontroller built into dual GPU MacBook Pro & Mac Pro
0004  * Copyright (C) 2015 Lukas Wunner <lukas@wunner.de>
0005  */
0006 
0007 #ifndef LINUX_APPLE_GMUX_H
0008 #define LINUX_APPLE_GMUX_H
0009 
0010 #include <linux/acpi.h>
0011 
0012 #define GMUX_ACPI_HID "APP000B"
0013 
0014 #if IS_ENABLED(CONFIG_APPLE_GMUX)
0015 
0016 /**
0017  * apple_gmux_present() - detect if gmux is built into the machine
0018  *
0019  * Drivers may use this to activate quirks specific to dual GPU MacBook Pros
0020  * and Mac Pros, e.g. for deferred probing, runtime pm and backlight.
0021  *
0022  * Return: %true if gmux is present and the kernel was configured
0023  * with CONFIG_APPLE_GMUX, %false otherwise.
0024  */
0025 static inline bool apple_gmux_present(void)
0026 {
0027     return acpi_dev_found(GMUX_ACPI_HID);
0028 }
0029 
0030 #else  /* !CONFIG_APPLE_GMUX */
0031 
0032 static inline bool apple_gmux_present(void)
0033 {
0034     return false;
0035 }
0036 
0037 #endif /* !CONFIG_APPLE_GMUX */
0038 
0039 #endif /* LINUX_APPLE_GMUX_H */