モダン スタンバイ プラットフォームに対するカメラの電源管理

モダン モバイル プラットフォームのカメラを使うと、周囲の静止画と動画を撮影することや、ビデオと音声を使ってインターネット経由で他のユーザーと通信することができます。 カメラ デバイスの電源管理の一般的な目標は簡単に説明できます。カメラがアクティブに使われていない限り、カメラ サブシステムの電源をオフにし、消費電力を 0 ワットにする必要があります。

カメラをアクティブに使ってアプリケーションにビデオをストリーミングする場合は、カメラ センサーと関連コンポーネントの電源をオンにする必要があります。 Windows を使うと、カメラ デバイスからデータをストリーミングしている可能性のあるフォアグラウンドの Microsoft Store アプリを一時停止することにより、モダン スタンバイ時にカメラ ハードウェアをオフにすることができます。 Windows では、システムがモダン スタンバイ状態にあるカメラ デバイスの使用を規定していないため、カメラ デバイスを使用できるのは、ディスプレイがオンになっているときのみです。

カメラ サブシステム

電源管理の観点から言うと、カメラはモバイル プラットフォームの中で最も複雑なデバイス サブシステムの 1 つです。 この複雑さの原因は、System on a Chip (SoC) に統合されているデジタルおよび画像信号処理ユニットと、SoC チップの外部にあるカメラ センサー、オートフォーカス、フラッシュ コンポーネントとの間に必要な緊密な調整によるものです。

次の説明では、on-SoC コンポーネントという用語は、SoC チップに統合されているコンポーネントを示しています。 off-SoC コンポーネントは、SoC チップの外部にあります。

on-SoC 画像処理ハードウェアを 2 つ以上のカメラ サブシステム間で多重化する必要がある場合、カメラ サブシステムの設計はさらに複雑になります。

タブレット PC には、前面カメラと背面カメラの両方が搭載されていることが予想されますが、これらのカメラは同じ on-SoC 画像処理ハードウェアを共有します。 ハードウェア共有は、ハードウェア レイヤーとソフトウェア レイヤーの両方での多重化を意味します。 このように複雑なため、システム インテグレーターは SoC シリコン ベンダーと密接に連携して、カメラをプラットフォームに統合し、カメラ デバイスの電源管理を実装する必要があります。

システムがモダン スタンバイ (ディスプレイ オフ) の場合、カメラ センサー、カメラ処理ユニット、オプションのオートフォーカス、フラッシュ コンポーネントは、その電源を切り、消費電力を 0 ワットにする必要があります。 SoC 上のカメラ コンポーネントの場合、SoC ベンダーが画像処理コンポーネントを管理するドライバーを提供する必要があります。 画像処理ドライバーにより、on-SoC コンポーネントの電源管理を電源エンジン プラグイン (PEP) と調整します。

センサー、オートフォーカス、フラッシュを含む off-SoC カメラ コンポーネントについては、システム インテグレーターが、ACPI ファームウェアによって制御される電源レール切り替え機能と関連 GPIO 制御シグナリングを提供する必要があります。

また、システム インテグレーターは、センサー、オートフォーカス、フラッシュ ハードウェアを直接管理するために、1 つ以上のデバイス ドライバーを提供する必要があります。 カメラ サブシステムは複雑であり、on-SoC コンポーネントと off-SoC コンポーネント間に依存関係があるため、通常、カメラ センサーとフラッシュ ドライバーは SoC ベンダーが提供します。 システム インテグレーターは、カーネルモードの AVStream ミニドライバーであるカメラ コントローラー ドライバーも提供する必要があります。 カメラ コントローラー ドライバーは、カメラ デバイスを Windows マルチメディア サブシステムに公開する役割を果たします。 ただし、AVStream ミニドライバー モデルが複雑なため、プラットフォームのハードウェアをこのドライバーで直接制御しないことをお勧めします。 その代わり、カメラ コントローラー ドライバーは、ハードウェア リソースへのアクセスとデバイスの電源管理について、他のカメラ コンポーネント ドライバーに依存することをお勧めします。 つまり、カメラ コントローラー ドライバーは、on-SoC 画像処理ハードウェアを制御するドライバーと、off- SoC センサーとフラッシュ ユニットを制御するドライバーと通信する必要があります。

このセクションの内容

トピック 説明

カメラのハードウェア

カメラ ハードウェア トポロジの概要を示します。 Windows は、モダン スタンバイ プラットフォームのカメラ デバイス用の単一のハードウェア電源管理構成をサポートします。 つまり、各カメラ センサーは MIPI-CSI リンクを介して SoC に接続する必要があります。また、必要に応じて I2C バスと 1 つ以上の GPIO ピンに接続できます。 カメラ センサー デバイス、オプションのフラッシュ、その他の SoC 以外のカメラ コンポーネントは、ACPI ファームウェアでオンとオフを切り替え可能な電源レールに配置する必要があります。

カメラの電源管理

カメラ サブシステムの off-System on a Chip (SoC) コンポーネントおよび on-SoC コンポーネントでサポートされている必要がある電源管理モードについて説明します。 システムがコネクトスタンバイ状態でディスプレイがオフになっているとき、SoC 画像処理ユニットと off-SoC カメラ コンポーネントの両方で電力が消費されていない (ゼロワット) 必要があります。 電源管理の主要なソフトウェア メカニズムは、カメラ キャプチャピンの参照カウントです。 システム電源管理設計が Windows 10 と互換性を持つようにするためにシステム インテグレーター、カメラ センサー ベンダー、SoC ベンダーが使用する必要があるチェックリストが含まれています。