1263851Sjkim/****************************************************************************** 2263851Sjkim * 3263851Sjkim * Module Name: ahids - Table of ACPI/PNP _HID/_CID values 4263851Sjkim * 5263851Sjkim *****************************************************************************/ 6263851Sjkim 7263851Sjkim/* 8306536Sjkim * Copyright (C) 2000 - 2016, Intel Corp. 9263851Sjkim * All rights reserved. 10263851Sjkim * 11263851Sjkim * Redistribution and use in source and binary forms, with or without 12263851Sjkim * modification, are permitted provided that the following conditions 13263851Sjkim * are met: 14263851Sjkim * 1. Redistributions of source code must retain the above copyright 15263851Sjkim * notice, this list of conditions, and the following disclaimer, 16263851Sjkim * without modification. 17263851Sjkim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18263851Sjkim * substantially similar to the "NO WARRANTY" disclaimer below 19263851Sjkim * ("Disclaimer") and any redistribution must be conditioned upon 20263851Sjkim * including a substantially similar Disclaimer requirement for further 21263851Sjkim * binary redistribution. 22263851Sjkim * 3. Neither the names of the above-listed copyright holders nor the names 23263851Sjkim * of any contributors may be used to endorse or promote products derived 24263851Sjkim * from this software without specific prior written permission. 25263851Sjkim * 26263851Sjkim * Alternatively, this software may be distributed under the terms of the 27263851Sjkim * GNU General Public License ("GPL") version 2 as published by the Free 28263851Sjkim * Software Foundation. 29263851Sjkim * 30263851Sjkim * NO WARRANTY 31263851Sjkim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32263851Sjkim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33263851Sjkim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34263851Sjkim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35263851Sjkim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36263851Sjkim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37263851Sjkim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38263851Sjkim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39263851Sjkim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40263851Sjkim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41263851Sjkim * POSSIBILITY OF SUCH DAMAGES. 42263851Sjkim */ 43263851Sjkim 44272444Sjkim#include <contrib/dev/acpica/include/acpi.h> 45272444Sjkim#include <contrib/dev/acpica/include/accommon.h> 46263851Sjkim 47263851Sjkim#define _COMPONENT ACPI_UTILITIES 48263851Sjkim ACPI_MODULE_NAME ("ahids") 49263851Sjkim 50263851Sjkim 51263851Sjkim/* 52263851Sjkim * ACPI/PNP Device IDs with description strings 53263851Sjkim */ 54263851Sjkimconst AH_DEVICE_ID AslDeviceIds[] = 55263851Sjkim{ 56263851Sjkim {"10EC5640", "Realtek I2S Audio Codec"}, 57272444Sjkim {"80860F09", "Intel PWM Controller"}, 58263851Sjkim {"80860F0A", "Intel Atom UART Controller"}, 59272444Sjkim {"80860F0E", "Intel SPI Controller"}, 60263851Sjkim {"80860F14", "Intel Baytrail SDIO/MMC Host Controller"}, 61263851Sjkim {"80860F28", "Intel SST Audio DSP"}, 62263851Sjkim {"80860F41", "Intel Baytrail I2C Host Controller"}, 63263851Sjkim {"ACPI0001", "SMBus 1.0 Host Controller"}, 64263851Sjkim {"ACPI0002", "Smart Battery Subsystem"}, 65263851Sjkim {"ACPI0003", "Power Source Device"}, 66263851Sjkim {"ACPI0004", "Module Device"}, 67263851Sjkim {"ACPI0005", "SMBus 2.0 Host Controller"}, 68263851Sjkim {"ACPI0006", "GPE Block Device"}, 69263851Sjkim {"ACPI0007", "Processor Device"}, 70263851Sjkim {"ACPI0008", "Ambient Light Sensor Device"}, 71263851Sjkim {"ACPI0009", "I/O xAPIC Device"}, 72263851Sjkim {"ACPI000A", "I/O APIC Device"}, 73263851Sjkim {"ACPI000B", "I/O SAPIC Device"}, 74263851Sjkim {"ACPI000C", "Processor Aggregator Device"}, 75263851Sjkim {"ACPI000D", "Power Meter Device"}, 76263851Sjkim {"ACPI000E", "Time and Alarm Device"}, 77263851Sjkim {"ACPI000F", "User Presence Detection Device"}, 78306536Sjkim {"ACPI0010", "Processor Container Device"}, 79306536Sjkim {"ACPI0011", "Generic Buttons Device"}, 80306536Sjkim {"ACPI0012", "NVDIMM Root Device"}, 81306536Sjkim {"ACPI0013", "Generic Event Device"}, 82272444Sjkim {"ADMA0F28", "Intel Audio DMA"}, 83272444Sjkim {"AMCR0F28", "Intel Audio Machine Driver"}, 84263851Sjkim {"ATK4001", "Asus Radio Control Button"}, 85263851Sjkim {"ATML1000", "Atmel Touchscreen Controller"}, 86272444Sjkim {"AUTH2750", "AuthenTec AES2750"}, 87263851Sjkim {"BCM2E39", "Broadcom BT Serial Bus Driver over UART Bus Enumerator"}, 88272444Sjkim {"BCM4752E", "Broadcom GPS Controller"}, 89272444Sjkim {"BMG0160", "Bosch Gyro Sensor"}, 90263851Sjkim {"CPLM3218", "Capella Micro CM3218x Ambient Light Sensor"}, 91263851Sjkim {"DELLABCE", "Dell Airplane Mode Switch Driver"}, 92263851Sjkim {"DLAC3002", "Qualcomm Atheros Bluetooth UART Transport"}, 93272444Sjkim {"FTTH5506", "FocalTech 5506 Touch Controller"}, 94272444Sjkim {"HAD0F28", "Intel HDMI Audio Driver"}, 95272444Sjkim {"INBC0000", "GPIO Expander"}, 96263851Sjkim {"INT0002", "Virtual GPIO Controller"}, 97263851Sjkim {"INT0800", "Intel 82802 Firmware Hub Device"}, 98263851Sjkim {"INT3394", "ACPI System Fan"}, 99263851Sjkim {"INT3396", "Standard Power Management Controller"}, 100263851Sjkim {"INT33A0", "Intel Smart Connect Technology Device"}, 101263851Sjkim {"INT33A1", "Intel Power Engine"}, 102263851Sjkim {"INT33BB", "Intel Baytrail SD Host Controller"}, 103263851Sjkim {"INT33BD", "Intel Baytrail Mailbox Device"}, 104272444Sjkim {"INT33BE", "Camera Sensor OV5693"}, 105263851Sjkim {"INT33C0", "Intel Serial I/O SPI Host Controller"}, 106263851Sjkim {"INT33C1", "Intel Serial I/O SPI Host Controller"}, 107263851Sjkim {"INT33C2", "Intel Serial I/O I2C Host Controller"}, 108263851Sjkim {"INT33C3", "Intel Serial I/O I2C Host Controller"}, 109263851Sjkim {"INT33C4", "Intel Serial I/O UART Host Controller"}, 110263851Sjkim {"INT33C5", "Intel Serial I/O UART Host Controller"}, 111263851Sjkim {"INT33C6", "Intel SD Host Controller"}, 112263851Sjkim {"INT33C7", "Intel Serial I/O GPIO Host Controller"}, 113263851Sjkim {"INT33C8", "Intel Smart Sound Technology Host Controller"}, 114263851Sjkim {"INT33C9", "Wolfson Microelectronics Audio WM5102"}, 115263851Sjkim {"INT33CA", "Intel SPB Peripheral"}, 116263851Sjkim {"INT33CB", "Intel Smart Sound Technology Audio Codec"}, 117263851Sjkim {"INT33D1", "Intel GPIO Buttons"}, 118263851Sjkim {"INT33D2", "Intel GPIO Buttons"}, 119263851Sjkim {"INT33D3", "Intel GPIO Buttons"}, 120263851Sjkim {"INT33D4", "Intel GPIO Buttons"}, 121263851Sjkim {"INT33D6", "Intel Virtual Buttons Device"}, 122263851Sjkim {"INT33F0", "Camera Sensor MT9M114"}, 123272444Sjkim {"INT33F4", "XPOWER PMIC Controller"}, 124272444Sjkim {"INT33F5", "TI PMIC Controller"}, 125263851Sjkim {"INT33FB", "MIPI-CSI Camera Sensor OV2722"}, 126263851Sjkim {"INT33FC", "Intel Baytrail GPIO Controller"}, 127263851Sjkim {"INT33FD", "Intel Baytrail Power Management IC"}, 128272444Sjkim {"INT33FE", "XPOWER Battery Device"}, 129263851Sjkim {"INT3400", "Intel Dynamic Power Performance Management"}, 130263851Sjkim {"INT3401", "Intel Extended Thermal Model CPU"}, 131263851Sjkim {"INT3403", "DPTF Temperature Sensor"}, 132263851Sjkim {"INT3406", "Intel Dynamic Platform & Thermal Framework Display Participant"}, 133263851Sjkim {"INT3407", "DPTF Platform Power Meter"}, 134263851Sjkim {"INT340E", "Motherboard Resources"}, 135263851Sjkim {"INT3420", "Intel Bluetooth RF Kill"}, 136263851Sjkim {"INT3F0D", "ACPI Motherboard Resources"}, 137263851Sjkim {"INTCF1A", "Sony IMX175 Camera Sensor"}, 138263851Sjkim {"INTCFD9", "Intel Baytrail SOC GPIO Controller"}, 139263851Sjkim {"INTL9C60", "Intel Baytrail SOC DMA Controller"}, 140263851Sjkim {"INVN6500", "InvenSense MPU-6500 Six Axis Gyroscope and Accelerometer"}, 141263851Sjkim {"LNXCPU", "Linux Logical CPU"}, 142263851Sjkim {"LNXPOWER", "ACPI Power Resource (power gating)"}, 143263851Sjkim {"LNXPWRBN", "System Power Button"}, 144263851Sjkim {"LNXSYBUS", "System Bus"}, 145263851Sjkim {"LNXSYSTM", "ACPI Root Node"}, 146263851Sjkim {"LNXTHERM", "ACPI Thermal Zone"}, 147263851Sjkim {"LNXVIDEO", "ACPI Video Controller"}, 148272444Sjkim {"MAX17047", "Fuel Gauge Controller"}, 149263851Sjkim {"MSFT0101", "TPM 2.0 Security Device"}, 150263851Sjkim {"NXP5442", "NXP 5442 Near Field Communications Controller"}, 151272444Sjkim {"NXP5472", "NXP NFC"}, 152263851Sjkim {"PNP0000", "8259-compatible Programmable Interrupt Controller"}, 153263851Sjkim {"PNP0001", "EISA Interrupt Controller"}, 154263851Sjkim {"PNP0002", "MCA Interrupt Controller"}, 155263851Sjkim {"PNP0003", "IO-APIC Interrupt Controller"}, 156263851Sjkim {"PNP0100", "PC-class System Timer"}, 157263851Sjkim {"PNP0103", "HPET System Timer"}, 158263851Sjkim {"PNP0200", "PC-class DMA Controller"}, 159263851Sjkim {"PNP0300", "IBM PC/XT Keyboard Controller (83 key)"}, 160263851Sjkim {"PNP0301", "IBM PC/XT Keyboard Controller (86 key)"}, 161263851Sjkim {"PNP0302", "IBM PC/XT Keyboard Controller (84 key)"}, 162263851Sjkim {"PNP0303", "IBM Enhanced Keyboard (101/102-key, PS/2 Mouse)"}, 163263851Sjkim {"PNP0400", "Standard LPT Parallel Port"}, 164263851Sjkim {"PNP0401", "ECP Parallel Port"}, 165263851Sjkim {"PNP0500", "Standard PC COM Serial Port"}, 166263851Sjkim {"PNP0501", "16550A-compatible COM Serial Port"}, 167263851Sjkim {"PNP0510", "Generic IRDA-compatible Device"}, 168263851Sjkim {"PNP0800", "Microsoft Sound System Compatible Device"}, 169263851Sjkim {"PNP0A03", "PCI Bus"}, 170263851Sjkim {"PNP0A05", "Generic Container Device"}, 171263851Sjkim {"PNP0A06", "Generic Container Device"}, 172263851Sjkim {"PNP0A08", "PCI Express Bus"}, 173263851Sjkim {"PNP0B00", "AT Real-Time Clock"}, 174263851Sjkim {"PNP0B01", "Intel PIIX4-compatible RTC/CMOS Device"}, 175263851Sjkim {"PNP0B02", "Dallas Semiconductor-compatible RTC/CMOS Device"}, 176263851Sjkim {"PNP0C01", "System Board"}, 177263851Sjkim {"PNP0C02", "PNP Motherboard Resources"}, 178263851Sjkim {"PNP0C04", "x87-compatible Floating Point Processing Unit"}, 179263851Sjkim {"PNP0C08", "ACPI Core Hardware"}, 180263851Sjkim {"PNP0C09", "Embedded Controller Device"}, 181263851Sjkim {"PNP0C0A", "Control Method Battery"}, 182263851Sjkim {"PNP0C0B", "Fan (Thermal Solution)"}, 183263851Sjkim {"PNP0C0C", "Power Button Device"}, 184263851Sjkim {"PNP0C0D", "Lid Device"}, 185263851Sjkim {"PNP0C0E", "Sleep Button Device"}, 186263851Sjkim {"PNP0C0F", "PCI Interrupt Link Device"}, 187263851Sjkim {"PNP0C10", "System Indicator Device"}, 188263851Sjkim {"PNP0C11", "Thermal Zone"}, 189263851Sjkim {"PNP0C12", "Device Bay Controller"}, 190263851Sjkim {"PNP0C14", "Windows Management Instrumentation Device"}, 191263851Sjkim {"PNP0C15", "Docking Station"}, 192306536Sjkim {"PNP0C33", "Error Device"}, 193263851Sjkim {"PNP0C40", "Standard Button Controller"}, 194263851Sjkim {"PNP0C50", "HID Protocol Device (I2C bus)"}, 195263851Sjkim {"PNP0C60", "Display Sensor Device"}, 196263851Sjkim {"PNP0C70", "Dock Sensor Device"}, 197263851Sjkim {"PNP0C80", "Memory Device"}, 198272444Sjkim {"PNP0D10", "XHCI USB Controller with debug"}, 199272444Sjkim {"PNP0D15", "XHCI USB Controller without debug"}, 200272444Sjkim {"PNP0D20", "EHCI USB Controller without debug"}, 201272444Sjkim {"PNP0D25", "EHCI USB Controller with debug"}, 202272444Sjkim {"PNP0D40", "SDA Standard Compliant SD Host Controller"}, 203263851Sjkim {"PNP0D80", "Windows-compatible System Power Management Controller"}, 204263851Sjkim {"PNP0F03", "Microsoft PS/2-style Mouse"}, 205272444Sjkim {"PNP0F13", "PS/2 Mouse"}, 206272444Sjkim {"RTL8723", "Realtek Wireless Controller"}, 207272444Sjkim {"SMB0349", "Charger"}, 208263851Sjkim {"SMO91D0", "Sensor Hub"}, 209272444Sjkim {"SMSC3750", "SMSC 3750 USB MUX"}, 210272444Sjkim {"SSPX0000", "Intel SSP Device"}, 211272444Sjkim {"TBQ24296", "Charger"}, 212263851Sjkim 213263851Sjkim {NULL, NULL} 214263851Sjkim}; 215263851Sjkim 216263851Sjkim 217263851Sjkim/******************************************************************************* 218263851Sjkim * 219263851Sjkim * FUNCTION: AcpiAhMatchHardwareId 220263851Sjkim * 221263851Sjkim * PARAMETERS: HardwareId - String representation of an _HID or _CID 222263851Sjkim * 223263851Sjkim * RETURN: ID info struct. NULL if HardwareId is not found 224263851Sjkim * 225263851Sjkim * DESCRIPTION: Lookup an _HID/_CID in the device ID table 226263851Sjkim * 227263851Sjkim ******************************************************************************/ 228263851Sjkim 229263851Sjkimconst AH_DEVICE_ID * 230263851SjkimAcpiAhMatchHardwareId ( 231263851Sjkim char *HardwareId) 232263851Sjkim{ 233263851Sjkim const AH_DEVICE_ID *Info; 234263851Sjkim 235263851Sjkim 236263851Sjkim for (Info = AslDeviceIds; Info->Name; Info++) 237263851Sjkim { 238306536Sjkim if (!strcmp (HardwareId, Info->Name)) 239263851Sjkim { 240263851Sjkim return (Info); 241263851Sjkim } 242263851Sjkim } 243263851Sjkim 244263851Sjkim return (NULL); 245263851Sjkim} 246