[SeaBIOS] [PATCH 19/20] acpi: move isa devices to separate file [q35]

Gerd Hoffmann kraxel at redhat.com
Tue Nov 27 10:20:23 CET 2012


Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
---
 src/q35-acpi-dsdt.dsl |  170 ++----------------------------------------------
 1 files changed, 8 insertions(+), 162 deletions(-)

diff --git a/src/q35-acpi-dsdt.dsl b/src/q35-acpi-dsdt.dsl
index d1175cf..e9a9711 100644
--- a/src/q35-acpi-dsdt.dsl
+++ b/src/q35-acpi-dsdt.dsl
@@ -259,6 +259,7 @@ DefinitionBlock (
     }
 
 #include "acpi-dsdt-hpet.dsl"
+#include "acpi-dsdt-isa.dsl"
 
     Scope(\_SB.PCI0) {
         Device (VGA) {
@@ -321,178 +322,23 @@ DefinitionBlock (
             }
 
             /* Real-time clock */
-            Device (RTC)
-            {
-                Name (_HID, EisaId ("PNP0B00"))
-                Name (_CRS, ResourceTemplate ()
-                {
-                    IO (Decode16, 0x0070, 0x0070, 0x10, 0x02)
-                    IRQNoFlags () {8}
-                    IO (Decode16, 0x0072, 0x0072, 0x02, 0x06)
-                })
-            }
+            ISA_DEVICE_RTC(RTC)
 
             /* Keyboard seems to be important for WinXP install */
-            Device (KBD)
-            {
-                Name (_HID, EisaId ("PNP0303"))
-                Method (_STA, 0, NotSerialized)
-                {
-                    Return (0x0f)
-                }
-
-                Method (_CRS, 0, NotSerialized)
-                {
-                     Name (TMP, ResourceTemplate ()
-                     {
-                    IO (Decode16,
-                        0x0060,             // Address Range Minimum
-                        0x0060,             // Address Range Maximum
-                        0x01,               // Address Alignment
-                        0x01,               // Address Length
-                        )
-                    IO (Decode16,
-                        0x0064,             // Address Range Minimum
-                        0x0064,             // Address Range Maximum
-                        0x01,               // Address Alignment
-                        0x01,               // Address Length
-                        )
-                    IRQNoFlags ()
-                        {1}
-                    })
-                    Return (TMP)
-                }
-            }
+            ISA_DEVICE_PS2_KBD(KBD)
 
 	    /* PS/2 mouse */
-            Device (MOU)
-            {
-                Name (_HID, EisaId ("PNP0F13"))
-                Method (_STA, 0, NotSerialized)
-                {
-                    Return (0x0f)
-                }
-
-                Method (_CRS, 0, NotSerialized)
-                {
-                    Name (TMP, ResourceTemplate ()
-                    {
-                         IRQNoFlags () {12}
-                    })
-                    Return (TMP)
-                }
-            }
+            ISA_DEVICE_PS2_MOUSE(MOU)
 
 	    /* PS/2 floppy controller */
-	    Device (FDC0)
-	    {
-	        Name (_HID, EisaId ("PNP0700"))
-		Method (_STA, 0, NotSerialized)
-		{
-                    Store (\_SB.PCI0.LPC.FDEN, Local0)
-                    If (LEqual (Local0, 0))
-                    {
-                         Return (0x00)
-                    }
-                    Else
-                    {
-                         Return (0x0F)
-                    }
-		}
-		Method (_CRS, 0, NotSerialized)
-		{
-		    Name (BUF0, ResourceTemplate ()
-                    {
-                        IO (Decode16, 0x03F2, 0x03F2, 0x00, 0x04)
-                        IO (Decode16, 0x03F7, 0x03F7, 0x00, 0x01)
-                        IRQNoFlags () {6}
-                        DMA (Compatibility, NotBusMaster, Transfer8) {2}
-                    })
-		    Return (BUF0)
-		}
-	    }
+            ISA_DEVICE_FLOPPY(FDC0, \_SB.PCI0.LPC.FDEN)
 
 	    /* Parallel port */
-	    Device (LPT)
-	    {
-	        Name (_HID, EisaId ("PNP0400"))
-		Method (_STA, 0, NotSerialized)
-		{
-		    Store (\_SB.PCI0.LPC.LPEN, Local0)
-		    If (LEqual (Local0, 0))
-		    {
-			Return (0x00)
-		    }
-		    Else
-		    {
-			Return (0x0F)
-		    }
-		}
-		Method (_CRS, 0, NotSerialized)
-		{
-		    Name (BUF0, ResourceTemplate ()
-                    {
-			IO (Decode16, 0x0378, 0x0378, 0x08, 0x08)
-			IRQNoFlags () {7}
-		    })
-		    Return (BUF0)
-		}
-	    }
+            ISA_DEVICE_PARALLEL(LPT, \_SB.PCI0.LPC.LPEN, 0x0378, 7)
 
 	    /* Serial Ports */
-	    Device (COM1)
-	    {
-	        Name (_HID, EisaId ("PNP0501"))
-		Name (_UID, 0x01)
-		Method (_STA, 0, NotSerialized)
-		{
-		    Store (\_SB.PCI0.LPC.CAEN, Local0)
-		    If (LEqual (Local0, 0))
-		    {
-			Return (0x00)
-		    }
-		    Else
-		    {
-			Return (0x0F)
-		    }
-		}
-		Method (_CRS, 0, NotSerialized)
-		{
-		    Name (BUF0, ResourceTemplate ()
-                    {
-			IO (Decode16, 0x03F8, 0x03F8, 0x00, 0x08)
-                	IRQNoFlags () {4}
-		    })
-		    Return (BUF0)
-		}
-	    }
-
-	    Device (COM2)
-	    {
-	        Name (_HID, EisaId ("PNP0501"))
-		Name (_UID, 0x02)
-		Method (_STA, 0, NotSerialized)
-		{
-		    Store (\_SB.PCI0.LPC.CBEN, Local0)
-		    If (LEqual (Local0, 0))
-		    {
-			Return (0x00)
-		    }
-		    Else
-		    {
-			Return (0x0F)
-		    }
-		}
-		Method (_CRS, 0, NotSerialized)
-		{
-		    Name (BUF0, ResourceTemplate ()
-                    {
-			IO (Decode16, 0x02F8, 0x02F8, 0x00, 0x08)
-                	IRQNoFlags () {3}
-		    })
-		    Return (BUF0)
-		}
-	    }
+            ISA_DEVICE_SERIAL(COM1, \_SB.PCI0.LPC.CAEN, 0x03F8, 4)
+            ISA_DEVICE_SERIAL(COM2, \_SB.PCI0.LPC.CBEN, 0x02F8, 3)
         }
     }
 
-- 
1.7.1




More information about the SeaBIOS mailing list