1313a0c13SJung-uk Kim /****************************************************************************** 2313a0c13SJung-uk Kim * 3313a0c13SJung-uk Kim * Module Name: ahids - Table of ACPI/PNP _HID/_CID values 4313a0c13SJung-uk Kim * 5313a0c13SJung-uk Kim *****************************************************************************/ 6313a0c13SJung-uk Kim 7313a0c13SJung-uk Kim /* 81c0e1b6dSJung-uk Kim * Copyright (C) 2000 - 2015, Intel Corp. 9313a0c13SJung-uk Kim * All rights reserved. 10313a0c13SJung-uk Kim * 11313a0c13SJung-uk Kim * Redistribution and use in source and binary forms, with or without 12313a0c13SJung-uk Kim * modification, are permitted provided that the following conditions 13313a0c13SJung-uk Kim * are met: 14313a0c13SJung-uk Kim * 1. Redistributions of source code must retain the above copyright 15313a0c13SJung-uk Kim * notice, this list of conditions, and the following disclaimer, 16313a0c13SJung-uk Kim * without modification. 17313a0c13SJung-uk Kim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18313a0c13SJung-uk Kim * substantially similar to the "NO WARRANTY" disclaimer below 19313a0c13SJung-uk Kim * ("Disclaimer") and any redistribution must be conditioned upon 20313a0c13SJung-uk Kim * including a substantially similar Disclaimer requirement for further 21313a0c13SJung-uk Kim * binary redistribution. 22313a0c13SJung-uk Kim * 3. Neither the names of the above-listed copyright holders nor the names 23313a0c13SJung-uk Kim * of any contributors may be used to endorse or promote products derived 24313a0c13SJung-uk Kim * from this software without specific prior written permission. 25313a0c13SJung-uk Kim * 26313a0c13SJung-uk Kim * Alternatively, this software may be distributed under the terms of the 27313a0c13SJung-uk Kim * GNU General Public License ("GPL") version 2 as published by the Free 28313a0c13SJung-uk Kim * Software Foundation. 29313a0c13SJung-uk Kim * 30313a0c13SJung-uk Kim * NO WARRANTY 31313a0c13SJung-uk Kim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32313a0c13SJung-uk Kim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33313a0c13SJung-uk Kim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34313a0c13SJung-uk Kim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35313a0c13SJung-uk Kim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36313a0c13SJung-uk Kim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37313a0c13SJung-uk Kim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38313a0c13SJung-uk Kim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39313a0c13SJung-uk Kim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40313a0c13SJung-uk Kim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41313a0c13SJung-uk Kim * POSSIBILITY OF SUCH DAMAGES. 42313a0c13SJung-uk Kim */ 43313a0c13SJung-uk Kim 44313a0c13SJung-uk Kim #include <contrib/dev/acpica/include/acpi.h> 45313a0c13SJung-uk Kim #include <contrib/dev/acpica/include/accommon.h> 46313a0c13SJung-uk Kim 47313a0c13SJung-uk Kim #define _COMPONENT ACPI_UTILITIES 48313a0c13SJung-uk Kim ACPI_MODULE_NAME ("ahids") 49313a0c13SJung-uk Kim 50313a0c13SJung-uk Kim 51313a0c13SJung-uk Kim /* 52313a0c13SJung-uk Kim * ACPI/PNP Device IDs with description strings 53313a0c13SJung-uk Kim */ 54313a0c13SJung-uk Kim const AH_DEVICE_ID AslDeviceIds[] = 55313a0c13SJung-uk Kim { 56313a0c13SJung-uk Kim {"10EC5640", "Realtek I2S Audio Codec"}, 57313a0c13SJung-uk Kim {"80860F09", "Intel PWM Controller"}, 58313a0c13SJung-uk Kim {"80860F0A", "Intel Atom UART Controller"}, 59313a0c13SJung-uk Kim {"80860F0E", "Intel SPI Controller"}, 60313a0c13SJung-uk Kim {"80860F14", "Intel Baytrail SDIO/MMC Host Controller"}, 61313a0c13SJung-uk Kim {"80860F28", "Intel SST Audio DSP"}, 62313a0c13SJung-uk Kim {"80860F41", "Intel Baytrail I2C Host Controller"}, 63313a0c13SJung-uk Kim {"ACPI0001", "SMBus 1.0 Host Controller"}, 64313a0c13SJung-uk Kim {"ACPI0002", "Smart Battery Subsystem"}, 65313a0c13SJung-uk Kim {"ACPI0003", "Power Source Device"}, 66313a0c13SJung-uk Kim {"ACPI0004", "Module Device"}, 67313a0c13SJung-uk Kim {"ACPI0005", "SMBus 2.0 Host Controller"}, 68313a0c13SJung-uk Kim {"ACPI0006", "GPE Block Device"}, 69313a0c13SJung-uk Kim {"ACPI0007", "Processor Device"}, 70313a0c13SJung-uk Kim {"ACPI0008", "Ambient Light Sensor Device"}, 71313a0c13SJung-uk Kim {"ACPI0009", "I/O xAPIC Device"}, 72313a0c13SJung-uk Kim {"ACPI000A", "I/O APIC Device"}, 73313a0c13SJung-uk Kim {"ACPI000B", "I/O SAPIC Device"}, 74313a0c13SJung-uk Kim {"ACPI000C", "Processor Aggregator Device"}, 75313a0c13SJung-uk Kim {"ACPI000D", "Power Meter Device"}, 76313a0c13SJung-uk Kim {"ACPI000E", "Time and Alarm Device"}, 77313a0c13SJung-uk Kim {"ACPI000F", "User Presence Detection Device"}, 78313a0c13SJung-uk Kim {"ADMA0F28", "Intel Audio DMA"}, 79313a0c13SJung-uk Kim {"AMCR0F28", "Intel Audio Machine Driver"}, 80313a0c13SJung-uk Kim {"ATK4001", "Asus Radio Control Button"}, 81313a0c13SJung-uk Kim {"ATML1000", "Atmel Touchscreen Controller"}, 82313a0c13SJung-uk Kim {"AUTH2750", "AuthenTec AES2750"}, 83313a0c13SJung-uk Kim {"BCM2E39", "Broadcom BT Serial Bus Driver over UART Bus Enumerator"}, 84313a0c13SJung-uk Kim {"BCM4752E", "Broadcom GPS Controller"}, 85313a0c13SJung-uk Kim {"BMG0160", "Bosch Gyro Sensor"}, 86313a0c13SJung-uk Kim {"CPLM3218", "Capella Micro CM3218x Ambient Light Sensor"}, 87313a0c13SJung-uk Kim {"DELLABCE", "Dell Airplane Mode Switch Driver"}, 88313a0c13SJung-uk Kim {"DLAC3002", "Qualcomm Atheros Bluetooth UART Transport"}, 89313a0c13SJung-uk Kim {"FTTH5506", "FocalTech 5506 Touch Controller"}, 90313a0c13SJung-uk Kim {"HAD0F28", "Intel HDMI Audio Driver"}, 91313a0c13SJung-uk Kim {"INBC0000", "GPIO Expander"}, 92313a0c13SJung-uk Kim {"INT0002", "Virtual GPIO Controller"}, 93313a0c13SJung-uk Kim {"INT0800", "Intel 82802 Firmware Hub Device"}, 94313a0c13SJung-uk Kim {"INT3394", "ACPI System Fan"}, 95313a0c13SJung-uk Kim {"INT3396", "Standard Power Management Controller"}, 96313a0c13SJung-uk Kim {"INT33A0", "Intel Smart Connect Technology Device"}, 97313a0c13SJung-uk Kim {"INT33A1", "Intel Power Engine"}, 98313a0c13SJung-uk Kim {"INT33BB", "Intel Baytrail SD Host Controller"}, 99313a0c13SJung-uk Kim {"INT33BD", "Intel Baytrail Mailbox Device"}, 100313a0c13SJung-uk Kim {"INT33BE", "Camera Sensor OV5693"}, 101313a0c13SJung-uk Kim {"INT33C0", "Intel Serial I/O SPI Host Controller"}, 102313a0c13SJung-uk Kim {"INT33C1", "Intel Serial I/O SPI Host Controller"}, 103313a0c13SJung-uk Kim {"INT33C2", "Intel Serial I/O I2C Host Controller"}, 104313a0c13SJung-uk Kim {"INT33C3", "Intel Serial I/O I2C Host Controller"}, 105313a0c13SJung-uk Kim {"INT33C4", "Intel Serial I/O UART Host Controller"}, 106313a0c13SJung-uk Kim {"INT33C5", "Intel Serial I/O UART Host Controller"}, 107313a0c13SJung-uk Kim {"INT33C6", "Intel SD Host Controller"}, 108313a0c13SJung-uk Kim {"INT33C7", "Intel Serial I/O GPIO Host Controller"}, 109313a0c13SJung-uk Kim {"INT33C8", "Intel Smart Sound Technology Host Controller"}, 110313a0c13SJung-uk Kim {"INT33C9", "Wolfson Microelectronics Audio WM5102"}, 111313a0c13SJung-uk Kim {"INT33CA", "Intel SPB Peripheral"}, 112313a0c13SJung-uk Kim {"INT33CB", "Intel Smart Sound Technology Audio Codec"}, 113313a0c13SJung-uk Kim {"INT33D1", "Intel GPIO Buttons"}, 114313a0c13SJung-uk Kim {"INT33D2", "Intel GPIO Buttons"}, 115313a0c13SJung-uk Kim {"INT33D3", "Intel GPIO Buttons"}, 116313a0c13SJung-uk Kim {"INT33D4", "Intel GPIO Buttons"}, 117313a0c13SJung-uk Kim {"INT33D6", "Intel Virtual Buttons Device"}, 118313a0c13SJung-uk Kim {"INT33F0", "Camera Sensor MT9M114"}, 119313a0c13SJung-uk Kim {"INT33F4", "XPOWER PMIC Controller"}, 120313a0c13SJung-uk Kim {"INT33F5", "TI PMIC Controller"}, 121313a0c13SJung-uk Kim {"INT33FB", "MIPI-CSI Camera Sensor OV2722"}, 122313a0c13SJung-uk Kim {"INT33FC", "Intel Baytrail GPIO Controller"}, 123313a0c13SJung-uk Kim {"INT33FD", "Intel Baytrail Power Management IC"}, 124313a0c13SJung-uk Kim {"INT33FE", "XPOWER Battery Device"}, 125313a0c13SJung-uk Kim {"INT3400", "Intel Dynamic Power Performance Management"}, 126313a0c13SJung-uk Kim {"INT3401", "Intel Extended Thermal Model CPU"}, 127313a0c13SJung-uk Kim {"INT3403", "DPTF Temperature Sensor"}, 128313a0c13SJung-uk Kim {"INT3406", "Intel Dynamic Platform & Thermal Framework Display Participant"}, 129313a0c13SJung-uk Kim {"INT3407", "DPTF Platform Power Meter"}, 130313a0c13SJung-uk Kim {"INT340E", "Motherboard Resources"}, 131313a0c13SJung-uk Kim {"INT3420", "Intel Bluetooth RF Kill"}, 132313a0c13SJung-uk Kim {"INT3F0D", "ACPI Motherboard Resources"}, 133313a0c13SJung-uk Kim {"INTCF1A", "Sony IMX175 Camera Sensor"}, 134313a0c13SJung-uk Kim {"INTCFD9", "Intel Baytrail SOC GPIO Controller"}, 135313a0c13SJung-uk Kim {"INTL9C60", "Intel Baytrail SOC DMA Controller"}, 136313a0c13SJung-uk Kim {"INVN6500", "InvenSense MPU-6500 Six Axis Gyroscope and Accelerometer"}, 137313a0c13SJung-uk Kim {"LNXCPU", "Linux Logical CPU"}, 138313a0c13SJung-uk Kim {"LNXPOWER", "ACPI Power Resource (power gating)"}, 139313a0c13SJung-uk Kim {"LNXPWRBN", "System Power Button"}, 140313a0c13SJung-uk Kim {"LNXSYBUS", "System Bus"}, 141313a0c13SJung-uk Kim {"LNXSYSTM", "ACPI Root Node"}, 142313a0c13SJung-uk Kim {"LNXTHERM", "ACPI Thermal Zone"}, 143313a0c13SJung-uk Kim {"LNXVIDEO", "ACPI Video Controller"}, 144313a0c13SJung-uk Kim {"MAX17047", "Fuel Gauge Controller"}, 145313a0c13SJung-uk Kim {"MSFT0101", "TPM 2.0 Security Device"}, 146313a0c13SJung-uk Kim {"NXP5442", "NXP 5442 Near Field Communications Controller"}, 147313a0c13SJung-uk Kim {"NXP5472", "NXP NFC"}, 148313a0c13SJung-uk Kim {"PNP0000", "8259-compatible Programmable Interrupt Controller"}, 149313a0c13SJung-uk Kim {"PNP0001", "EISA Interrupt Controller"}, 150313a0c13SJung-uk Kim {"PNP0002", "MCA Interrupt Controller"}, 151313a0c13SJung-uk Kim {"PNP0003", "IO-APIC Interrupt Controller"}, 152313a0c13SJung-uk Kim {"PNP0100", "PC-class System Timer"}, 153313a0c13SJung-uk Kim {"PNP0103", "HPET System Timer"}, 154313a0c13SJung-uk Kim {"PNP0200", "PC-class DMA Controller"}, 155313a0c13SJung-uk Kim {"PNP0300", "IBM PC/XT Keyboard Controller (83 key)"}, 156313a0c13SJung-uk Kim {"PNP0301", "IBM PC/XT Keyboard Controller (86 key)"}, 157313a0c13SJung-uk Kim {"PNP0302", "IBM PC/XT Keyboard Controller (84 key)"}, 158313a0c13SJung-uk Kim {"PNP0303", "IBM Enhanced Keyboard (101/102-key, PS/2 Mouse)"}, 159313a0c13SJung-uk Kim {"PNP0400", "Standard LPT Parallel Port"}, 160313a0c13SJung-uk Kim {"PNP0401", "ECP Parallel Port"}, 161313a0c13SJung-uk Kim {"PNP0500", "Standard PC COM Serial Port"}, 162313a0c13SJung-uk Kim {"PNP0501", "16550A-compatible COM Serial Port"}, 163313a0c13SJung-uk Kim {"PNP0510", "Generic IRDA-compatible Device"}, 164313a0c13SJung-uk Kim {"PNP0800", "Microsoft Sound System Compatible Device"}, 165313a0c13SJung-uk Kim {"PNP0A03", "PCI Bus"}, 166313a0c13SJung-uk Kim {"PNP0A05", "Generic Container Device"}, 167313a0c13SJung-uk Kim {"PNP0A06", "Generic Container Device"}, 168313a0c13SJung-uk Kim {"PNP0A08", "PCI Express Bus"}, 169313a0c13SJung-uk Kim {"PNP0B00", "AT Real-Time Clock"}, 170313a0c13SJung-uk Kim {"PNP0B01", "Intel PIIX4-compatible RTC/CMOS Device"}, 171313a0c13SJung-uk Kim {"PNP0B02", "Dallas Semiconductor-compatible RTC/CMOS Device"}, 172313a0c13SJung-uk Kim {"PNP0C01", "System Board"}, 173313a0c13SJung-uk Kim {"PNP0C02", "PNP Motherboard Resources"}, 174313a0c13SJung-uk Kim {"PNP0C04", "x87-compatible Floating Point Processing Unit"}, 175313a0c13SJung-uk Kim {"PNP0C08", "ACPI Core Hardware"}, 176313a0c13SJung-uk Kim {"PNP0C09", "Embedded Controller Device"}, 177313a0c13SJung-uk Kim {"PNP0C0A", "Control Method Battery"}, 178313a0c13SJung-uk Kim {"PNP0C0B", "Fan (Thermal Solution)"}, 179313a0c13SJung-uk Kim {"PNP0C0C", "Power Button Device"}, 180313a0c13SJung-uk Kim {"PNP0C0D", "Lid Device"}, 181313a0c13SJung-uk Kim {"PNP0C0E", "Sleep Button Device"}, 182313a0c13SJung-uk Kim {"PNP0C0F", "PCI Interrupt Link Device"}, 183313a0c13SJung-uk Kim {"PNP0C10", "System Indicator Device"}, 184313a0c13SJung-uk Kim {"PNP0C11", "Thermal Zone"}, 185313a0c13SJung-uk Kim {"PNP0C12", "Device Bay Controller"}, 186313a0c13SJung-uk Kim {"PNP0C14", "Windows Management Instrumentation Device"}, 187313a0c13SJung-uk Kim {"PNP0C15", "Docking Station"}, 188313a0c13SJung-uk Kim {"PNP0C40", "Standard Button Controller"}, 189313a0c13SJung-uk Kim {"PNP0C50", "HID Protocol Device (I2C bus)"}, 190313a0c13SJung-uk Kim {"PNP0C60", "Display Sensor Device"}, 191313a0c13SJung-uk Kim {"PNP0C70", "Dock Sensor Device"}, 192313a0c13SJung-uk Kim {"PNP0C80", "Memory Device"}, 193313a0c13SJung-uk Kim {"PNP0D10", "XHCI USB Controller with debug"}, 194313a0c13SJung-uk Kim {"PNP0D15", "XHCI USB Controller without debug"}, 195313a0c13SJung-uk Kim {"PNP0D20", "EHCI USB Controller without debug"}, 196313a0c13SJung-uk Kim {"PNP0D25", "EHCI USB Controller with debug"}, 197313a0c13SJung-uk Kim {"PNP0D40", "SDA Standard Compliant SD Host Controller"}, 198313a0c13SJung-uk Kim {"PNP0D80", "Windows-compatible System Power Management Controller"}, 199313a0c13SJung-uk Kim {"PNP0F03", "Microsoft PS/2-style Mouse"}, 200313a0c13SJung-uk Kim {"PNP0F13", "PS/2 Mouse"}, 201313a0c13SJung-uk Kim {"RTL8723", "Realtek Wireless Controller"}, 202313a0c13SJung-uk Kim {"SMB0349", "Charger"}, 203313a0c13SJung-uk Kim {"SMO91D0", "Sensor Hub"}, 204313a0c13SJung-uk Kim {"SMSC3750", "SMSC 3750 USB MUX"}, 205313a0c13SJung-uk Kim {"SSPX0000", "Intel SSP Device"}, 206313a0c13SJung-uk Kim {"TBQ24296", "Charger"}, 207313a0c13SJung-uk Kim 208313a0c13SJung-uk Kim {NULL, NULL} 209313a0c13SJung-uk Kim }; 210313a0c13SJung-uk Kim 211313a0c13SJung-uk Kim 212313a0c13SJung-uk Kim /******************************************************************************* 213313a0c13SJung-uk Kim * 214313a0c13SJung-uk Kim * FUNCTION: AcpiAhMatchHardwareId 215313a0c13SJung-uk Kim * 216313a0c13SJung-uk Kim * PARAMETERS: HardwareId - String representation of an _HID or _CID 217313a0c13SJung-uk Kim * 218313a0c13SJung-uk Kim * RETURN: ID info struct. NULL if HardwareId is not found 219313a0c13SJung-uk Kim * 220313a0c13SJung-uk Kim * DESCRIPTION: Lookup an _HID/_CID in the device ID table 221313a0c13SJung-uk Kim * 222313a0c13SJung-uk Kim ******************************************************************************/ 223313a0c13SJung-uk Kim 224313a0c13SJung-uk Kim const AH_DEVICE_ID * 225313a0c13SJung-uk Kim AcpiAhMatchHardwareId ( 226313a0c13SJung-uk Kim char *HardwareId) 227313a0c13SJung-uk Kim { 228313a0c13SJung-uk Kim const AH_DEVICE_ID *Info; 229313a0c13SJung-uk Kim 230313a0c13SJung-uk Kim 231313a0c13SJung-uk Kim for (Info = AslDeviceIds; Info->Name; Info++) 232313a0c13SJung-uk Kim { 233*5ef50723SJung-uk Kim if (!strcmp (HardwareId, Info->Name)) 234313a0c13SJung-uk Kim { 235313a0c13SJung-uk Kim return (Info); 236313a0c13SJung-uk Kim } 237313a0c13SJung-uk Kim } 238313a0c13SJung-uk Kim 239313a0c13SJung-uk Kim return (NULL); 240313a0c13SJung-uk Kim } 241