Freigeben über


ACPI-Namespacehierarchie

Die ACPI-Namespacehierarchie muss die Hardwaretopologie der Plattform genau modellen, beginnend mit dem Systembus des Prozessors ("_SB"). Im Allgemeinen wird ein Gerät, das eine Verbindung mit einem Bus oder Controller herstellt, als untergeordnetes Element dieses Bus- oder Controllergeräts im Namespace angezeigt.

Die folgenden Regeln gelten speziell für SoC-basierte Plattformen:

  • Speicherabbild-Funktionsblöcke (einschließlich Prozessoren) werden direkt unter dem Knoten _SB angezeigt.

  • Peripheriegeräte, die eine Verbindung mit einer Kombination aus einfachen SpB-Controllern und/oder GPIO-Controllern herstellen, beschreiben ihre Verbindungen mit diesen Controllern als Verbindungsressourcen. Weitere Informationen finden Sie unter General Purpose I/O (GPIO) und Simple Peripheral Bus (SPB).For more information, see General Purpose I/O (GPIO) and Simple Peripheral Bus (SPB).

    Peripheriegeräte, die auf diese Weise verbunden sind, können direkt unter dem _SB Knoten oder unter einem übergeordneten SPB- oder GPIO-Controller angezeigt werden. Letzteres wird nach Möglichkeit bevorzugt, da sie die Gerätebeziehung direkt im Namespace selbst angibt, anstatt die Decodierung von Ressourcen zum Ermitteln der Beziehung zu erfordern.

  • Alle funktionsbasierten Blöcke oder Peripheriegeräte, die über einen Standardbus verbunden sind, der hardwarebasierte Enumeration (z. B. SDIO und USB) unterstützt, müssen überhaupt nicht im Namespace angezeigt werden.

    Sie müssen jedoch in bestimmten Fällen solche Geräte im Namespace ihrem zugehörigen übergeordneten Controller unterordnen. Dies ist beispielsweise mit eingebetteten USB-HSIC- oder SDIO-Geräten erforderlich, bei denen plattformspezifische (nicht standardmäßige) Steuerelemente (z. B. Netzschalter, GPIO- oder SPB-Verbindungen usw.) dem Gerät als Teil des Systemdesigns zugeordnet sind. In diesem Fall listet der standardmäßige übergeordnete Bustreiber das Gerät auf, aber der Windows ACPI-Treiber, Acpi.sys, wird als Filter im Treiberstapel geladen, um die Steuermethoden für die nicht standardmäßigen Steuerungen nach Bedarf im Namen des Bustreibers aufzurufen.

  • Alle "privaten" Busse oder Geräte (z. B. I2S), die für die Verwendung eines Funktionstreibers (z. B. des Audiotreibers) vorgesehen sind, müssen überhaupt nicht im Namespace angezeigt werden. In diesem Fall müssen jedoch alle vom Gerät verwendeten Systemressourcen in der Ressourcenliste des Funktionsgeräts im Namespace angezeigt werden. Weitere Informationen finden Sie im Abschnitt " Gerätekonfigurationsobjekte " im Thema "Objekte des Geräteverwaltungsnamespaces ".

ACPI definiert viele Standardnamespaceobjekte und -methoden, aber Implementierer können neue definieren, wie sie erforderlich sind. Die ACPI-definierten Objekte und Methoden werden für allgemeine Betriebssystemfunktionen wie die folgenden verwendet:

Plattformbeschreibung Beispiel: Geräteidentifikation und Systemressourcenzuordnung.

Allgemeine Gerätesteuerung Zum Beispiel das Konfigurieren von Ressourcen und das Steuern von Energieressourcen.

Klassenspezifische Steuerung von Funktionen Beispielsweise das Dimmen von Displays oder die Meldung des Akkustatus.