⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsdt.asl

📁 xen虚拟机源代码安装包
💻 ASL
📖 第 1 页 / 共 3 页
字号:
/****************************************************************************** * DSDT for Xen with Qemu device model * * Copyright (c) 2004, Intel Corporation. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, * version 2, as published by the Free Software Foundation. * * This program is distributed in the hope it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 59 Temple * Place - Suite 330, Boston, MA 02111-1307 USA. */DefinitionBlock ("DSDT.aml", "DSDT", 2, "Xen", "HVM", 0){    Name (\PMBS, 0x0C00)    Name (\PMLN, 0x08)    Name (\IOB1, 0x00)    Name (\IOL1, 0x00)    Name (\APCB, 0xFEC00000)    Name (\APCL, 0x00010000)    Name (\PUID, 0x00)    Scope (\_PR)    {        Processor (PR00, 0x00, 0x0000, 0x00) {}        Processor (PR01, 0x01, 0x0000, 0x00) {}        Processor (PR02, 0x02, 0x0000, 0x00) {}        Processor (PR03, 0x03, 0x0000, 0x00) {}        Processor (PR04, 0x04, 0x0000, 0x00) {}        Processor (PR05, 0x05, 0x0000, 0x00) {}        Processor (PR06, 0x06, 0x0000, 0x00) {}        Processor (PR07, 0x07, 0x0000, 0x00) {}        Processor (PR08, 0x08, 0x0000, 0x00) {}        Processor (PR09, 0x09, 0x0000, 0x00) {}        Processor (PR0A, 0x0a, 0x0000, 0x00) {}        Processor (PR0B, 0x0b, 0x0000, 0x00) {}        Processor (PR0C, 0x0c, 0x0000, 0x00) {}        Processor (PR0D, 0x0d, 0x0000, 0x00) {}        Processor (PR0E, 0x0e, 0x0000, 0x00) {}        /* No more than 15 Processor objects, as otherwise Windows 2000         * experiences a BSOD of KMODE_EXCEPTION_NOT_HANDLED. If we require         * more in some configurations then we should move \_PR scope into a         * SSDT, statically compiled with a range of different numbers of         * processors. We can then link the appropriate one into the RSDT/XSDT         * at HVM guest boot time. */    }    /*     * S3 (suspend-to-ram), S4 (suspend-to-disc) and S5 (power-off) type codes:     * must match piix4 emulation.     */    Name (\_S3, Package (0x04)    {        0x05,  /* PM1a_CNT.SLP_TYP */        0x05,  /* PM1b_CNT.SLP_TYP */        0x0,   /* reserved */        0x0    /* reserved */    })    Name (\_S4, Package (0x04)    {        0x06,  /* PM1a_CNT.SLP_TYP */        0x06,  /* PM1b_CNT.SLP_TYP */        0x00,  /* reserved */        0x00   /* reserved */    })    Name (\_S5, Package (0x04)    {        0x07,  /* PM1a_CNT.SLP_TYP */        0x07,  /* PM1b_CNT.SLP_TYP */        0x00,  /* reserved */        0x00   /* reserved */    })    Name(PICD, 0)    Method(_PIC, 1)    {        Store(Arg0, PICD)     }    Scope (\_SB)    {       /* ACPI_PHYSICAL_ADDRESS == 0xEA000 */       OperationRegion(BIOS, SystemMemory, 0xEA000, 16)       Field(BIOS, ByteAcc, NoLock, Preserve) {           UAR1, 1,           UAR2, 1,           HPET, 1,           Offset(4),           PMIN, 32,           PLEN, 32       }        /* Fix HCT test for 0x400 pci memory:         * - need to report low 640 MB mem as motherboard resource         */       Device(MEM0)       {           Name(_HID, EISAID("PNP0C02"))           Name(_CRS, ResourceTemplate() {               QWordMemory(                    ResourceConsumer, PosDecode, MinFixed,                    MaxFixed, Cacheable, ReadWrite,                    0x00000000,                    0x00000000,                    0x0009ffff,                    0x00000000,                    0x000a0000)           })       }       Device (PCI0)       {           Name (_HID, EisaId ("PNP0A03"))           Name (_UID, 0x00)           Name (_ADR, 0x00)           Name (_BBN, 0x00)           Method (_CRS, 0, NotSerialized)           {               Name (PRT0, ResourceTemplate ()               {                   /* bus number is from 0 - 255*/                   WordBusNumber(                        ResourceProducer, MinFixed, MaxFixed, SubDecode,                        0x0000,                        0x0000,                        0x00FF,                        0x0000,                        0x0100)                    IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08)                    WordIO(                        ResourceProducer, MinFixed, MaxFixed, PosDecode,                        EntireRange,                        0x0000,                        0x0000,                        0x0CF7,                        0x0000,                        0x0CF8)                    WordIO(                        ResourceProducer, MinFixed, MaxFixed, PosDecode,                        EntireRange,                        0x0000,                        0x0D00,                        0xFFFF,                        0x0000,                        0xF300)                    /* reserve memory for pci devices */                    DWordMemory(                        ResourceProducer, PosDecode, MinFixed, MaxFixed,                        Cacheable, ReadWrite,                        0x00000000,                        0x000A0000,                        0x000BFFFF,                        0x00000000,                        0x00020000)                    DWordMemory(                        ResourceProducer, PosDecode, MinFixed, MaxFixed,                        Cacheable, ReadWrite,                        0x00000000,                        0xF0000000,                        0xF4FFFFFF,                        0x00000000,                        0x05000000,                        ,, _Y01)                })                CreateDWordField(PRT0, \_SB.PCI0._CRS._Y01._MIN, MMIN)                CreateDWordField(PRT0, \_SB.PCI0._CRS._Y01._MAX, MMAX)                CreateDWordField(PRT0, \_SB.PCI0._CRS._Y01._LEN, MLEN)                Store(\_SB.PMIN, MMIN)                Store(\_SB.PLEN, MLEN)                Add(MMIN, MLEN, MMAX)                Subtract(MMAX, One, MMAX)                Return (PRT0)            }            Name(BUFA, ResourceTemplate() {                IRQ(Level, ActiveLow, Shared) { 5, 10, 11 }            })            Name(BUFB, Buffer() {                0x23, 0x00, 0x00, 0x18, /* IRQ descriptor */                0x79, 0                 /* End tag, null checksum */            })            CreateWordField(BUFB, 0x01, IRQV)            Device(LNKA) {                Name(_HID, EISAID("PNP0C0F")) /* PCI interrupt link */                Name(_UID, 1)                Method(_STA, 0) {                    And(PIRA, 0x80, Local0)                    If(LEqual(Local0, 0x80)) {                        Return(0x09)                       } Else {                        Return(0x0B)                     }                }                Method(_PRS) {                    Return(BUFA)                }                Method(_DIS) {                    Or(PIRA, 0x80, PIRA)                }                Method(_CRS) {                    And(PIRA, 0x0f, Local0)                    ShiftLeft(0x1, Local0, IRQV)                    Return(BUFB)                }                Method(_SRS, 1) {                    CreateWordField(ARG0, 0x01, IRQ1)                    FindSetRightBit(IRQ1, Local0)                    Decrement(Local0)                    Store(Local0, PIRA)                }            }            Device(LNKB) {                Name(_HID, EISAID("PNP0C0F")) /* PCI interrupt link */                Name(_UID, 2)                Method(_STA, 0) {                    And(PIRB, 0x80, Local0)                    If(LEqual(Local0, 0x80)) {                        Return(0x09)                     } Else {                        Return(0x0B)                     }                }                Method(_PRS) {                    Return(BUFA)                 }                Method(_DIS) {                    Or(PIRB, 0x80, PIRB)                }                Method(_CRS) {                    And(PIRB, 0x0f, Local0)                     ShiftLeft(0x1, Local0, IRQV)                     Return(BUFB)                 }                Method(_SRS, 1) {                    CreateWordField(ARG0, 0x01, IRQ1)                     FindSetRightBit(IRQ1, Local0)                     Decrement(Local0)                    Store(Local0, PIRB)                 }            }            Device(LNKC) {                Name(_HID, EISAID("PNP0C0F")) /* PCI interrupt link */                Name(_UID, 3)                Method(_STA, 0) {                    And(PIRC, 0x80, Local0)                    If(LEqual(Local0, 0x80)) {                        Return(0x09)                     } Else {                        Return(0x0B)                    }                }                Method(_PRS) {                     Return(BUFA)                }                Method(_DIS) {                    Or(PIRC, 0x80, PIRC)                }                Method(_CRS) {                    And(PIRC, 0x0f, Local0)                     ShiftLeft(0x1, Local0, IRQV) 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -