#ifndef _ACPIPHP_H
#define _ACPIPHP_H
#include <linux/acpi.h>
#include <linux/mutex.h>
#include <linux/pci_hotplug.h>
struct acpiphp_context;
struct acpiphp_bridge;
struct acpiphp_slot;
struct slot { … };
static inline const char *slot_name(struct slot *slot)
{ … }
static inline struct slot *to_slot(struct hotplug_slot *hotplug_slot)
{ … }
struct acpiphp_bridge { … };
struct acpiphp_slot { … };
struct acpiphp_func { … };
struct acpiphp_context { … };
static inline struct acpiphp_context *to_acpiphp_context(struct acpi_hotplug_context *hp)
{ … }
static inline struct acpiphp_context *func_to_context(struct acpiphp_func *func)
{ … }
static inline struct acpi_device *func_to_acpi_device(struct acpiphp_func *func)
{ … }
static inline acpi_handle func_to_handle(struct acpiphp_func *func)
{ … }
struct acpiphp_root_context { … };
static inline struct acpiphp_root_context *to_acpiphp_root_context(struct acpi_hotplug_context *hp)
{ … }
struct acpiphp_attention_info { … };
#define ACPI_STA_ALL …
#define SLOT_ENABLED …
#define SLOT_IS_GOING_AWAY …
#define FUNC_HAS_STA …
#define FUNC_HAS_EJ0 …
int acpiphp_register_attention(struct acpiphp_attention_info *info);
int acpiphp_unregister_attention(struct acpiphp_attention_info *info);
int acpiphp_register_hotplug_slot(struct acpiphp_slot *slot, unsigned int sun);
void acpiphp_unregister_hotplug_slot(struct acpiphp_slot *slot);
int acpiphp_enable_slot(struct acpiphp_slot *slot);
int acpiphp_disable_slot(struct acpiphp_slot *slot);
u8 acpiphp_get_power_status(struct acpiphp_slot *slot);
u8 acpiphp_get_latch_status(struct acpiphp_slot *slot);
u8 acpiphp_get_adapter_status(struct acpiphp_slot *slot);
extern bool acpiphp_disabled;
#endif