Merge branch 'linux-next' of git://cavan.codon.org.uk/platform-drivers-x86
[pandora-kernel.git] / include / linux / acpi.h
index 27ab201..3ad510b 100644 (file)
@@ -287,7 +287,7 @@ acpi_status acpi_run_osc(acpi_handle handle, struct acpi_osc_context *context);
 #define OSC_SB_PAD_SUPPORT             1
 #define OSC_SB_PPC_OST_SUPPORT         2
 #define OSC_SB_PR3_SUPPORT             4
-#define OSC_SB_CPUHP_OST_SUPPORT       8
+#define OSC_SB_HOTPLUG_OST_SUPPORT     8
 #define OSC_SB_APEI_SUPPORT            16
 
 extern bool osc_sb_apei_support_acked;
@@ -319,6 +319,44 @@ extern bool osc_sb_apei_support_acked;
 
 extern acpi_status acpi_pci_osc_control_set(acpi_handle handle,
                                             u32 *mask, u32 req);
+
+/* Enable _OST when all relevant hotplug operations are enabled */
+#if defined(CONFIG_ACPI_HOTPLUG_CPU) &&                        \
+       (defined(CONFIG_ACPI_HOTPLUG_MEMORY) ||         \
+        defined(CONFIG_ACPI_HOTPLUG_MEMORY_MODULE)) && \
+       (defined(CONFIG_ACPI_CONTAINER) ||              \
+        defined(CONFIG_ACPI_CONTAINER_MODULE))
+#define ACPI_HOTPLUG_OST
+#endif
+
+/* _OST Source Event Code (OSPM Action) */
+#define ACPI_OST_EC_OSPM_SHUTDOWN              0x100
+#define ACPI_OST_EC_OSPM_EJECT                 0x103
+#define ACPI_OST_EC_OSPM_INSERTION             0x200
+
+/* _OST General Processing Status Code */
+#define ACPI_OST_SC_SUCCESS                    0x0
+#define ACPI_OST_SC_NON_SPECIFIC_FAILURE       0x1
+#define ACPI_OST_SC_UNRECOGNIZED_NOTIFY                0x2
+
+/* _OST OS Shutdown Processing (0x100) Status Code */
+#define ACPI_OST_SC_OS_SHUTDOWN_DENIED         0x80
+#define ACPI_OST_SC_OS_SHUTDOWN_IN_PROGRESS    0x81
+#define ACPI_OST_SC_OS_SHUTDOWN_COMPLETED      0x82
+#define ACPI_OST_SC_OS_SHUTDOWN_NOT_SUPPORTED  0x83
+
+/* _OST Ejection Request (0x3, 0x103) Status Code */
+#define ACPI_OST_SC_EJECT_NOT_SUPPORTED                0x80
+#define ACPI_OST_SC_DEVICE_IN_USE              0x81
+#define ACPI_OST_SC_DEVICE_BUSY                        0x82
+#define ACPI_OST_SC_EJECT_DEPENDENCY_BUSY      0x83
+#define ACPI_OST_SC_EJECT_IN_PROGRESS          0x84
+
+/* _OST Insertion Request (0x200) Status Code */
+#define ACPI_OST_SC_INSERT_IN_PROGRESS         0x80
+#define ACPI_OST_SC_DRIVER_LOAD_FAILURE                0x81
+#define ACPI_OST_SC_INSERT_NOT_SUPPORTED       0x82
+
 extern void acpi_early_init(void);
 
 extern int acpi_nvs_register(__u64 start, __u64 size);