/* SPDX-License-Identifier: GPL-2.0-or-later */1/*2* acpi_drivers.h ($Revision: 31 $)3*4* Copyright (C) 2001, 2002 Andy Grover <[email protected]>5* Copyright (C) 2001, 2002 Paul Diefenbaugh <[email protected]>6*/78#ifndef __ACPI_DRIVERS_H__9#define __ACPI_DRIVERS_H__1011#define ACPI_MAX_STRING 801213/*14* _HID definitions15* HIDs must conform to ACPI spec(6.1.4)16* Linux specific HIDs do not apply to this and begin with LNX:17*/1819#define ACPI_POWER_HID "LNXPOWER"20#define ACPI_PROCESSOR_OBJECT_HID "LNXCPU"21#define ACPI_SYSTEM_HID "LNXSYSTM"22#define ACPI_THERMAL_HID "LNXTHERM"23#define ACPI_BUTTON_HID_POWERF "LNXPWRBN"24#define ACPI_BUTTON_HID_SLEEPF "LNXSLPBN"25#define ACPI_VIDEO_HID "LNXVIDEO"26#define ACPI_BAY_HID "LNXIOBAY"27#define ACPI_DOCK_HID "LNXDOCK"28#define ACPI_ECDT_HID "LNXEC"29/* SMBUS HID definition as supported by Microsoft Windows */30#define ACPI_SMBUS_MS_HID "SMB0001"31/* Quirk for broken IBM BIOSes */32#define ACPI_SMBUS_IBM_HID "SMBUSIBM"3334/*35* For fixed hardware buttons, we fabricate acpi_devices with HID36* ACPI_BUTTON_HID_POWERF or ACPI_BUTTON_HID_SLEEPF. Fixed hardware37* signals only an event; it doesn't supply a notification value.38* To allow drivers to treat notifications from fixed hardware the39* same as those from real devices, we turn the events into this40* notification value.41*/42#define ACPI_FIXED_HARDWARE_EVENT 0x1004344/* --------------------------------------------------------------------------45PCI46-------------------------------------------------------------------------- */474849/* ACPI PCI Interrupt Link */5051int acpi_irq_penalty_init(void);52int acpi_pci_link_allocate_irq(acpi_handle handle, int index, int *triggering,53int *polarity, char **name);54int acpi_pci_link_free_irq(acpi_handle handle);5556/* ACPI PCI Device Binding */5758struct pci_bus;5960#ifdef CONFIG_PCI61struct pci_dev *acpi_get_pci_dev(acpi_handle);62#else63static inline struct pci_dev *acpi_get_pci_dev(acpi_handle handle)64{65return NULL;66}67#endif6869/* Arch-defined function to add a bus to the system */7071struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root);7273#ifdef CONFIG_X8674void pci_acpi_crs_quirks(void);75#else76static inline void pci_acpi_crs_quirks(void) { }77#endif7879/*--------------------------------------------------------------------------80Dock Station81-------------------------------------------------------------------------- */8283#ifdef CONFIG_ACPI_DOCK84extern int is_dock_device(struct acpi_device *adev);85#else86static inline int is_dock_device(struct acpi_device *adev)87{88return 0;89}90#endif /* CONFIG_ACPI_DOCK */9192#endif /*__ACPI_DRIVERS_H__*/939495