Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieses Dokument definiert den Inhalt der Umleitungstabelle für die serielle Portkonsole. Diese Tabelle wird verwendet, um anzugeben, ob ein serieller Port oder eine nicht ältere UART-Schnittstelle für die Verwendung mit Microsoft® Windows® Emergency Management Services (EMS) verfügbar ist.
Die Tabelle enthält Informationen zur Konfiguration und Verwendung des seriellen Ports oder der nicht älteren UART-Schnittstelle. Auf einem System, bei dem die BIOS- oder Systemfirmware den seriellen Port für die Konsoleneingabe/-ausgabe verwendet, sollte diese Tabelle verwendet werden, um Informationen zu den Einstellungen zu vermitteln, um einen nahtlosen Übergang zwischen der Ausgabe der Firmwarekonsole und der Windows EMS-Ausgabe sicherzustellen.
Diese Tabelle muss sich im Systemspeicher mit anderen ACPI-Tabellen befinden und in der ACPI RSDT-Tabelle referenziert werden.
Patenthinweis: Microsoft stellt bestimmte Patentrechte für die Umsetzung dieser Spezifikation unter zwei Optionen zur Verfügung:
- Microsofts Community-Zusage, verfügbar unter https://www.microsoft.com/openspecifications/en/us/programs/community-promise/default.aspx; oder
- Die Open Web Foundation Final Specification Agreement Version 1.0 ("OWF 1.0") ab dem 1. Oktober 2012, verfügbar auf der Open Web Foundation-Website .
| Field | Bytelänge | Byte-Offset | Description |
|---|---|---|---|
| Header | |||
| Signature | 4 | 0 | 'SPCR'. Signatur für die Umleitungstabelle der seriellen Portkonsole. |
| Length | 4 | 4 | Länge der gesamten Umleitungstabelle für die serielle Portkonsole( in Bytes), einschließlich NamespaceString. |
| Revision | 1 | 8 | Die aktuelle Tabellenrevision ist 4. |
| Checksum | 1 | 9 | Die gesamte Tabelle muss auf Null summiert werden. |
| OEM-ID | 6 | 10 | Originalgerätehersteller(OEM)-ID. |
| OEM-Tabellen-ID | 8 | 16 | Bei der Tabellen-Umleitungstabelle für die serielle Portkonsole ist die Tabellen-ID die Herstellermodell-ID. |
| OEM-Revision | 4 | 24 | OEM-Revision der Seriellen Port-Konsolenumleitungstabelle für die angegebene OEM-Tabellen-ID. |
| Creator-ID | 4 | 28 | Anbieter-ID des Hilfsprogramms, das die Tabelle erstellt hat. |
| Creator-Revision | 4 | 32 | Überarbeitung des Hilfsprogramms, das die Tabelle erstellt hat. |
| Schnittstellentyp | 1 | 36 | Gibt den Typ der Registerschnittstelle an: Für Revision 1:
Siehe die Untertypen des seriellen Ports in Tabelle 3 der DBG2-Spezifikation. |
| Reserved | 3 | 37 | Muss den Wert 0 (null) haben. |
| Basisadresse | 12 | 40 | Die Basisadresse des Registers für den seriellen Port, der mithilfe der generischen ACPI-Adressstruktur beschrieben wird, oder 0, wenn die Konsolenumleitung deaktiviert ist. Note: COM1 (0x3F8) wäre:
|
| Interrupttyp | 1 | 52 | Interrupttypen, die von der UART verwendet werden:
Plattformen mit einem Dual-8259- und einem I/O-APIC oder I/O SAPIC müssen die IRQ-Bit (Bit[0]) und das entsprechende globale System Interrupt-Bit (z. B. ein System, das 8259 unterstützt hat, und SAPIC wäre 5). |
| IRQ | 1 | 53 | Der PC-AT-kompatible IRQ, der von der UART verwendet wird:
|
| Globaler Systemunterbruch | 4 | 54 | Der globale System interrupt (GSIV), der von der UART verwendet wird. Ungültig, wenn Bit[1:7] des Felds "Interrupttyp" 0 ist. Wenn Bit 3 des Felds "InterruptTyp" (ARMH GIC) festgelegt ist, wird ein Arm GIC-Interruptcontroller verwendet. Arm GIC SGI- und PPI-Interrupts können nicht für die UART verwendet werden. Für GICv4 (und niedriger) ist es verboten, dass dieses Feld auf einen beliebigen Wert in {0, ..., 31} oder in {1056, ..., 1119} festgelegt wird. Für GICv5 (und höher), INTID. Der Typ darf nicht gleich 1 (PPI) sein, es gibt keine Einschränkungen für den Wert für INTID.ID. |
| Konfigurierte Baudrate | 1 | 58 | Die Baudrate des BIOS, das für die Umleitung verwendet wird:
|
| Parity | 1 | 59 |
|
| Stoppbits | 1 | 60 |
|
| Flowsteuerung | 1 | 61 |
|
| Terminaltyp | 1 | 62 | Das Terminalprotokoll, das das BIOS für die Konsolenumleitung verwendet hat:
|
| Language | 1 | 63 | Sprache, die das BIOS umleitet. Muss den Wert 0 (null) haben. |
| PCI-Geräte-ID | 2 | 64 | Legt die Geräte-ID eines PCI-Geräts fest, das eine UART enthält, die als Headless-Port verwendet werden soll. Muss 0xFFFF sein, wenn es sich nicht um ein PCI-Gerät handelt. |
| PCI-Anbieter-ID | 2 | 66 | Legt die Anbieter-ID eines PCI-Geräts fest, das eine UART enthält, die als Headless-Port verwendet werden soll. Muss 0xFFFF sein, wenn es sich nicht um ein PCI-Gerät handelt. |
| PCI-Busnummer | 1 | 68 | PCI Bus Number if table describes a PCI device. Muss 0x00 sein, wenn es sich nicht um ein PCI-Gerät handelt. |
| PCI-Gerätenummer | 1 | 69 | PCI Device Number if table describes a PCI device. Muss 0x00 sein, wenn es sich nicht um ein PCI-Gerät handelt. |
| PCI-Funktionsnummer | 1 | 70 | PCI Function Number if table describes a PCI device. Muss 0x00 sein, wenn es sich nicht um ein PCI-Gerät handelt. |
| PCI-Flags | 4 | 71 | PCI-Kompatibilität kennzeichnet Bitmaske. Sollte standardmäßig null sein.
|
| PCI-Segment | 1 | 75 | PCI-Segmentnummer. Für Systeme mit weniger als 255 PCI-Bussen muss diese Zahl 0 sein. |
| UART-Taktfrequenz | 4 | 76 | Für Revision 2 oder niedriger:
|
| Präzise Baudrate | 4 | 80 | Enthält eine bestimmte Nicht-Null-Baudrate, die den Wert des Felds "Konfigurierter Baudsatz" überschreibt. Wenn dieses Feld null oder nicht vorhanden ist, wird konfigurierte Baudrate verwendet. Siehe Hinweis weiter unten. |
| NamespaceStringLength | 2 | 84 | Länge in Bytes von NamespaceString, einschließlich NUL-Zeichen. |
| NamespaceStringOffset | 2 | 86 | Offset (in Bytes) vom Anfang dieser Struktur bis zum Feld NamespaceString[]. Dieser Wert muss gültig sein, da diese Zeichenfolge vorhanden sein muss. |
| NamespaceString[] | NamespaceStringLength | NamespaceStringOffset | NUL-gekündigte ASCII-Zeichenfolge, um dieses Gerät eindeutig zu identifizieren. Diese Zeichenfolge besteht aus einem vollqualifizierten Verweis auf das Objekt, das dieses Gerät im ACPI-Namespace darstellt. Wenn kein Namespacegerät vorhanden ist, darf NamespaceString[] nur ein einzelnes '' enthalten. (ASCII-Punkt) Zeichen. |
Hinweis zu den BaudRate-Feldern
Das Feld "Konfigurierter Baudsatz" ist seit der Erstellung der SPCR-Tabelle als Einzelbytefeld vorhanden und wird von Betriebssystemen weit unterstützt. Da es sich jedoch um eine Aufzählung handelt, ist sie in ihrer Fähigkeit beschränkt, nicht herkömmliche Baudraten genau zu beschreiben, z. B. solche, die von Hochgeschwindigkeits-UARTs verwendet werden. So wurde das Feld "Präzise Baudrate" hinzugefügt, um Firmware zu ermöglichen, unterstützende Betriebssysteme einen DWORD-Wert bereitzustellen, der eine bestimmte Baudrate beschreibt (z. B. 1500000). Wenn das Feld "Genauer Baudsatz" einen Wert ungleich Null enthält, muss das Feld "Konfigurierter Baudsatz" null sein.
Überarbeitungsverlauf
| Date | Rev | Description |
|---|---|---|
| 2/15/00 | .10 | Created |
| 3/1/00 | .50 | 'SPCR'. Hinzugefügte Signaturdaten |
| 3/20/00 | .55 | Daten, die überarbeitet wurden, um Port und Irq einzuschließen |
| 3/22/00 | .56 | Klärung der Portidentifikation Hinzugefügte Möglichkeit zum Deaktivieren der Umleitung. Zeiger zur generischen Registeradressenstruktur hinzugefügt |
| 3/23/00 | 0,56a | Formatierung, Haftungsausschluss, Kopierbearbeitung |
| 4/24/00 | .6 | Veröffentlicht im Web für WinHEC |
| 4/24/00 | .6 | Öffentlicher Prüfentwurf veröffentlicht |
| 5/25/00 | .61 | Korrektur an BASE_ADDRESS Beschreibung |
| 5/25/00 | .61 | Öffentlicher Prüfentwurf veröffentlicht |
| 5/31/00 | .7 | Korrektur an BASE_ADDRESS Beschreibungsbeispielen. Schnittstelle 16540 hinzugefügt. |
| 5/31/00 | .71 | Änderte die Informationen auf der GRAS von einer Notiz in ein "*" |
| 5/31/00 | .71 | Öffentlicher Prüfentwurf veröffentlicht |
| 6/1/00 | .72 | Geänderte GRAS COM-Portbeispiele als "little-endian". Text am Ende der Zeile hinzugefügt |
| 7/12/00 | .75 | IrQ-Beschreibung wurde behoben. Es wurden verschiedene Formatprobleme behoben, die PCI-Businformationen hinzugefügt wurden. |
| 7/26/00 | .76 | Aktualisieren sie auf den PCI-Feldnamen "Device Number". Die Einführungssprache wurde geändert, um nicht ältere UART einzuschließen. |
| 8/10/00 | .77 | Geänderte Interruptinformationen, Hinzufügen von APIC und SAPIC Added Flow Control |
| 9/22/00 | .78 | PCI-Segment hinzugefügt |
| 10/25/00 | .80 | Abschnitt "PCI-Flags" wurde behoben. Hinzugefügte Terminaltypen hinzugefügt 16450 FCR-Informationen |
| 10/1/01 | .95 | Entfernte Sprachcodes |
| 1/11/02 | 1.00 | Hinzufügen der aktualisierten Lizenzierungsspezifikation zu 1.00 |
| 3/12/14 | 1.01 | Veröffentlicht unter Microsoft Community Promise |
| 6/2/14 | 1.02 | Die Tabellenrevision wurde in 2 geändert und unterstützung für zusätzliche Schnittstellentypen hinzugefügt, wie in der DBG2-Spezifikation definiert. |
| 8/10/15 | 1.03 | Aktualisierter Patenthinweis. |
| 7/23/2018 | 1.04 | |
| 6/5/2020 | 1.05 | Bearbeitete Formatierung |
| 9/1/2020 | 1.06 | Bearbeitete Formatierung und aktualisierter Link zur DBG2-Spezifikation |
| 2/17/2021 | 1.07 | Falsche Beschreibung im Feld "Stop Bits" wurde behoben. Versehentliches Entfernen des Flusssteuerungsfelds rückgängigmachen. Bearbeitete Formatierung. |
| 10/7/2021 | 1.08 | Tabelle Revision in 3 geändert und erstellt Feld für UART-Takthäufigkeit. Bearbeitete Formatierung. |
| 4/10/2023 | 1.09 | Tabellenüberarbeitung in 4 geändert. Unterstützung für RISC-V und abgefragte Unterstützung für das Feld "InterruptTyp" hinzugefügt. Neue Felder hinzugefügt: Präzise BaudRate, NamespaceStringLength, NamespaceStringOffset und NamespaceString[]. |
| 01.05.2023 | 1.10 | Klärung des Worts in den Feldern "Global System Interrupt" und "UART Clock Frequency". |