Bagikan melalui


Mengambil Informasi COPP-Compatible tentang Output yang Dilindungi

Driver miniport tampilan dapat menerima permintaan untuk mengambil informasi yang kompatibel dengan COPP tentang output yang dilindungi yang terkait dengan konektor output fisik adaptor grafis. Fungsi DxgkDdiOPMGetCOPPCompatibleInformation driver miniport tampilan diteruskan penunjuk ke struktur DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS dalam parameter Parameter yang berisi permintaan informasi. DxgkDdiOPMGetCOPPCompatibleInformation menulis informasi yang diperlukan ke struktur DXGKMDT_OPM_REQUESTED_INFORMATION yang ditunjuk parameter RequestedInformation . Anggota guidInformation dan abParameters dari DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS menentukan permintaan informasi. Bergantung pada permintaan informasi, driver miniport tampilan harus mengisi anggota struktur DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION dengan informasi yang diperlukan dan mengarahkan anggota abRequestedInformation dari DXGKMDT_OPM_REQUESTED_INFORMATION ke struktur tersebut. Setelah driver menentukan anggota cbRequestedInformationSize (misalnya, sizeof (DXGKMDT_OPM_STANDARD_INFORMATION)) dan anggota DXGKMDT_OPM_REQUESTED_INFORMATION abRequestedInformation , driver harus menghitung kode autentikasi pesan mode One-key Cipher Block Chaining (CBC) (OMAC) untuk data di DXGKMDT_OPM_REQUESTED_INFORMATION dan harus mengatur OMAC ini di anggota omac DXGKMDT_OPM_REQUESTED_INFORMATION. Untuk informasi selengkapnya tentang menghitung OMAC, lihat algoritma OMAC-1.

Catatan Sebelum DxgkDdiOPMGetCOPPCompatibleInformation kembali, driver miniport tampilan harus memverifikasi bahwa nomor urutan yang ditentukan dalam anggota ulSequenceNumber dari DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS cocok dengan nomor urut yang saat ini telah disimpan driver. Driver kemudian harus menaikkan nomor urutan yang disimpan.

Catatan Driver harus mengembalikan angka acak 128-bit yang aman secara kriptografis di anggota rnRandomNumber dari DXGKMDT_OPM_STANDARD_INFORMATION, DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT, DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING, atau DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION. Angka acak dihasilkan oleh aplikasi pengirim dan disediakan dalam anggota rnRandomNumber dari DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS.

Driver mengembalikan informasi berikut untuk permintaan yang ditunjukkan:

  • Untuk DXGKMDT_OPM_GET_SUPPORTED_PROTECTION_TYPES diatur dalam anggota guidInformation dan tidak terdefinisi di anggota abParameters DXGKMDT_OPM_COPP_COMPATIBLE_GET_INFO_PARAMETERS, driver menunjukkan jenis mekanisme perlindungan yang tersedia. Untuk menunjukkan jenis perlindungan yang tersedia, driver mengembalikan kombinasi nilai OR bitwise yang valid dari enumerasi DXGKMDT_OPM_PROTECTION_TYPE di anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION. Nilai DXGKMDT_OPM_PROTECTION_TYPE_ACP, DXGKMDT_OPM_PROTECTION_TYPE_CGMSA, dan DXGKMDT_OPM_PROTECTION_TYPE_COPP_COMPATIBLE_HDCP valid.

  • Untuk DXGKMDT_OPM_GET_CONNECTOR_TYPE diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver menunjukkan jenis konektor. Untuk menunjukkan jenis konektor, driver mengembalikan kombinasi nilai OR bitwise yang valid dari enumerasi D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY di anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION.

  • Untuk DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL atau DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL yang diatur dalam guidInformation dan jenis perlindungan yang diatur dalam abParameters, driver mengembalikan nilai tingkat perlindungan di anggota ulInformationDXGKMDT_OPM_STANDARD_INFORMATION. Jika jenis perlindungan DXGKMDT_OPM_PROTECTION_TYPE_ACP, nilai tingkat perlindungan berasal dari enumerasi DXGKMDT_OPM_ACP_PROTECTION_LEVEL . Jika jenis perlindungan DXGKMDT_OPM_PROTECTION_TYPE_CGMSA, nilai tingkat perlindungan berasal dari enumerasi DXGKMDT_OPM_CGMSA . Jika jenis perlindungan DXGKMDT_OPM_PROTECTION_TYPE_COPP_COMPATIBLE_HDCP, nilai tingkat perlindungan berasal dari enumerasi DXGKMDT_OPM_HDCP_PROTECTION_LEVEL .

    Permintaan DXGKMDT_OPM_GET_VIRTUAL_PROTECTION_LEVEL mengembalikan tingkat perlindungan yang saat ini ditetapkan untuk output yang dilindungi. Permintaan DXGKMDT_OPM_GET_ACTUAL_PROTECTION_LEVEL mengembalikan tingkat perlindungan yang saat ini ditetapkan untuk konektor fisik yang terkait dengan output yang dilindungi.

  • Untuk DXGKMDT_OPM_GET_ADAPTER_BUS_TYPE diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengidentifikasi jenis bus yang menghubungkan adaptor grafis ke jembatan utara chipset papan induk. Untuk mengidentifikasi jenis bus, driver mengembalikan kombinasi nilai OR bitwise yang valid dari enumerasi DXGKMDT_OPM_BUS_TYPE_AND_IMPLEMENTATION di anggota ulInformation DXGKMDT_OPM_STANDARD_INFORMATION.

    Driver hanya dapat menggabungkan nilai DXGKMDT_OPM_COPP_COMPATIBLE_BUS_TYPE_INTEGRATED (0x80000000) dengan salah satu nilai jenis bus ketika tidak ada sinyal antarmuka antara adaptor grafis dan subsistem lainnya yang tersedia pada bus ekspansi yang menggunakan spesifikasi yang tersedia untuk umum dan jenis konektor standar. Bus memori dikecualikan dari definisi ini.

  • Untuk DXGKMDT_OPM_GET_ACTUAL_OUTPUT_FORMAT diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan informasi dalam anggota DXGKMDT_OPM_ACTUAL_OUTPUT_FORMAT yang menjelaskan bagaimana sinyal yang melewati konektor fisik yang terkait dengan output yang dilindungi diformat.

  • Untuk DXGKMDT_OPM_GET_ACP_AND_CGMSA_SIGNALING diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan informasi dalam anggota DXGKMDT_OPM_ACP_AND_CGMSA_SIGNALING yang menjelaskan bagaimana sinyal yang melewati konektor fisik yang terkait dengan output yang dilindungi dilindungi.

  • Untuk DXGKMDT_OPM_GET_CONNECTED_HDCP_DEVICE_INFORMATION yang diatur dalam guidInformation dan tidak terdefinisi di abParameters, driver mengembalikan informasi dalam anggota DXGKMDT_OPM_CONNECTED_HDCP_DEVICE_INFORMATION yang berisi informasi Perlindungan Konten Digital (HDCP) bandwidth tinggi.