Multifunktionsaudiogeräte

Ein Multifunktionsgerät ist ein einzelner Adapter Karte, der zwei oder mehr separate Funktionen (oder Untergeräte) enthält. Ein Multifunktionsgerät kann mindestens zwei Audiountergeräte enthalten. Es kann auch Geräteklassen umfassen. Ein Gerät, das Audio- und Modemuntergeräte für instance enthält, gehört sowohl zur Medienklasse als auch zur Modemklasse. Weitere Informationen finden Sie unter Unterstützung von Multifunktionsgeräten.

Der WavePci-Porttreiber in PortCls stellt besondere Anforderungen an Multifunktionsgeräte. Insbesondere muss ein Adaptertreiber eine Möglichkeit bieten, jedes Untergerät so zu konfigurieren, dass es unabhängig von den anderen Untergeräten in einem Multifunktionsgerät gesteuert werden kann. Dies kann erreicht werden, indem Sie den PCI-Konfigurationsraum für Ihr Multifunktionsgerät auf zwei Arten einrichten:

  1. Die bevorzugte Methode besteht darin, jedem logisch unterschiedlichen Untergerät auf Ihrem Multifunktionsgerät eine separate Geräte-ID zuzuweisen. Wenn Ihr Multifunktionsgerät beispielsweise Modem-, Audio- und Joystick-Untergeräte enthält, sollte das System in der Lage sein, jedes Untergerät als eigenständigen Devnode in der Gerätestruktur darzustellen. Das durch jede Geräte-ID dargestellte Untergerät verfügt über einen eigenen Satz von PCI-Konfigurationsregistern und ist orthogonal zu und unabhängig von den anderen Untergeräten. Für instance sollte das Aktivieren oder Deaktivieren eines Untergerätes (z. B. das Audiountergerät) keine Auswirkungen auf andere Untergeräte (z. B. das Modem) haben. Diese Art von Multifunktionsgeräten erfordert keine spezielle hardwarespezifische Treiberunterstützung, abgesehen von den proprietären Treibern für die Untergeräte selbst.

  2. Eine zweite Möglichkeit zum Entwerfen eines Multifunktionsgeräts besteht darin, dem Gerät als Ganzes eine einzelne Geräte-ID zuzuweisen und separate PCI-Basisadressenregister (BARs) für die einzelnen Untergeräte bereitzustellen. In diesem Schema verwenden die Untergeräte einen gemeinsamen Satz von Konfigurationsregistern, aber jedes Untergeräte verfügt über eigene BAR- oder BARs. Der System-Multifunktionstreiber (z. B.Mf.sys unter Microsoft Windows 2000 und höher; siehe Verwenden des System-Supplied Multifunction Bus Driver) kann die Basisadresse für die status, Befehle und Datenregister der einzelnen Untergeräte unabhängig von den Registern für die anderen Funktionen konfigurieren. Wenn die BARs Ihres Geräts nicht logisch nach Untergeordnetem getrennt werden können, können Sie Ihr Gerät nicht mit PortCls verwalten.

Im weiteren Verlauf dieses Abschnitts werden die schritte beschrieben, die zum Implementieren des Ansatzes (2) in der vorherigen Liste erforderlich sind. Die folgenden Themen werden erörtert:

Mehrere Audiountergeräte

Grenzwerte für Multifunktionsgeräte